File: /home/dronicaehy/www/HTML_Refugio_23_02_22/lib/tdvplayer.js
(function() {
var requirejs,require,define;
(function(){function J(d){return ia.call(d)==="[object Function]"}function X(d){return ia.call(d)==="[object Array]"}function Y(d,f,l){for(var j in f)if(!(j in F)&&(!(j in d)||l))d[j]=f[j];return h}function K(d,f,l){d=new Error(f+"\nhttp://requirejs.org/docs/errors.html#"+d);if(l)d.originalError=l;return d}function ja(d,f,l){var j,q,o;for(j=0;o=f[j];j++){o=typeof o==="string"?{name:o}:o;q=o.location;if(l&&(!q||q.indexOf("/")!==0&&q.indexOf(":")===-1))q=l+"/"+(q||o.name);d[o.name]={name:o.name,location:q||
o.name,main:(o.main||"main").replace(ua,"").replace(ka,"")}}}function Z(d,f){if(d.holdReady)d.holdReady(f);else if(f)d.readyWait+=1;else d.ready(true)}function va(d){function f(a){var b,c;for(b=0;c=a[b];b++)if(c==="."){a.splice(b,1);b-=1}else if(c==="..")if(b===1&&(a[2]===".."||a[0]===".."))break;else if(b>0){a.splice(b-1,2);b-=2}}function l(a,b){var c;if(a.charAt(0)===".")if(b){if(r.pkgs[b])b=[b];else{b=b.split("/");b=b.slice(0,b.length-1)}a=b.concat(a.split("/"));f(a);c=r.pkgs[b=a[0]];a=a.join("/");
if(c&&a===b+"/"+c.main)a=b}return a}function j(a,b){var c=a?a.indexOf("!"):-1,e=null,g=b?b.name:null,k=a,n,m;if(c!==-1){e=a.substring(0,c);a=a.substring(c+1,a.length)}if(e)e=l(e,g);if(a){if(e)n=(c=p[e])?c.normalize?c.normalize(a,function(u){return l(u,g)}):l(a,g):"__$p"+g+"@"+a;else n=l(a,g);m=$[n];if(!m){m=h.toModuleUrl?h.toModuleUrl(i,n,b):i.nameToUrl(n,null,b);$[n]=m}}return{prefix:e,name:n,parentMap:b,url:m,originalName:k,fullName:e?e+"!"+n:n}}function q(){var a=true,b=r.priorityWait,c,e;if(b){for(e=
0;c=b[e];e++)if(!v[c]){a=false;break}a&&delete r.priorityWait}return a}function o(a){return function(b){a.exports=b}}function L(a,b,c){return function(){var e=[].concat(wa.call(arguments,0)),g;if(c&&J(g=e[e.length-1]))g.__requireJsBuild=true;e.push(b);return a.apply(null,e)}}function la(a,b){b=L(i.require,a,b);Y(b,{nameToUrl:L(i.nameToUrl,a),toUrl:L(i.toUrl,a),defined:L(i.requireDefined,a),specified:L(i.requireSpecified,a),ready:h.ready,isBrowser:h.isBrowser});if(h.paths)b.paths=h.paths;return b}
function xa(a){var b,c,e,g,k,n,m,u=T[a];if(u)for(g=0;c=u[g];g++){b=c.fullName;c=j(c.originalName,c.parentMap);c=c.fullName;e=w[b]||[];k=w[c];if(c!==b){if(b in y){delete y[b];y[c]=true}w[c]=k?k.concat(e):e;delete w[b];for(k=0;k<e.length;k++){m=e[k].depArray;for(n=0;n<m.length;n++)if(m[n]===b)m[n]=c}}}delete T[a]}function ma(a){var b=a.prefix,c=a.fullName;if(!(y[c]||c in p)){if(b&&!G[b]){G[b]=undefined;(T[b]||(T[b]=[])).push(a);(w[b]||(w[b]=[])).push({onDep:function(e){e===b&&xa(b)}});ma(j(b))}i.paused.push(a)}}
function aa(a){var b,c,e;b=a.callback;var g=a.fullName,k=[],n=a.depArray;if(b&&J(b)){if(n)for(b=0;b<n.length;b++)k.push(a.deps[n[b]]);try{c=h.execCb(g,a.callback,k,p[g])}catch(m){e=m}if(g)if(a.cjsModule&&a.cjsModule.exports!==undefined)c=p[g]=a.cjsModule.exports;else if(c===undefined&&a.usingExports)c=p[g];else p[g]=c}else if(g)c=p[g]=b;if(B[a.waitId]){delete B[a.waitId];a.isDone=true;i.waitCount-=1;if(i.waitCount===0)ba=[]}if(e){e=K("defineerror",'Error evaluating module "'+g+'" at location "'+(g?
j(g).url:"")+'":\n'+e+"\nfileName:"+(e.fileName||e.sourceURL)+"\nlineNumber: "+(e.lineNumber||e.line),e);e.moduleName=g;return h.onError(e)}if(g)if(a=w[g]){for(b=0;b<a.length;b++)a[b].onDep(g,c);delete w[g]}}function na(a,b,c,e){a=j(a,e);var g=a.name,k=a.fullName,n={},m={waitId:g||ya+za++,depCount:0,depMax:0,prefix:a.prefix,name:g,fullName:k,deps:{},depArray:b,callback:c,onDep:function(oa,Aa){if(!(oa in m.deps)){m.deps[oa]=Aa;m.depCount+=1;m.depCount===m.depMax&&aa(m)}}},u,t;if(k){if(k in p||v[k]===
true||k==="jquery"&&r.jQuery&&r.jQuery!==c().fn.jquery)return;y[k]=true;v[k]=true;k==="jquery"&&c&&U(c())}for(c=0;c<b.length;c++)if(u=b[c]){u=j(u,g?a:e);t=u.fullName;b[c]=t;if(t==="require")m.deps[t]=la(a);else if(t==="exports"){m.deps[t]=p[k]={};m.usingExports=true}else if(t==="module"){m.cjsModule=u=m.deps[t]={id:g,uri:g?i.nameToUrl(g,null,e):undefined,exports:p[k]};u.setExports=o(u)}else if(t in p&&!(t in B))m.deps[t]=p[t];else if(!n[t]){m.depMax+=1;ma(u);(w[t]||(w[t]=[])).push(m);n[t]=true}}if(m.depCount===
m.depMax)aa(m);else{B[m.waitId]=m;ba.push(m);i.waitCount+=1}}function M(a){na.apply(null,a);v[a[0]]=true}function pa(a,b){if(!a.isDone){var c=a.fullName,e=a.depArray,g,k;if(c){if(b[c])return p[c];b[c]=true}for(k=0;k<e.length;k++)(g=e[k])&&!a.deps[g]&&B[g]&&a.onDep(g,pa(B[g],b));return c?p[c]:undefined}}function ca(){var a=r.waitSeconds*1E3,b=a&&i.startTime+a<(new Date).getTime();a="";var c=false,e=false,g;if(!(i.pausedCount>0)){if(r.priorityWait)if(q())C();else return;for(g in v)if(!(g in F)){c=true;
if(!v[g])if(b)a+=g+" ";else{e=true;break}}if(c||i.waitCount){if(b&&a){g=K("timeout","Load timeout for modules: "+a);g.requireType="timeout";g.requireModules=a;return h.onError(g)}if(e||i.scriptCount){if((A||qa)&&!da)da=setTimeout(function(){da=0;ca()},50)}else{if(i.waitCount){for(D=0;a=ba[D];D++)pa(a,{});if(ea<5){ea+=1;ca()}}ea=0;h.checkReadyState()}}}}function ra(a,b){var c=b.name,e=b.fullName,g;if(!(e in p||e in v)){G[a]||(G[a]=p[a]);v[e]||(v[e]=false);g=function(k){h.onPluginLoad&&h.onPluginLoad(i,
a,c,k);aa({prefix:b.prefix,name:b.name,fullName:b.fullName,callback:function(){return k}});v[e]=true};g.fromText=function(k,n){var m=N;i.loaded[k]=false;i.scriptCount+=1;if(m)N=false;h.exec(n);if(m)N=true;i.completeLoad(k)};G[a].load(c,la(b.parentMap,true),g,r)}}function Ba(a){if(a.prefix&&a.name.indexOf("__$p")===0&&p[a.prefix])a=j(a.originalName,a.parentMap);var b=a.prefix,c=a.fullName,e=i.urlFetched;if(!(y[c]||v[c])){y[c]=true;if(b)if(p[b])ra(b,a);else{if(!O[b]){O[b]=[];(w[b]||(w[b]=[])).push({onDep:function(g){if(g===
b){var k,n=O[b];for(g=0;g<n.length;g++){k=n[g];ra(b,j(k.originalName,k.parentMap))}delete O[b]}}})}O[b].push(a)}else if(!e[a.url]){h.load(i,c,a.url);e[a.url]=true}}}var i,C,r={waitSeconds:7,baseUrl:s.baseUrl||"./",paths:{},pkgs:{}},P=[],y={require:true,exports:true,module:true},$={},p={},v={},B={},ba=[],za=0,w={},G={},O={},fa=0,T={};U=function(a){if(!i.jQuery)if(a=a||(typeof jQuery!=="undefined"?jQuery:null))if(!(r.jQuery&&a.fn.jquery!==r.jQuery))if("holdReady"in a||"readyWait"in a){i.jQuery=a;M(["jquery",
[],function(){return jQuery}]);if(i.scriptCount){Z(a,true);i.jQueryIncremented=true}}};C=function(){var a,b,c;fa+=1;if(i.scriptCount<=0)i.scriptCount=0;for(;P.length;){a=P.shift();if(a[0]===null)return h.onError(K("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));else M(a)}if(!r.priorityWait||q())for(;i.paused.length;){c=i.paused;i.pausedCount+=c.length;i.paused=[];for(b=0;a=c[b];b++)Ba(a);i.startTime=(new Date).getTime();i.pausedCount-=c.length}fa===1&&ca();fa-=1};i={contextName:d,
config:r,defQueue:P,waiting:B,waitCount:0,specified:y,loaded:v,urlMap:$,scriptCount:0,urlFetched:{},defined:p,paused:[],pausedCount:0,plugins:G,managerCallbacks:w,makeModuleMap:j,normalize:l,configure:function(a){var b,c,e;if(a.baseUrl)if(a.baseUrl.charAt(a.baseUrl.length-1)!=="/")a.baseUrl+="/";b=r.paths;e=r.pkgs;Y(r,a,true);if(a.paths){for(c in a.paths)c in F||(b[c]=a.paths[c]);r.paths=b}if((b=a.packagePaths)||a.packages){if(b)for(c in b)c in F||ja(e,b[c],c);a.packages&&ja(e,a.packages);r.pkgs=
e}if(a.priority){c=i.requireWait;i.requireWait=false;i.takeGlobalQueue();C();i.require(a.priority);C();i.requireWait=c;r.priorityWait=a.priority}if(a.deps||a.callback)i.require(a.deps||[],a.callback);a.ready&&h.ready(a.ready)},requireDefined:function(a,b){return j(a,b).fullName in p},requireSpecified:function(a,b){return j(a,b).fullName in y},require:function(a,b,c){if(typeof a==="string"){if(h.get)return h.get(i,a,b);c=b;b=j(a,c);a=b.fullName;if(!(a in p))return h.onError(K("notloaded","Module name '"+
b.fullName+"' has not been loaded yet for context: "+d));return p[a]}na(null,a,b,c);if(!i.requireWait)for(;!i.scriptCount&&i.paused.length;){i.takeGlobalQueue();C()}},takeGlobalQueue:function(){if(V.length){Ca.apply(i.defQueue,[i.defQueue.length-1,0].concat(V));V=[]}},completeLoad:function(a){var b;for(i.takeGlobalQueue();P.length;){b=P.shift();if(b[0]===null){b[0]=a;break}else if(b[0]===a)break;else{M(b);b=null}}b?M(b):M([a,[],a==="jquery"&&typeof jQuery!=="undefined"?function(){return jQuery}:null]);
v[a]=true;U();if(h.isAsync)i.scriptCount-=1;C();h.isAsync||(i.scriptCount-=1)},toUrl:function(a,b){var c=a.lastIndexOf("."),e=null;if(c!==-1){e=a.substring(c,a.length);a=a.substring(0,c)}return i.nameToUrl(a,e,b)},nameToUrl:function(a,b,c){var e,g,k,n,m=i.config;a=l(a,c&&c.fullName);if(h.jsExtRegExp.test(a))b=a+(b?b:"");else{e=m.paths;g=m.pkgs;c=a.split("/");for(n=c.length;n>0;n--){k=c.slice(0,n).join("/");if(e[k]){c.splice(0,n,e[k]);break}else if(k=g[k]){a=a===k.name?k.location+"/"+k.main:k.location;
c.splice(0,n,a);break}}b=c.join("/")+(b||".js");b=(b.charAt(0)==="/"||b.match(/^\w+:/)?"":m.baseUrl)+b}return m.urlArgs?b+((b.indexOf("?")===-1?"?":"&")+m.urlArgs):b}};i.jQueryCheck=U;i.resume=C;return i}function Da(){var d,f,l;if(Q&&Q.readyState==="interactive")return Q;d=document.getElementsByTagName("script");for(f=d.length-1;f>-1&&(l=d[f]);f--)if(l.readyState==="interactive")return Q=l;return null}var Ea=/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg,Fa=/require\(["']([^'"\s]+)["']\)/g,ua=/^\.\//,ka=/\.js$/,
ia=Object.prototype.toString,x=Array.prototype,wa=x.slice,Ca=x.splice,A=!!(typeof window!=="undefined"&&navigator&&document),qa=!A&&typeof importScripts!=="undefined",Ga=A&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,sa=typeof opera!=="undefined"&&opera.toString()==="[object Opera]",ya="_r@@",F={},H={},V=[],Q=null,Ha=false,ea=0,N=false,h;x={};var ga,s,I,W,z,R,S,D,ha,ta,E,U,da;if(typeof define==="undefined"){if(typeof requirejs!=="undefined")if(J(requirejs))return;else{x=
requirejs;requirejs=undefined}if(typeof require!=="undefined"&&!J(require)){x=require;require=undefined}h=requirejs=function(d,f,l){var j="_",q;if(!X(d)&&typeof d!=="string"){q=d;if(X(f)){d=f;f=l}else d=[]}if(q&&q.context)j=q.context;l=H[j]||(H[j]=va(j));q&&l.configure(q);return l.require(d,f)};if(typeof require==="undefined")require=h;h.toUrl=function(d){return H._.toUrl(d)};h.version="0.25.0";h.isArray=X;h.isFunction=J;h.mixin=Y;h.jsExtRegExp=/^\/|:|\?|\.js$/;s=h.s={contexts:H,skipAsync:{},isPageLoaded:!A,
readyCalls:[]};if(h.isAsync=h.isBrowser=A){I=s.head=document.getElementsByTagName("head")[0];if(W=document.getElementsByTagName("base")[0])I=s.head=W.parentNode}h.onError=function(d){throw d;};h.load=function(d,f,l){var j=d.loaded;Ha=false;j[f]||(j[f]=false);d.scriptCount+=1;h.attach(l,d,f);if(d.jQuery&&!d.jQueryIncremented){Z(d.jQuery,true);d.jQueryIncremented=true}};define=h.def=function(d,f,l){var j;if(typeof d!=="string"){l=f;f=d;d=null}if(!h.isArray(f)){l=f;f=[]}if(!d&&!f.length&&h.isFunction(l))if(l.length){l.toString().replace(Ea,
"").replace(Fa,function(q,o){f.push(o)});f=(l.length===1?["require"]:["require","exports","module"]).concat(f)}if(N){j=ga||Da();if(!j)return h.onError(K("interactive","No matching script interactive for "+l));d||(d=j.getAttribute("data-requiremodule"));j=H[j.getAttribute("data-requirecontext")]}(j?j.defQueue:V).push([d,f,l])};define.amd={multiversion:true,plugins:true,jQuery:true};h.exec=function(d){return eval(d)};h.execCb=function(d,f,l,j){return f.apply(j,l)};h.onScriptLoad=function(d){var f=d.currentTarget||
d.srcElement,l;if(d.type==="load"||Ga.test(f.readyState)){Q=null;d=f.getAttribute("data-requirecontext");l=f.getAttribute("data-requiremodule");H[d].completeLoad(l);f.detachEvent&&!sa?f.detachEvent("onreadystatechange",h.onScriptLoad):f.removeEventListener("load",h.onScriptLoad,false)}};h.attach=function(d,f,l,j,q){var o;if(A){j=j||h.onScriptLoad;o=f&&f.config&&f.config.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");o.type=q||"text/javascript";
o.charset="utf-8";o.async=!s.skipAsync[d];f&&o.setAttribute("data-requirecontext",f.contextName);o.setAttribute("data-requiremodule",l);if(o.attachEvent&&!sa){N=true;o.attachEvent("onreadystatechange",j)}else o.addEventListener("load",j,false);o.src=d;ga=o;W?I.insertBefore(o,W):I.appendChild(o);ga=null;return o}else if(qa){j=f.loaded;j[l]=false;importScripts(d);f.completeLoad(l)}return null};if(A){z=document.getElementsByTagName("script");for(D=z.length-1;D>-1&&(R=z[D]);D--){if(!I)I=R.parentNode;
if(S=R.getAttribute("data-main")){if(!x.baseUrl){z=S.split("/");R=z.pop();z=z.length?z.join("/")+"/":"./";x.baseUrl=z;S=R.replace(ka,"")}x.deps=x.deps?x.deps.concat(S):[S];break}}}s.baseUrl=x.baseUrl;h.pageLoaded=function(){if(!s.isPageLoaded){s.isPageLoaded=true;ha&&clearInterval(ha);if(ta)document.readyState="complete";h.callReady()}};h.checkReadyState=function(){var d=s.contexts,f;for(f in d)if(!(f in F))if(d[f].waitCount)return;s.isDone=true;h.callReady()};h.callReady=function(){var d=s.readyCalls,
f,l,j;if(s.isPageLoaded&&s.isDone){if(d.length){s.readyCalls=[];for(f=0;l=d[f];f++)l()}d=s.contexts;for(j in d)if(!(j in F)){f=d[j];if(f.jQueryIncremented){Z(f.jQuery,false);f.jQueryIncremented=false}}}};h.ready=function(d){s.isPageLoaded&&s.isDone?d():s.readyCalls.push(d);return h};if(A){if(document.addEventListener){document.addEventListener("DOMContentLoaded",h.pageLoaded,false);window.addEventListener("load",h.pageLoaded,false);if(!document.readyState){ta=true;document.readyState="loading"}}else if(window.attachEvent){window.attachEvent("onload",
h.pageLoaded);if(self===self.top)ha=setInterval(function(){try{if(document.body){document.documentElement.doScroll("left");h.pageLoaded()}}catch(d){}},30)}document.readyState==="complete"&&h.pageLoaded()}h(x);if(h.isAsync&&typeof setTimeout!=="undefined"){E=s.contexts[x.context||"_"];E.requireWait=true;setTimeout(function(){E.requireWait=false;E.takeGlobalQueue();E.jQueryCheck();E.scriptCount||E.resume();h.checkReadyState()},0)}}})();!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==
typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,
t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,
t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=
S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),
isReady:!0,error:function(e){throw new Error(e);},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e))for(n=e.length;r<n;r++){if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},
makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],
o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,
t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\x00-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+
W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+
M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>
10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\x00"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,
r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1])if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else{if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,
e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=
[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?
1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,
le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&
(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),
d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=
function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===
n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||
v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\u000c"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||
a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},
j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,
t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||
e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e);},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),
e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i)if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else{if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",
first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&
(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,
r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":
"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]=
{}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,
r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),
lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-");while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||
~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();
return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),
gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,
p];if(n)while(e=e[u]){if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,
r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],
i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,
e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),
n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=
e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||0.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=
se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||
t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?
1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=
d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=
0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&
3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,
D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,
e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,
"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=
e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e;}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,
t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?
r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||
(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),
this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");
t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,
m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,
r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+
e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e;})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&
!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}
function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):
e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};
var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,
t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==
(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,
i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,
e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,
e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,
t,c+l),(1-o)*(1-(o=s()/u||0.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),
o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;
ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],
tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||
(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=
""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,
s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i])if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();
else{if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,
i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),
namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||
{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,
"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&
!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=
[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,
t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==
e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=
e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=
this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),
S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,
arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});
var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,
"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=
e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&
(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<
i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?
S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,
function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===
e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",
insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},
Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",
l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip=
"content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",
t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;
while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,
"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-0.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&
A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,
gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==
o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,
t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-0.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),
S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,
function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},
run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:
(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return 0.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,
tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,
t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,
startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=
S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,
{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||
s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||
l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),
d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),
r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,
t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,
o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},
fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=
S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,
e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=
e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;
function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==
n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),
S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},
removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):
this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;
return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==
(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,
t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};
S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=
void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&
(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,
t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,
r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;
function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],
t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):
{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,
S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,
processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,
S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=
n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,
bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),
v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid++ +o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&
T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,
t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));
if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=
t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&
(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,
t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},
dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},
wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={"0":200,1223:204},$t=S.ajaxSettings.xhr();
y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=
r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&
i.data||null)}catch(e){if(o)throw e;}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,
i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&
(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===
i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=
N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,
e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&
(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();
else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;
return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},
function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),
S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),
function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=
X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});(function(){var TDV=window["TDV"]||(window["TDV"]={});(function(){(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=
O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,
c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,
e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=
o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=
function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,
t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];
return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?
n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,
index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):
k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-
t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||
(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,
function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])<u?i=a+1:o=a}return i},m.indexOf=r(1,m.findIndex,m.sortedIndex),m.lastIndexOf=
r(-1,m.findLastIndex),m.range=function(n,t,r){null==t&&(t=n||0,n=0),r=r||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=Array(e),i=0;e>i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,
r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e<arguments.length;)i.push(arguments[e++]);return E(n,r,this,this,i)};return r},m.bindAll=function(n){var t,r,e=arguments.length;if(1>=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+
(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),
o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,
t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];
if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},
m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,
t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,
t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case "[object RegExp]":case "[object String]":return""+n==""+t;case "[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case "[object Date]":case "[object Boolean]":return+n===
+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=
l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],
function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=
function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=
t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:
n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||
K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=
i,a;}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=
function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this)}).call(TDV)})();function h(a){throw a;}var m=void 0,n=!0,r=null,y=!1;function C(){return function(){}}function P(a){return function(b){this[a]=b}}function Q(a){return function(){return this[a]}}function R(a){return function(){return a}}
(function(){function a(a){this.Nk=a;this.dp=r;this.Xc={}}function b(){this.Zj={};this.Zj[b.SCRIPT_URL]=[];this.Zj[b.THREE_JS_WEBGL_URL]="lib/ThreeWebGL.js";this.Zj[b.WEBVR_POLYFILL_URL]="lib/WebVRPolyfill.js";this.Zj[b.HLS_URL]="lib/Hls.js";this.Zj[b.CURSORS_DIR_URL]="lib/cursors";this.Zj[b.SERVICE_WORKER_URL]="tdvplayersw.js";this.Zj[b.BACKGROUND_PRELOAD_ENABLED]=m}function c(){this.WC=[];this.NK=[];this.apa=[];this.MG=r}function d(a){return"[object Array]"==Object.prototype.toString.call(a)}function f(a){return 0<=
g.search(a.toLowerCase())}var e=window.TDV=window.TDV||{},g=navigator.userAgent.toLowerCase();c.prototype.getVersion=c.prototype.DM=function(){return{MAJOR:"0",MINOR:"1475"}};c.prototype.F8=function(){if(this.MG)for(;0<this.WC.length;){var a=this.WC[0];this.WC=this.WC.slice(1);this.NK.push(a);this.Uja(a)}};c.prototype.u6=function(a){var b=document.createElement("a");b.href=a;return b.href};c.prototype.Jla=function(){var a=document.currentScript;a||(a=document.getElementsByTagName("head")[0].getElementsByTagName("script"),
a=a[a.length-1]);return this.u6(a.src)};c.prototype.Uja=function(a){var e=this,j=a.Nk.get(b.SELECTED_SCRIPT_URL);setTimeout(function(){var b=document.createElement("script");b.type="text/javascript";b.src=j;document.getElementsByTagName("head")[0].appendChild(b);e.MG.yza(a)},1)};c.prototype.defineScript=c.prototype.PAa=function(a){for(var e=[],j=this.Jla(),g=0;g<this.NK.length;g++){var c=this.NK[g],k=this.u6(c.Nk.get(b.SELECTED_SCRIPT_URL));k==j?(c.Nk.set(b.SCRIPT_DATA,a),c.Kya(new this.MG(c,c.Nk)),
this.apa.push(c)):e.push(k)}this.NK=e};c.prototype.create=c.prototype.create=function(a){var g=a.get(b.SCRIPT_URL),g=d(g)?this.Qpa(g):"string"===typeof g?g:"script.js";a.set(b.SELECTED_SCRIPT_URL,g);a=new e.J0(a);this.WC.push(a);this.F8();return a};c.prototype.setPlayerClass=c.prototype.Jya=function(a){this.MG=a;this.F8()};c.prototype.getOrientation=c.prototype.Bn=function(){var a=screen.orientation&&screen.orientation.type||window.orientation;return"portrait-primary"==a||"portrait-secondary"==a||
0===a||180==a?e.Da.PO:"landscape-primary"==a||"landscape-secondary"==a||90==a||-90==a?e.Da.OO:window.innerWidth<window.innerHeight?e.Da.PO:e.Da.OO};c.prototype.Qpa=function(a){if(0<a.length){for(var b=0;b<a.length;b++){var e=a[b];if(d(e)){if(this.H$(e[0]))return e[1]}else if("string"===typeof e)return e}return a[0][1]}return"script.js"};c.prototype.H$=function(a){if("string"===typeof a){var b=a.match(/^\s*default\s*$/);if(b)return n;if(b=a.match(/^\s*os\s*=\s*(\w+)\s*$/))return this.Zd==b[1].toLowerCase();
if(b=a.match(/^\s*browser\s*=\s*(\w+)\s*$/))return this.browser==b[1].toLowerCase();if(b=a.match(/^\s*device\s*=\s*(\w+)\s*$/))return this.xs==b[1].toLowerCase();if(b=a.match(/^\s*screen_size\s*(<|>|=|<=|>=)\s*(\d+)\s*x\s*(\d+)\s*$/)){var a=parseInt(b[2]),e=parseInt(b[3]),g;switch(b[1]){case "<":g=function(a,b){return a<b};break;case ">":g=function(a,b){return a>b};break;case "=":g=function(a,b){return a==b};break;case "<=":g=function(a,b){return a<=b};break;case ">=":g=function(a,b){return a>=b}}return g(screen.width,
a)&&g(screen.height,e)||this.iZ&&g(screen.width,e)&&g(screen.height,a)}return y}if(d(a)){for(b=0;b<a.length;b++)if(!this.H$(a[b]))return y;return n}return y};c.prototype.ORIENTATION_LANDSCAPE=c.prototype.OO="landscape";c.prototype.ORIENTATION_PORTRAIT=c.prototype.PO="portrait";c.prototype.OS_IOS=c.prototype.BG="ios";c.prototype.OS_ANDROID=c.prototype.QO="android";c.prototype.OS_WINDOWS=c.prototype.z0="windows";c.prototype.OS_WINDOWS_PHONE=c.prototype.UO="windows_phone";c.prototype.OS_MACOSX=c.prototype.RO=
"osx";c.prototype.OS_LINUX=c.prototype.y0="linux";c.prototype.OS_QNX=c.prototype.TO="qnx";c.prototype.OS_OTHER=c.prototype.SO="other";c.prototype.BROWSER_TYPE_WEBKIT=c.prototype.cA="webkit";c.prototype.BROWSER_TYPE_OPERA=c.prototype.PN="opera";c.prototype.BROWSER_TYPE_MSIE=c.prototype.ON="msie";c.prototype.BROWSER_TYPE_MOZILLA=c.prototype.NN="mozilla";c.prototype.BROWSER_TYPE_OTHER=c.prototype.QN="other";c.prototype.BROWSER_SAFARI_IOS=c.prototype.Df="safari_ios";c.prototype.BROWSER_OPERA=c.prototype.dG=
"opera";c.prototype.BROWSER_SAFARI=c.prototype.Ei="safari";c.prototype.BROWSER_CHROME=c.prototype.Di="chrome";c.prototype.BROWSER_EDGE=c.prototype.zw="edge";c.prototype.BROWSER_MSIE=c.prototype.iq="msie";c.prototype.BROWSER_ANDROID=c.prototype.Yz="android";c.prototype.BROWSER_MOZILLA=c.prototype.Us="mozilla";c.prototype.BROWSER_OTHER=c.prototype.MN="other";c.prototype.BROWSER_SUBTYPE_SAMSUNG_INTERNET=c.prototype.bA="samsunginternet";c.prototype.BROWSER_SUBTYPE_OCULUS_BROWSER=c.prototype.Rn="oculusbrowser";
c.prototype.BROWSER_SUBTYPE_SAMSUNG_INTERNET_FOR_GEAR_VR=c.prototype.hG="samsunginternetgearvr";c.prototype.BROWSER_SUBTYPE_CHROME_IOS=c.prototype.eG="chromeios";c.prototype.BROWSER_SUBTYPE_SAFARI_IOS=c.prototype.$z="safari_ios";c.prototype.BROWSER_SUBTYPE_CHROME_WEBVIEW=c.prototype.Aw="chrome_webview";c.prototype.BROWSER_SUBTYPE_SAFARI_WEBVIEW=c.prototype.aA="safari_webview";c.prototype.BROWSER_SUBTYPE_TOUR_LAUNCHER=c.prototype.Vs="tour_launcher";c.prototype.BROWSER_SUBTYPE_CHROMIUM_EDGE=c.prototype.Aw=
"chromium_edge";c.prototype.BROWSER_SUBTYPE_FIREFOX_REALITY=c.prototype.Zz="firefox_reality";c.prototype.BROWSER_SUBTYPE_VR_APP=c.prototype.Ws="vrapp";c.prototype.BROWSER_SUBTYPE_FACEBOOK_IOS_WEBVIEW=c.prototype.fG="facebook_ios_webview";c.prototype.BROWSER_SUBTYPE_OTHER=c.prototype.gG="other";c.prototype.BROWSER_VERSION_UNKNOWN=c.prototype.RN=-1;c.prototype.DEVICE_IPHONE=c.prototype.VN="iphone";c.prototype.DEVICE_IPAD=c.prototype.Bw="ipad";c.prototype.DEVICE_IPOD=c.prototype.WN="ipod";c.prototype.DEVICE_OTHER=
c.prototype.XN="other";c.prototype.os=c.prototype.Zd=f("iphone")||f("ipad")||f("ipod")?c.prototype.BG:f("qnx")?c.prototype.TO:f("android")||f("oculusbrowser")&&f("linux")?c.prototype.QO:f("windows phone")?c.prototype.UO:f("windows")?c.prototype.z0:f("mac_powerpc")?c.prototype.RO:f("macintosh")?1<navigator.maxTouchPoints?c.prototype.BG:c.prototype.RO:f("linux")||f("x11")?c.prototype.y0:c.prototype.SO;c.prototype.browser=c.prototype.browser=f("ipad")||f("iphone")||f("ipod")||f("macintosh")&&1<navigator.maxTouchPoints?
c.prototype.Df:f("opera")?c.prototype.dG:f("edge")?c.prototype.zw:f("chrome")||f("crmo")?c.prototype.Di:f("android")?c.prototype.Yz:f("safari")?c.prototype.Ei:f("trident")||f("msie")?c.prototype.iq:!f("compatible")&&f("mozilla")?c.prototype.Us:c.prototype.MN;c.prototype.browserType=c.prototype.bz=c.prototype.browser==c.prototype.Df||c.prototype.browser==c.prototype.Di||c.prototype.browser==c.prototype.Yz||c.prototype.browser==c.prototype.Ei||f("webkit")?c.prototype.cA:c.prototype.browser==c.prototype.dG||
f("opera")?c.prototype.PN:f("trident")||f("msie")?c.prototype.ON:!f("compatible")&&f("mozilla")?c.prototype.NN:c.prototype.QN;c.prototype.browserSubtype=c.prototype.Jc=f("oculusbrowser")?c.prototype.Rn:f("samsungbrowser")&&f("android")?f("mobile vr")?c.prototype.hG:c.prototype.bA:f("ipad")||f("iphone")||f("ipod")?f("crios")?c.prototype.eG:f("fban")||f("fbav")?c.prototype.fG:f("safari")&&f("version")&&!navigator.xBa?c.prototype.$z:c.prototype.aA:f("electron")?c.prototype.Vs:f("chrome")&&f("wv")?c.prototype.Aw:
f("edg/")?c.prototype.v_:window.location.hash&&0<=window.location.hash.indexOf("vrapp")?c.prototype.Ws:!f("compatible")&&f("mozilla")&&f("mobile vr")?c.prototype.Zz:c.prototype.gG;c.prototype.browserVersion=c.prototype.gba=function(){if(c.prototype.browser==c.prototype.iq){var a=g.match(/MSIE ([0-9]{1,}[.0-9]{0,})/);if(a!=r)return parseFloat(a[1]);a=g.match(/Trident\/.*rv:([0-9]{1,}[.0-9]{0,})/);if(a!=r)return parseFloat(a[1])}return c.prototype.RN}();c.prototype.device=c.prototype.xs=f("ipad")||
f("macintosh")&&1<navigator.maxTouchPoints?c.prototype.Bw:f("iphone")?c.prototype.VN:f("ipod")?c.prototype.WN:c.prototype.XN;var k;a:{switch(c.prototype.Zd){case c.prototype.QO:case c.prototype.BG:case c.prototype.UO:case c.prototype.TO:k=n;break a}k=y}c.prototype.mobile=c.prototype.iZ=k;e.PlayerAPI=e.Da=new c;b.prototype.append=b.prototype.append=function(a,e,g){a==b.SCRIPT_URL&&("undefined"==typeof g&&(g=e,e="default"),e=[e,g]);d(this.Zj[a])||(this.Zj[a]=[]);this.Zj[a].push(e)};b.prototype.set=
b.prototype.set=function(a,b){this.Zj[a]=b};b.prototype.get=b.prototype.get=function(a){return this.Zj[a]};b.SCRIPT_URL=b.SCRIPT_URL="ScriptURL";b.SCRIPT_DATA=b.SCRIPT_DATA="ScriptData";b.FLASH_EXPRESS_INSTALLER_URL=b.FLASH_EXPRESS_INSTALLER_URL="FlashExpressInstallerURL";b.FLASH_AUDIO_PLAYER_URL=b.FLASH_AUDIO_PLAYER_URL="FlashAudioPlayerURL";b.FLASH_VIDEO_PLAYER_URL=b.FLASH_VIDEO_PLAYER_URL="FlashVideoPlayerURL";b.FLASH_PANORAMA_PLAYER_URL=b.FLASH_PANORAMA_PLAYER_URL="FlashPanoramaPlayerURL";b.THREE_JS_WEBGL_URL=
b.THREE_JS_WEBGL_URL="ThreeJSWebGLURL";b.WEBVR_POLYFILL_URL=b.WEBVR_POLYFILL_URL="WebVRPolyfillURL";b.CAPTURA_VIEWER_URL=b.CAPTURA_VIEWER_URL="CapturaViewerURL";b.DASH_URL=b.DASH_URL="DashURL";b.HLS_URL=b.HLS_URL="HlsURL";b.CONTAINER=b.CONTAINER="Container";b.SELECTED_SCRIPT_URL=b.SELECTED_SCRIPT_URL="SelectedScriptURL";b.BASE_DIR_URL=b.BASE_DIR_URL="BaseDirURL";b.QUERY_STRING_PARAMETERS=b.QUERY_STRING_PARAMETERS="QueryStringParameters";b.CURSORS_DIR_URL=b.CURSORS_DIR_URL="CursorsDirURL";b.BACKGROUND_PRELOAD_ENABLED=
b.BACKGROUND_PRELOAD_ENABLED="BackgroundPreloadEnabled";b.ACTIVE_VIDEO_ELEMENT=b.ACTIVE_VIDEO_ELEMENT="ActiveVideoElement";b.SERVICE_WORKER_URL=b.SERVICE_WORKER_URL="ServiceWorkerURL";b.PINCH_TO_ZOOM_ENABLED=b.Vfa="PinchToZoomEnabled";e.PlayerSettings=e.PlayerSettings=b;e.PlayerEvent=e.FG=function(a,b,e,g){this.name=a;this.data=this.originalEvent=b;this.sourceClassName=e[e.length-1];this.sourceClassPath=e;this.sourceId=g};a.prototype.Kya=P("dp");a.prototype["delete"]=function(){this.dp&&(this.dp.clear(),
this.dp=r)};a.prototype.getById=a.prototype.VAa=function(a){return this.dp?this.dp.Cva(a):r};a.prototype.getByClassName=a.prototype.wn=function(a){return this.dp?this.dp.eca(a):[]};a.prototype.createInstance=a.prototype.vs=function(a){return this.dp.vs(a)};a.prototype.bind=a.prototype.bind=function(a,b,e,g){var c=a.split(":"),a=c[0],c=1<c.length?c[1]:"*";this.Xc[a]=this.Xc[a]||{};this.Xc[a][c]=this.Xc[a][c]||[];this.Xc[a][c].push({handler:b,context:e,immediate:g});return this};a.prototype.unbind=
a.prototype.unbind=function(a,b,e,g){var c=a.split(":"),a=c[0],c=1<c.length?c[1]:"*";if(a in this.Xc&&c in this.Xc[a]){for(var k=[],f=this.Xc[a][c],d=0;d<f.length;d++){var u=f[d];(u.handler!=b||u.context!=e||u.immediate!=g)&&k.push(u)}this.Xc[a][c]=k}};a.prototype.bindOnObject=a.prototype.GAa=function(a,b,e,g,c){return this.bind(b+":"+this.kS(a),e,g,c)};a.prototype.unbindOnObject=a.prototype.EBa=function(a,b,e,g,c){return this.unbind(b+":"+this.kS(a),e,g,c)};a.prototype.bindOnObjectsOf=a.prototype.HAa=
function(a,b,e,g,c){return this.bind(b+":"+this.$R(a),e,g,c)};a.prototype.unbindOnObjectsOf=a.prototype.FBa=function(a,b,e,g,c){return this.unbind(b+":"+this.$R(a),e,g,c)};a.prototype.cookiesEnabled=a.prototype.mua=y;a.DEFAULT_PANORAMA_HFOV=a.jfa=c.prototype.iZ?90:110;a.prototype.trigger=function(a){if(a.name in this.Xc){this.OA(a,n);var b=this;setTimeout(function(){b.OA(a,y)},0)}};a.prototype.OA=function(a,b){for(var e=this.dla(a,b),g=0;g<e.length;g++)try{e[g].handler.call(e[g].context||window,a)}catch(c){setTimeout(function(){h(c)},
0)}};a.prototype.dla=function(a,b){var e=[];if(a.name in this.Xc){for(var g=[],c=0;c<a.sourceClassPath.length;c++)g.push(this.$R(a.sourceClassPath[c]));a.sourceId&&g.push(this.kS(a.sourceId));g.push("*");for(var k=this.Xc[a.name],c=0;c<g.length;c++)for(var f=k[g[c]]||[],d=0;d<f.length;d++)!!f[d].immediate==!!b&&e.push(f[d])}return e};a.prototype.kS=function(a){return"instance("+a+")"};a.prototype.$R=function(a){return"className("+a+")"};e.Player=e.J0=a})();define("jquery.mod",["jquery"],function(a){return a.noConflict(n)});
(function(){(function(){function a(a,b){return a.qia?o(b).chain():b}function b(a){return"\\"+T[a]}function c(a){function b(e){return a[e]}var e="(?:"+o.keys(a).join("|")+")",i=RegExp(e),g=RegExp(e,"g");return function(a){return a=r==a?"":""+a,i.test(a)?a.replace(g,b):a}}function d(a,b,e,i){if(a===b)return 0!==a||1/a===1/b;if(r==a||r==b)return a===b;a instanceof o&&(a=a.zv);b instanceof o&&(b=b.zv);var g=J.call(a);if(g!==J.call(b))return y;switch(g){case "[object RegExp]":case "[object String]":return""+
a==""+b;case "[object Number]":return+a!==+a?+b!==+b:0===+a?1/+a===1/b:+a===+b;case "[object Date]":case "[object Boolean]":return+a===+b}g="[object Array]"===g;if(!g){if("object"!=typeof a||"object"!=typeof b)return y;var c=a.constructor,k=b.constructor;if(c!==k&&(!o.isFunction(c)||!(c instanceof c&&o.isFunction(k)&&k instanceof k))&&"constructor"in a&&"constructor"in b)return y}e=e||[];i=i||[];for(c=e.length;c--;)if(e[c]===a)return i[c]===b;if(e.push(a),i.push(b),g){if(c=a.length,c!==b.length)return y;
for(;c--;)if(!d(a[c],b[c],e,i))return y}else{var j,g=o.keys(a);if(c=g.length,o.keys(b).length!==c)return y;for(;c--;)if(j=g[c],!o.has(b,j)||!d(a[j],b[j],e,i))return y}return e.pop(),i.pop(),n}function f(a,b,e,i,g){if(!(i instanceof b))return a.apply(e,g);b=p(a.prototype);a=a.apply(b,g);return o.zz(a)?a:b}function e(a,b,i,g){for(var c=[],j=0,g=g||0,f=D(a);f>g;g++){var d=a[g];if(k(d)&&(o.isArray(d)||o.isArguments(d))){b||(d=e(d,b,i));var p=0,l=d.length;for(c.length+=l;l>p;)c[j++]=d[p++]}else i||(c[j++]=
d)}return c}function g(a){return function(b,e,i){var g={};return e=l(e,i),o.each(b,function(i,c){var k=e(i,c,b);a(g,i,k)}),g}}function k(a){a=D(a);return"number"==typeof a&&0<=a&&G>=a}function i(a){return function(b){return r==b?m:b[a]}}function p(a){if(!o.zz(a))return{};if(L)return L(a);t.prototype=a;a=new t;return t.prototype=r,a}function j(a,b){return function(e){var i=arguments.length;if(2>i||r==e)return e;for(var g=1;i>g;g++)for(var c=arguments[g],k=a(c),j=k.length,d=0;j>d;d++){var f=k[d];b&&
e[f]!==m||(e[f]=c[f])}return e}}function l(a,b,e){return r==a?o.identity:o.isFunction(a)?q(a,b,e):o.zz(a)?o.dZ(a):o.Hda(a)}function q(a,b,e){if(b===m)return a;switch(r==e?3:e){case 1:return function(e){return a.call(b,e)};case 2:return function(e,i){return a.call(b,e,i)};case 3:return function(e,i,g){return a.call(b,e,i,g)};case 4:return function(e,i,g,c){return a.call(b,e,i,g,c)}}return function(){return a.apply(b,arguments)}}function o(a){return a instanceof o?a:this instanceof o?void(this.zv=a):
new o(a)}function t(){}function s(a){return function(b,e,i,g){var e=q(e,g,4),c=!k(b)&&o.keys(b),j=(c||b).length,d=0<a?0:j-1;3>arguments.length&&(i=b[c?c[d]:d],d+=a);for(var f=e,p=i;0<=d&&j>d;d+=a)var l=c?c[d]:d,p=f(p,b[l],l,b);return p}}function u(a){return function(b,e,i){for(var e=l(e,i),i=D(b),g=0<a?0:i-1;0<=g&&i>g;g+=a)if(e(b[g],g,b))return g;return-1}}function v(a,b,e){return function(i,g,c){var k=0,j=D(i);if("number"==typeof c)0<a?k=0<=c?c:Math.max(c+j,k):j=0<=c?Math.min(c+1,j):c+j+1;else if(e&&
c&&j)return c=e(i,g),i[c]===g?c:-1;if(g!==g)return c=b(E.call(i,k,j),o.isNaN),0<=c?c+k:-1;for(c=0<a?k:j-1;0<=c&&j>c;c+=a)if(i[c]===g)return c;return-1}}function w(a,b){var e=M.length,i=a.constructor,i=o.isFunction(i)&&i.prototype||A,g="constructor";for(o.has(a,g)&&!o.contains(b,g)&&b.push(g);e--;)g=M[e],g in a&&a[g]!==i[g]&&!o.contains(b,g)&&b.push(g)}var x=this,z=x.lP,F=Array.prototype,A=Object.prototype,K=F.push,E=F.slice,J=A.toString,B=A.hasOwnProperty,O=Array.isArray,N=Object.keys,I=Function.prototype.bind,
L=Object.create;"undefined"!=typeof exports?("undefined"!=typeof module&&module.Fua&&(exports=module.Fua=o),exports.lP=o):x.lP=o;o.VERSION="1.8.3";o.gBa=function(a,b){return l(a,b,1/0)};var G=Math.pow(2,53)-1,D=i("length");o.each=o.forEach=function(a,b,e){var b=q(b,e),i;if(k(a)){e=0;for(i=a.length;i>e;e++)b(a[e],e,a)}else{var g=o.keys(a),e=0;for(i=g.length;i>e;e++)b(a[g[e]],g[e],a)}return a};o.map=o.LAa=function(a,b,e){for(var b=l(b,e),e=!k(a)&&o.keys(a),i=(e||a).length,g=Array(i),c=0;i>c;c++){var j=
e?e[c]:c;g[c]=b(a[j],j,a)}return g};o.reduce=o.SAa=o.cBa=s(1);o.reduceRight=o.TAa=s(-1);o.find=o.detect=function(a,b,e){var i;return i=k(a)?o.Eba(a,b,e):o.Lua(a,b,e),i!==m&&-1!==i?a[i]:m};o.filter=o.select=function(a,b,e){var i=[];return b=l(b,e),o.each(a,function(a,e,g){b(a,e,g)&&i.push(a)}),i};o.reject=function(a,b,e){return o.filter(a,o.uda(l(b)),e)};o.every=o.all=function(a,b,e){for(var b=l(b,e),e=!k(a)&&o.keys(a),i=(e||a).length,g=0;i>g;g++){var c=e?e[g]:g;if(!b(a[c],c,a))return y}return n};
o.some=o.any=function(a,b,e){for(var b=l(b,e),e=!k(a)&&o.keys(a),i=(e||a).length,g=0;i>g;g++){var c=e?e[g]:g;if(b(a[c],c,a))return n}return y};o.contains=o.aBa=o.include=function(a,b,e,i){return k(a)||(a=o.values(a)),("number"!=typeof e||i)&&(e=0),0<=o.indexOf(a,b,e)};o.invoke=function(a,b){var e=E.call(arguments,2),i=o.isFunction(b);return o.map(a,function(a){var g=i?b:a[b];return r==g?g:g.apply(a,e)})};o.pluck=function(a,b){return o.map(a,o.Hda(b))};o.IBa=function(a,b){return o.filter(a,o.dZ(b))};
o.RAa=function(a,b){return o.find(a,o.dZ(b))};o.max=function(a,b,e){var i,g=-1/0,c=-1/0;if(r==b&&r!=a)for(var a=k(a)?a:o.values(a),j=0,d=a.length;d>j;j++)e=a[j],e>g&&(g=e);else b=l(b,e),o.each(a,function(a,e,k){i=b(a,e,k);(i>c||i===-1/0&&g===-1/0)&&(g=a,c=i)});return g};o.min=function(a,b,e){var i,g=1/0,c=1/0;if(r==b&&r!=a)for(var a=k(a)?a:o.values(a),j=0,d=a.length;d>j;j++)e=a[j],g>e&&(g=e);else b=l(b,e),o.each(a,function(a,e,k){i=b(a,e,k);(c>i||1/0===i&&1/0===g)&&(g=a,c=i)});return g};o.cza=function(a){for(var b=
k(a)?a:o.values(a),e=b.length,i=Array(e),g=0;e>g;g++)a=o.random(0,g),a!==g&&(i[g]=i[a]),i[a]=b[g];return i};o.sample=function(a,b,e){return r==b||e?(k(a)||(a=o.values(a)),a[o.random(a.length-1)]):o.cza(a).slice(0,Math.max(0,b))};o.sortBy=function(a,b,e){return b=l(b,e),o.pluck(o.map(a,function(a,e,i){return{value:a,index:e,uba:b(a,e,i)}}).sort(function(a,b){var e=a.uba,i=b.uba;if(e!==i){if(e>i||e===m)return 1;if(i>e||i===m)return-1}return a.index-b.index}),"value")};o.groupBy=g(function(a,b,e){o.has(a,
e)?a[e].push(b):a[e]=[b]});o.bBa=g(function(a,b,e){a[e]=b});o.NAa=g(function(a,b,e){o.has(a,e)?a[e]++:a[e]=1});o.toArray=function(a){return a?o.isArray(a)?E.call(a):k(a)?o.map(a,o.identity):o.values(a):[]};o.size=function(a){return r==a?0:k(a)?a.length:o.keys(a).length};o.rBa=function(a,b,e){var b=l(b,e),i=[],g=[];return o.each(a,function(a,e,c){(b(a,e,c)?i:g).push(a)}),[i,g]};o.first=o.head=o.ABa=function(a,b,e){return r==a?m:r==b||e?a[0]:o.cwa(a,a.length-b)};o.cwa=function(a,b){return E.call(a,
0,Math.max(0,a.length-(r==b?1:b)))};o.last=function(a,b,e){return r==a?m:r==b||e?a[a.length-1]:o.rest(a,Math.max(0,a.length-b))};o.rest=o.zBa=o.QAa=function(a,b,e){return E.call(a,r==b||e?1:b)};o.compact=function(a){return o.filter(a,o.identity)};o.flatten=function(a,b){return e(a,b,y)};o.without=function(a){return o.difference(a,E.call(arguments,1))};o.uniq=o.unique=function(a,b,e,i){o.isBoolean(b)||(i=e,e=b,b=y);r!=e&&(e=l(e,i));for(var i=[],g=[],c=0,k=D(a);k>c;c++){var j=a[c],d=e?e(j,c,a):j;b?
(c&&g===d||i.push(j),g=d):e?o.contains(g,d)||(g.push(d),i.push(j)):o.contains(i,j)||i.push(j)}return i};o.union=function(){return o.uniq(e(arguments,n,n))};o.intersection=function(a){for(var b=[],e=arguments.length,i=0,g=D(a);g>i;i++){var c=a[i];if(!o.contains(b,c)){for(var k=1;e>k&&o.contains(arguments[k],c);k++);k===e&&b.push(c)}}return b};o.difference=function(a){var b=e(arguments,n,n,1);return o.filter(a,function(a){return!o.contains(b,a)})};o.zip=function(){return o.Aza(arguments)};o.Aza=function(a){for(var b=
a&&o.max(a,D).length||0,e=Array(b),i=0;b>i;i++)e[i]=o.pluck(a,i);return e};o.object=function(a,b){for(var e={},i=0,g=D(a);g>i;i++)b?e[a[i]]=b[i]:e[a[i][0]]=a[i][1];return e};o.Eba=u(1);o.Mua=u(-1);o.sortedIndex=function(a,b,e,i){for(var e=l(e,i,1),b=e(b),i=0,g=D(a);g>i;){var c=Math.floor((i+g)/2);e(a[c])<b?i=c+1:g=c}return i};o.indexOf=v(1,o.Eba,o.sortedIndex);o.lastIndexOf=v(-1,o.Mua);o.range=function(a,b,e){r==b&&(b=a||0,a=0);for(var e=e||1,b=Math.max(Math.ceil((b-a)/e),0),i=Array(b),g=0;b>g;g++,
a+=e)i[g]=a;return i};o.bind=function(a,b){function e(){return f(a,e,b,this,i.concat(E.call(arguments)))}if(I&&a.bind===I)return I.apply(a,E.call(arguments,1));o.isFunction(a)||h(new TypeError("Bind must be called on a function"));var i=E.call(arguments,2);return e};o.mZ=function(a){function b(){for(var i=0,g=e.length,c=Array(g),k=0;g>k;k++)c[k]=e[k]===o?arguments[i++]:e[k];for(;i<arguments.length;)c.push(arguments[i++]);return f(a,b,this,this,c)}var e=E.call(arguments,1);return b};o.bindAll=function(a){var b,
e,i=arguments.length;1>=i&&h(Error("bindAll must be passed function names"));for(b=1;i>b;b++)e=arguments[b],a[e]=o.bind(a[e],a);return a};o.memoize=function(a,b){function e(i){var g=e.Wta,c=""+(b?b.apply(this,arguments):i);return o.has(g,c)||(g[c]=a.apply(this,arguments)),g[c]}return e.Wta={},e};o.delay=function(a,b){var e=E.call(arguments,2);return setTimeout(function(){return a.apply(r,e)},b)};o.defer=o.mZ(o.delay,o,1);o.throttle=function(a,b,e){function i(){d=e.Cwa===y?0:o.now();j=r;k=a.apply(g,
c);j||(g=c=r)}var g,c,k,j=r,d=0;e||(e={});return function(){var f=o.now();d||e.Cwa!==y||(d=f);var p=b-(f-d);return g=this,c=arguments,0>=p||p>b?(j&&(clearTimeout(j),j=r),d=f,k=a.apply(g,c),j||(g=c=r)):j||e.BBa===y||(j=setTimeout(i,p)),k}};o.debounce=function(a,b,e){function i(){var f=o.now()-j;b>f&&0<=f?g=setTimeout(i,b-f):(g=r,e||(d=a.apply(k,c),g||(k=c=r)))}var g,c,k,j,d;return function(){k=this;c=arguments;j=o.now();var f=e&&!g;return g||(g=setTimeout(i,b)),f&&(d=a.apply(k,c),k=c=r),d}};o.wrap=
function(a,b){return o.mZ(b,a)};o.uda=function(a){return function(){return!a.apply(this,arguments)}};o.compose=function(){var a=arguments,b=a.length-1;return function(){for(var e=b,i=a[b].apply(this,arguments);e--;)i=a[e].call(this,i);return i}};o.after=function(a,b){return function(){return 1>--a?b.apply(this,arguments):m}};o.before=function(a,b){var e;return function(){return 0<--a&&(e=b.apply(this,arguments)),1>=a&&(b=r),e}};o.once=o.mZ(o.before,2);var H=!{toString:r}.propertyIsEnumerable("toString"),
M="valueOf,isPrototypeOf,toString,propertyIsEnumerable,hasOwnProperty,toLocaleString".split(",");o.keys=function(a){if(!o.zz(a))return[];if(N)return N(a);var b=[],e;for(e in a)o.has(a,e)&&b.push(e);return H&&w(a,b),b};o.PX=function(a){if(!o.zz(a))return[];var b=[],e;for(e in a)b.push(e);return H&&w(a,b),b};o.values=function(a){for(var b=o.keys(a),e=b.length,i=Array(e),g=0;e>g;g++)i[g]=a[b[g]];return i};o.jBa=function(a,b,e){for(var b=l(b,e),i=o.keys(a),g=i.length,c={},k=0;g>k;k++)e=i[k],c[e]=b(a[e],
e,a);return c};o.qBa=function(a){for(var b=o.keys(a),e=b.length,i=Array(e),g=0;e>g;g++)i[g]=[b[g],a[b[g]]];return i};o.Rca=function(a){for(var b={},e=o.keys(a),i=0,g=e.length;g>i;i++)b[a[e[i]]]=e[i];return b};o.functions=o.mBa=function(a){var b=[],e;for(e in a)o.isFunction(a[e])&&b.push(e);return b.sort()};o.extend=j(o.PX);o.Cba=o.assign=j(o.keys);o.Lua=function(a,b,e){for(var b=l(b,e),i,e=o.keys(a),g=0,c=e.length;c>g;g++)if(i=e[g],b(a[i],i,a))return i};o.Ywa=function(a,b,i){var g,c,k={},j=a;if(r==
j)return k;o.isFunction(b)?(c=o.PX(j),g=q(b,i)):(c=e(arguments,y,y,1),g=function(a,b,e){return b in e},j=Object(j));for(var d=0,f=c.length;f>d;d++){var p=c[d],l=j[p];g(l,p,j)&&(k[p]=l)}return k};o.oBa=function(a,b,i){if(o.isFunction(b))b=o.uda(b);else var g=o.map(e(arguments,y,y,1),String),b=function(a,b){return!o.contains(g,b)};return o.Ywa(a,b,i)};o.defaults=j(o.PX,n);o.create=function(a,b){var e=p(a);return b&&o.Cba(e,b),e};o.clone=function(a){return o.zz(a)?o.isArray(a)?a.slice():o.extend({},
a):a};o.tap=function(a,b){return b(a),a};o.swa=function(a,b){var e=o.keys(b),i=e.length;if(r==a)return!i;for(var g=Object(a),c=0;i>c;c++){var k=e[c];if(b[k]!==g[k]||!(k in g))return y}return n};o.isEqual=function(a,b){return d(a,b)};o.isEmpty=function(a){return r==a?n:k(a)&&(o.isArray(a)||o.isString(a)||o.isArguments(a))?0===a.length:0===o.keys(a).length};o.isElement=function(a){return!(!a||1!==a.nodeType)};o.isArray=O||function(a){return"[object Array]"===J.call(a)};o.zz=function(a){var b=typeof a;
return"function"===b||"object"===b&&!!a};o.each("Arguments,Function,String,Number,Date,RegExp,Error".split(","),function(a){o["is"+a]=function(b){return J.call(b)==="[object "+a+"]"}});o.isArguments(arguments)||(o.isArguments=function(a){return o.has(a,"callee")});"function"!=typeof/./&&"object"!=typeof Int8Array&&(o.isFunction=function(a){return"function"==typeof a||y});o.dBa=function(a){return isFinite(a)&&!isNaN(parseFloat(a))};o.isNaN=function(a){return o.isNumber(a)&&a!==+a};o.isBoolean=function(a){return a===
n||a===y||"[object Boolean]"===J.call(a)};o.isNull=function(a){return r===a};o.isUndefined=function(a){return a===m};o.has=function(a,b){return r!=a&&B.call(a,b)};o.noConflict=function(){return x.lP=z,this};o.identity=function(a){return a};o.MAa=function(a){return function(){return a}};o.noop=C();o.Hda=i;o.sBa=function(a){return r==a?C():function(b){return a[b]}};o.dZ=o.kBa=function(a){return a=o.Cba({},a),function(b){return o.swa(b,a)}};o.times=function(a,b,e){for(var i=Array(Math.max(0,a)),b=q(b,
e,1),e=0;a>e;e++)i[e]=b(e);return i};o.random=function(a,b){return r==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))};o.now=Date.now||function(){return(new Date).getTime()};var O={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},U=o.Rca(O);o.escape=c(O);o.unescape=c(U);o.result=function(a,b,e){b=r==a?m:a[b];return b===m&&(b=e),o.isFunction(b)?b.call(a):b};var V=0;o.uniqueId=function(a){var b=++V+"";return a?a+b:b};o.sza={evaluate:/<%([\s\S]+?)%>/g,gwa:/<%=([\s\S]+?)%>/g,
escape:/<%-([\s\S]+?)%>/g};var S=/(.)^/,T={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},W=/\\|'|\r|\n|\u2028|\u2029/g;o.template=function(a,e,i){function g(a){return j.call(this,a,o)}!e&&i&&(e=i);var e=o.defaults({},e,o.sza),c=0,k="__p+='";a.replace(RegExp([(e.escape||S).source,(e.gwa||S).source,(e.evaluate||S).source].join("|")+"|$","g"),function(e,i,g,j,d){return k+=a.slice(c,d).replace(W,b),c=d+e.length,i?k+="'+\n((__t=("+i+"))==null?'':_.escape(__t))+\n'":g?k+="'+\n((__t=("+
g+"))==null?'':__t)+\n'":j&&(k+="';\n"+j+"\n__p+='"),e});k+="';\n";e.Vea||(k="with(obj||{}){\n"+k+"}\n");k="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+k+"return __p;\n";try{var j=new Function(e.Vea||"obj","_",k)}catch(d){h((d.source=k,d))}return g.source="function("+(e.Vea||"obj")+"){\n"+k+"}",g};o.chain=function(a){a=o(a);return a.qia=n,a};o.mixin=function(b){o.each(o.functions(b),function(e){var i=o[e]=b[e];o.prototype[e]=function(){var b=[this.zv];
return K.apply(b,arguments),a(this,i.apply(o,b))}})};o.mixin(o);o.each("pop,push,reverse,shift,sort,splice,unshift".split(","),function(b){var e=F[b];o.prototype[b]=function(){var i=this.zv;return e.apply(i,arguments),"shift"!==b&&"splice"!==b||0!==i.length||delete i[0],a(this,i)}});o.each(["concat","join","slice"],function(b){var e=F[b];o.prototype[b]=function(){return a(this,e.apply(this.zv,arguments))}});o.prototype.value=Q("zv");o.prototype.valueOf=o.prototype.toJSON=o.prototype.value;o.prototype.toString=
function(){return""+this.zv};"function"==typeof define&&define.zAa&&define("lz",[],function(){return o})}).call(this)}).call(window.TDV||(window.TDV={}));define("underscore-min",C());define("do",["underscore-min"],function(){return window.TDV._.noConflict()});
define("ll",[],function(){return{D:function(a){return a+"_change"},dd:"default",Eb:"mouseDown",Nc:"mouseMove",ec:"mouseUp",nq:"mouseWheel",U:"click",yG:"doubleClick",wc:"rollOver",Mb:"rollOut",Jh:"mouseEnter",Ff:"mouseLeave",Hi:"pointerOver",Zza:"pointerOut",G0:"pointerDown",H0:"pointerUp",Gi:"pointerClick",sG:"gestureStart",vfa:"gestureChange",rG:"gestureEnd",wfa:"gestureRotate",Ew:"gestureScale",vc:"progress",Xs:"close",OPEN:"open",Ii:"select",vb:"resize",TN:"changing",aa:"change",xc:"stateChange",
Ef:"cueChange",T:"loaded",ne:"loadingError",Ji:"start",oe:"stop",qt:"play",DG:"pause",Ib:"ready",Pk:"begin",Ba:"end",Mza:"cancel",Bg:"press",Lh:"release",rt:"repeatEnd",vm:"scroll",zG:"movementChange",Lza:"beforeShow",u_:"beforeHide",INIT:"init",od:"show",zd:"hide",Mw:"showEnd",ot:"hideEnd",Ffa:"loadingScript",Zfa:"processingScript",Cw:"enableCookies",dfa:"applicationSet",nG:"userInteraction",V0:"toolTipShow",fP:"toolTipHide"}});
define("bZ",[],function(){return function(a,b){this.name=a;this.source=m;this.data=b}});
define("ky",[],function(){function a(){this.Xe=[];this.ln=[]}a.prototype.oI=function(a){for(var c=0;c<this.Xe.length;c++)if(this.Xe[c]==a)return c;return-1};a.prototype.set=function(a,c){var d=this.oI(a);0<=d?this.ln[d]=c:(this.Xe.push(a),this.ln.push(c))};a.prototype.uca=function(a){return 0<=this.oI(a)};a.prototype.get=function(a){a=this.oI(a);if(0<=a)return this.ln[a]};a.prototype.keys=function(){return this.Xe.slice()};a.prototype.values=function(){return this.ln.slice()};a.prototype.length=function(){return this.Xe.length};
a.prototype.clear=function(a){a=this.oI(a);0<=a&&(this.Xe.splice(a,1),this.ln.splice(a,1))};a.prototype.each=function(a,c){for(var d=0;d<this.Xe.length;d++)a.call(c,this.Xe[d],this.ln[d])};return a});
define("gr",["require","do","ll"],function(a){function b(a){var b=f[a];if(b)return b;if("string"!=typeof a)return f[a]=function(){return a};var i=(b=e.exec(a))&&parseFloat(b[1]);switch(b&&b[4]&&b[4].toLowerCase()){case "vw":return f[a]=function(a){return a*i};case "vh":return f[a]=function(a,b){return b*i};case "vmin":return f[a]=function(a,b,e){return e*i};case "vmax":return f[a]=function(a,b,e,g){return g*i};default:return f[a]=function(){return a}}}function c(a){this.ra=a;this.ez=this.ez.bind(this);
this.ra.bind(d.vb,this.jb,this,n);this.TV={};this.mo=[];this.jb()}a("do");var d=a("ll");c.prototype.jb=function(){this.mta();for(var a in this.TV)this.ez(this.TV[a]);this.mo.forEach(this.ez)};c.prototype.mta=function(){var a=this.ra.eb();this.SL=0.01*this.ra.Aa();this.NL=0.01*a;this.Vaa=Math.min(this.SL,this.NL);this.Uaa=Math.max(this.SL,this.NL)};c.prototype.ez=function(a){a(this.SL,this.NL,this.Vaa,this.Uaa)};c.prototype.Kta=function(a){this.mo.push(a)};c.prototype.pxa=function(a){a=this.mo.indexOf(a);
0<=a&&this.mo.splice(a,1)};c.prototype.Rta=function(a,e,i,c){function j(b,c,j,f){e.call(a,i,d(b,c,j,f))}var d=b(c);this.TV[a.jr+"."+i]=j;j(this.SL,this.NL,this.Vaa,this.Uaa)};c.Yc={};c.get=function(a){var b=a.jr,e=c.Yc[b];e||(e=new c(a),c.Yc[b]=e);return e};var f={},e=/^\s*((\+|\-)?(\d*\.)?\d+)\s*(vmin|vmax|vw|vh|px|%)?\s*$/i;return c});
define("jt",[],function(){function a(a,b){var f=a.split(b),e=f[0];(f=f.slice(1).join(b))&&(f=b+f);return[e,f]}var b=window.URL||C();b.cj=document.createElement("a");b.Vca=function(a){if(b.SY(a)){var d=window.location.protocol+"//"+window.location.hostname;return a.substring(0,d.length)!=d}return y};b.Ss=function(a,d){if(b.wwa(a))a=window.location.protocol+a;else if(!b.SY(a)&&!b.Zv(a)){if(d)if(0==a.indexOf("/")){var f=d.indexOf("//"),e="";0<=f&&(e=d.substr(0,f+2),d=d.substr(f+2));f=d.indexOf("/");
0<f&&(d=d.substr(0,f));a=e+d+a}else a=d+a;b.cj.href=a;a=b.cj.href}return a};b.mwa=function(){switch(window.location.protocol){case "http:":case "https:":return n;default:return y}};b.wwa=function(a){return 0===a.indexOf("//")};b.SY=function(a){if(!a)return y;var b=a.indexOf("://");return 3<=b&&5>=b?n:0==a.indexOf("filesystem:")};b.Zv=function(a){return a&&0==a.indexOf("data:")};b.getDirectory=function(a){a=b.Ss(a);a=a.split("?")[0];a=a.split("/");1<a.length&&a.splice(a.length-1,1);return a.join("/")+
"/"};b.ag=function(a){b.ly||(b.ly=b.Y4());return b.ly[a]!==m};b.Fn=function(a){b.ly||(b.ly=b.Y4());return b.ly[a]};b.Dv=function(b,d){if(!d)return b;var f=a(b,"#"),e=f[1],f=a(f[0],"?"),g=f[0],f=f[1];return 0<=f.indexOf(d)?b:g+(f+(f?"&":"?")+d)+e};b.parse=function(a){b.cj.href=a;a={};a.protocol=b.cj.protocol;a.hostname=b.cj.hostname;a.port=b.cj.port;a.pathname=b.cj.pathname;a.search=b.cj.search;a.hash=b.cj.hash;a.host=b.cj.host;var d=a.pathname?a.pathname.lastIndexOf("."):-1;a.Gua=0<=d?a.pathname.substr(d).toLowerCase():
"";return a};b.IAa=function(a){return a.protocol+"//"+a.hostname+a.pathname+a.search+a.hash};b.getExtension=function(a){var a=b.parse(a).pathname,d=a.lastIndexOf(".");return 0<=d?a.substr(d,a.length):""};b.Yg=function(a,d){switch((b.Fn(a)||"").toLowerCase()){case "false":case "0":case "no":case "n":return y;case "true":case "1":case "yes":case "y":return n;default:return d}};b.Sba=function(a,d){var f=parseInt(b.Fn(a));return isNaN(f)?d:f};b.wM=function(a){a=parseFloat(b.Fn(a));return isNaN(a)?m:a};
b.ly=r;b.Y4=function(){for(var a={},b=window.location.search.substring(1).split("&"),f=0;f<b.length;f++){var e=b[f].split("=");a[decodeURIComponent(e[0])]=1<e.length?decodeURIComponent(e[1]):r}return a};return b});
define("fg",["require","do","jquery.mod"],function(a){var b=a("do"),c=a("jquery.mod"),d={bwa:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},Tta:function(a,b){b.forEach(function(b){Object.getOwnPropertyNames(b).forEach(function(i){a.prototype[i]=b[i]})})},extend:function(){var a=arguments[0],b=arguments[arguments.length-1],c=Array.prototype.slice.call(arguments,1,arguments.length-1);d.bwa(b,a);d.Tta(b,c);return b},deferred:function(a,g){return function(){var c=
arguments;b.defer(function(){a.apply(g,c)})}},jm:function(a,g){var c=y;return function(){c||(c=n,b.defer(function(){c=y;a.apply(g||window)}))}},memoize:function(a,b,c,i){a.eC||(a.eC=[],a.MT=[]);for(var d=a.eC,j=0,f=d.length;j<f;j++){var q=d[j];if(i.length==q.length){for(var o=n,t=0,s=i.length;t<s&&o;t++)o=q[t]==i[t];if(o)return a.MT[j]}}c=c.apply(window,i);a.eC.length==b&&(a.eC.shift(),a.MT.shift());a.eC.push(i);a.MT.push(c);return c},Kx:[],FAa:function(a,b){var c=d.Cja();window[c]=function(){a.apply(b,
arguments)};d.Kx.push({handler:a,context:b,callback:c});return c},WAa:function(a,b){for(var c=0;c<d.Kx.length;c++){var i=d.Kx[c];if(i.handler==a&&i.context==b)return i.callback}},DBa:function(a,b){for(var c=0;c<d.Kx.length;c++){var i=d.Kx[c];if(i.handler==a&&i.context==b)return i=i.callback,d.Kx.splice(c,1),delete window[i],i}},Cja:function(){var a;do a="__callback_"+d.Jda(8);while(window[a]);return a},Jda:function(a){for(var b=[],c=0;c<a;c++)b.push(Math.floor(16*Math.random()).toString(16));return b.join("")},
Dua:function(a){d.Yx=c("<div></div>");d.Yx.css({overflow:"auto",position:"absolute",bottom:0,left:0,right:0,padding:"20px",fontFamily:"Verdana",backgroundColor:"#FFFFFF",color:"#000000","z-index":100});a?d.Yx.css({top:0}):d.Yx.css({width:"40%",right:"0",left:"auto",height:"50%",filter:"alpha(opacity=60)",opacity:0.6});c("body").append(d.Yx);console.log=function(a){d.log(a)}}},f;d.log=function(a){if(a!=f){f=a;try{d.Yx?c("<div></div>").text(a).prependTo(d.Yx):console.log(a)}catch(b){}}};d.tBa=function(a){this.NR.push(a)};
d.NR=[];d.debug=function(a,b){try{b.apply(this,arguments)}catch(c){d.XM(a,c),h(c)}};d.XM=function(a,b){var c=[];c.push("Exception: "+a);b.message?(c.push(b.message),c.push(b.stack)):c.push(b);this.log(c.join("\n"));for(c=0;c<this.NR.length;c++)this.NR[c](b)};d.clone=function(a,b){var b=b||0,c=new a.constructor,i;for(i in a)if(a.hasOwnProperty(i)){var f=a[i];0<b&&f&&"object"===typeof f&&(f=d.clone(f,b-1));c[i]=f}return c};d.toArray=function(a){return a===m||a===r?[]:!Array.isArray(a)?[a]:a};"function"!=
typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(a,b){a==r&&h(new TypeError("Cannot convert undefined or null to object"));for(var c=Object(a),i=1;i<arguments.length;i++){var d=arguments[i];if(d!=r)for(var j in d)Object.prototype.hasOwnProperty.call(d,j)&&(c[j]=d[j])}return c},writable:n,configurable:n});return d});
define("dW","require,jquery.mod,do,ky,gr,jt,fg".split(","),function(a){function b(a,b){this.jx=a;this.AQ=b;this.UC=r;this.uU={};this.qU=this.Et=this.Zw=m;this.h8=[];this.rE=this.vv=m;this.g8=[];this.HD=this.iv=m;this.f8={};this.gC=m;this.d8=[];this.Xq=m;this.e8=[];this.mr=m;this.L5=this.N5=y}var c=a("jquery.mod"),d=a("do"),f=a("ky"),e=a("gr"),g=a("jt"),k=a("fg");b.prototype.B=function(a){this.UC=a;this.W2();this.a3();this.tQ();return this};b.prototype.tva=function(){if(this.UC)return b.wn(this.UC)};
b.prototype.nz=Q("jx");b.prototype.$E=function(){return this.gr()?this.Eo().$E().concat(this.jx):[this.jx]};b.prototype.K=function(a){this.uU=a;this.W2();return this};b.prototype.hasAttributes=function(){return this.Iba().length>0};b.prototype.hasAttribute=function(a){return this.mY(a)?n:y};b.prototype.Iba=function(){this.Zw==m&&this.v3();return this.Zw};b.prototype.Aya=function(){this.qU=["definitions"];return this};b.prototype.aca=function(){if(this.qU)return this.qU;if(this.gr())this.Eo().aca();
else return[]};b.prototype.mY=function(a){this.Et==m&&this.v3();return this.Et[a]};b.prototype.fh=function(a){this.h8=a;this.Iia();return this};b.prototype.Tva=function(){return this.ica().length>0};b.prototype.ica=function(){this.vv==m&&this.A3();return this.vv};b.prototype.Eva=function(){this.rE==m&&this.A3();return this.rE};b.prototype.aq=function(a){this.g8=a;this.Gia();return this};b.prototype.Sva=function(){return this.gca().length>0};b.prototype.gca=function(){this.iv==m&&this.z3();return this.iv};
b.prototype.Dva=function(){this.HD==m&&this.z3();return this.HD};b.prototype.Vb=function(a){this.d8=a;this.tQ();return this};b.prototype.Mva=function(){return this.qY().length>0};b.prototype.sca=function(a){this.Xq==m&&this.HH();return d(this.Xq).contains(a)};b.prototype.qY=function(){this.Xq==m&&this.HH();return this.Xq};b.prototype.Cf=function(a){this.e8=a;this.tQ();return this};b.prototype.Pva=function(){return this.vY().length>0};b.prototype.tca=function(a){this.mr==m&&this.HH();return d(this.mr).contains(a)};
b.prototype.vY=function(){this.mr==m&&this.HH();return this.mr};b.prototype.Ag=function(a){this.f8=a;this.a3();return this};b.prototype.Zba=function(){this.gC==m&&this.uja();return this.gC};b.prototype.hya=function(){this.N5=n;return this};b.prototype.Tba=function(){return this.N5||this.gr()&&this.Eo().Tba()};b.prototype.vs=function(a,b,e,g){this.Yoa(b,e);var c=this.AQ,d;d=g&&g.length>0?new (k.extend(c,function(){c.apply(this,g)})):new c;d.set("application",a);d.set("baseDirectoy",b);d.set("queryStringParameters",
e);d.set("class",this.nz());return d};b.prototype.Yoa=function(a,b){if(!this.L5){this.L5=n;this.Fja(a,b);this.kka()}};b.prototype.Fja=function(a,b){if(this.Tva()||this.Sva()){var c=this.AQ.prototype,k=this.Eva(),d=this.Dva(),f=c.set;c.set=function(c,j){if(k[c]){j&&!g.Zv(j)&&!g.SY(j)&&(j=g.Dv(g.Ss(j,a),b));f.call(this,c,j)}else d[c]?e.get(this.get("application")||this.Ra()).Rta(this,f,c,j):f.call(this,c,j)}}};b.prototype.kka=function(){var a=this.AQ.prototype,b=this;if(this.hasAttributes()){a.set=
a.set;a.get=a.get}if(this.Mva()||this.Pva()){a.bind=a.bind;a.getBindings=a.YE;a.hasBindings=a.qca;a.trigger=a.trigger;a.unbind=a.unbind}a.getClassName=function(){return b.nz()};a.getClassPath=function(){return b.$E()};var e=this.Zba(),g;for(g in e)a[g]=e[g]};b.prototype.W2=function(){this.Et=this.Zw=m};b.prototype.v3=function(){this.Zw=[];this.Et={};for(var a in this.uU){this.Zw.push(a);this.Et[a]=b.eS(this.uU[a])}if(this.gr())for(var e=this.Eo(),g=e.Iba(),c=0;c<g.length;c++){a=g[c];if(!this.Et[a]){this.Zw.push(a);
this.Et[a]=e.mY(a)}}};b.prototype.Iia=function(){this.rE=m};b.prototype.A3=function(){this.vv=this.h8.slice();if(this.gr())this.vv=d(this.vv).union(this.Eo().ica());this.rE={};for(var a=0;a<this.vv.length;a++)this.rE[this.vv[a]]=n};b.prototype.Gia=function(){this.HD=m};b.prototype.z3=function(){this.iv=this.g8.slice();if(this.gr())this.iv=d(this.iv).union(this.Eo().gca());this.HD={};for(var a=0;a<this.iv.length;a++)this.HD[this.iv[a]]=n};b.prototype.tQ=function(){this.mr=this.Xq=m};b.prototype.HH=
function(){this.Xq=this.d8.slice();this.mr=this.e8.slice();if(this.gr()){this.Xq=d(this.Xq).union(this.Eo().qY());this.mr=d(this.mr).union(this.Eo().vY())}};b.prototype.a3=function(){this.gC=m};b.prototype.uja=function(){this.gC=d(this.f8).clone();this.gr()&&d(this.gC).defaults(this.Eo().Zba())};b.prototype.gr=function(){return this.UC?n:y};b.prototype.Eo=function(){return b.wn(this.UC)};b.U2=new f;b.T2=new f;b.wAa={};b.A=function(a,e){var g=new b(a,e);b.U2.set(a,g);b.T2.set(e,g);return g};b.wn=function(a){return b.U2.get(a)};
b.Sua=function(a){return b.T2.get(a)};b.qb=function(a,e){var g=b.wn(a);if(d(e).isNull())return n;if(e&&e.constructor)for(var c=b.Sua(e.constructor);c;){if(c==g)return n;c=c.tva()}return y};b.eS=function(a){switch(a){case "string":case "code":return b.Mra;case "number":return b.ina;case "bool":return b.Pha;case "color":return b.Oia;case "percent":return b.Joa;case "size":return b.kra;case "identifier":return b.lma;case "array":return b.g2;case "dict":return b.Koa;case "*":return b.cka;default:if(b.Fma(a))switch(b.Rka(a)){case "array":var e=
b.eS(b.w4(a));return function(a,i){for(var a=b.g2(a,i),g=0;g<a.length;g++)a[g]=e(a[g],i);return a};case "enum":var g=b.x4(a);return b.Ska(g);case "or":var g=b.x4(a),c=d(g).map(function(a){return b.eS(a)});return function(a,b){for(var e=0;e<c.length;e++)try{return c[e](a,b)}catch(i){}h("Invalid value")};default:h("Invalid type validator definition: "+a)}else return b.ml(function(e){return b.qb(a,e)})}};b.Fma=function(a){return a.indexOf("[")>=0&&a.lastIndexOf("]")==a.length-1};b.Rka=function(a){return a.substring(0,
a.indexOf("["))};b.w4=function(a){return a.substring(a.indexOf("[")+1,a.lastIndexOf("]"))};b.x4=function(a){for(var a=b.w4(a),e=[],g="",c=0,k=0;k<a.length;k++){var f=a.charAt(k),g=g+f;switch(f){case "[":c++;break;case "]":c--;break;case ",":if(c==0){e.push(g.substr(0,g.length-1));g=""}}}g!=""&&e.push(g);return d(e).map(function(a){return b.usa(a)})};b.usa=function(a){return a.replace(/^\s+|\s+$/g,"")};b.ml=function(a){return function(e,g){if(!a(e)){typeof e!="string"&&h("Invalid value");e=b.ika(e,
g);a(e)||h("Invalid value")}return e}};b.ika=function(a,b){return function(){return eval(a)}.call(b)};b.cka=function(a){return a};b.ina=b.ml(function(a){return Object.prototype.toString.call(a)=="[object Number]"});b.Mra=b.ml(function(a){return typeof a=="string"||a===r});b.Pha=b.ml(function(a){return a===n||a===y});b.g2=b.ml(function(a){return Object.prototype.toString.call(a)=="[object Array]"});b.Ska=function(a){return b.ml(function(b){return d(a).contains(b)})};b.bI=function(a,b){return d(a).isString()&&
b.test(a)};b.lma=b.ml(function(a){return b.bI(a,/^[a-z][a-z0-9_]*$/i)});b.Joa=b.ml(function(a){return b.bI(a,/^\s*([+-]?\d+\.?\d*)%\s*$/i)});b.kra=b.ml(function(a){return b.bI(a,/^\s*([+-]?\d+\.?\d*)\s*((vw)|(vh)|(vmin)|(vmax)|(px))\s*$/i)});b.Oia=b.ml(function(a){return b.bI(a,/^#[0-9a-f]{6}$/i)});b.Koa=b.ml(function(a){try{return c.isPlainObject(a)}catch(b){return y}});return b});
define("gG",["require"],function(){function a(){e[0]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=e[16]=0;this.SX=e;this.FM=1779033703;this.GM=3144134277;this.HM=1013904242;this.IM=2773480762;this.JM=1359893119;this.KM=2600822924;this.LM=528734635;this.MM=1541459225;this.KE=this.start=this.us=this.HY=0;this.iY=this.NM=y;this.first=n}var b="0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f".split(","),c=[-2147483648,8388608,32768,128],d=[24,16,8,0],f=[1116352408,1899447441,3049323471,
3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,
659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],e=[];a.prototype.update=function(a){if(!this.iY){for(var b,e=0,c,j=a.length,f=this.SX;e<j;){this.NM&&(this.NM=y,f[0]=this.KE,f[16]=f[1]=f[2]=f[3]=f[4]=f[5]=f[6]=f[7]=f[8]=f[9]=f[10]=f[11]=f[12]=f[13]=f[14]=f[15]=0);for(c=this.start;e<j&&64>c;++e)b=a.charCodeAt(e),128>b?f[c>>2]|=b<<d[c++&3]:(2048>b?f[c>>2]|=(192|b>>6)<<d[c++&3]:(55296>b||57344<=b?f[c>>
2]|=(224|b>>12)<<d[c++&3]:(b=65536+((b&1023)<<10|a.charCodeAt(++e)&1023),f[c>>2]|=(240|b>>18)<<d[c++&3],f[c>>2]|=(128|b>>12&63)<<d[c++&3]),f[c>>2]|=(128|b>>6&63)<<d[c++&3]),f[c>>2]|=(128|b&63)<<d[c++&3]);this.Bwa=c;this.us+=c-this.start;64<=c?(this.KE=f[16],this.start=c-64,this.hash(),this.NM=n):this.start=c}4294967295<this.us&&(this.HY+=this.us/4294967296<<0,this.us%=4294967296);return this}};a.prototype.Kua=function(){if(!this.iY){this.iY=n;var a=this.SX,b=this.Bwa;a[16]=this.KE;a[b>>2]|=c[b&3];
this.KE=a[16];56<=b&&(this.NM||this.hash(),a[0]=this.KE,a[16]=a[1]=a[2]=a[3]=a[4]=a[5]=a[6]=a[7]=a[8]=a[9]=a[10]=a[11]=a[12]=a[13]=a[14]=a[15]=0);a[14]=this.HY<<3|this.us>>>29;a[15]=this.us<<3;this.hash()}};a.prototype.hash=function(){var a=this.FM,b=this.GM,e=this.HM,c=this.IM,d=this.JM,l=this.KM,q=this.LM,o=this.MM,t=this.SX,s,u,v,w,x,z,F;for(s=16;64>s;++s)v=t[s-15],u=(v>>>7|v<<25)^(v>>>18|v<<14)^v>>>3,v=t[s-2],v=(v>>>17|v<<15)^(v>>>19|v<<13)^v>>>10,t[s]=t[s-16]+u+t[s-7]+v<<0;F=b&e;for(s=0;64>s;s+=
4)this.first?(z=704751109,v=t[0]-210244248,o=v-1521486534<<0,c=v+143694565<<0,this.first=y):(u=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),v=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),z=a&b,w=z^a&e^F,x=d&l^~d&q,v=o+v+x+f[s]+t[s],u+=w,o=c+v<<0,c=v+u<<0),u=(c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10),v=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),F=c&a,w=F^c&b^z,x=o&d^~o&l,v=q+v+x+f[s+1]+t[s+1],u+=w,q=e+v<<0,e=v+u<<0,u=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),v=(q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|
q<<7),z=e&c,w=z^e&a^F,x=q&o^~q&d,v=l+v+x+f[s+2]+t[s+2],u+=w,l=b+v<<0,b=v+u<<0,u=(b>>>2|b<<30)^(b>>>13|b<<19)^(b>>>22|b<<10),v=(l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7),F=b&e,w=F^b&c^z,x=l&q^~l&o,v=d+v+x+f[s+3]+t[s+3],u+=w,d=a+v<<0,a=v+u<<0;this.FM=this.FM+a<<0;this.GM=this.GM+b<<0;this.HM=this.HM+e<<0;this.IM=this.IM+c<<0;this.JM=this.JM+d<<0;this.KM=this.KM+l<<0;this.LM=this.LM+q<<0;this.MM=this.MM+o<<0};a.prototype.Vva=function(){this.Kua();var a=this.FM,e=this.GM,c=this.HM,d=this.IM,f=this.JM,
l=this.KM,q=this.LM,o=this.MM;return b[a>>28&15]+b[a>>24&15]+b[a>>20&15]+b[a>>16&15]+b[a>>12&15]+b[a>>8&15]+b[a>>4&15]+b[a&15]+b[e>>28&15]+b[e>>24&15]+b[e>>20&15]+b[e>>16&15]+b[e>>12&15]+b[e>>8&15]+b[e>>4&15]+b[e&15]+b[c>>28&15]+b[c>>24&15]+b[c>>20&15]+b[c>>16&15]+b[c>>12&15]+b[c>>8&15]+b[c>>4&15]+b[c&15]+b[d>>28&15]+b[d>>24&15]+b[d>>20&15]+b[d>>16&15]+b[d>>12&15]+b[d>>8&15]+b[d>>4&15]+b[d&15]+b[f>>28&15]+b[f>>24&15]+b[f>>20&15]+b[f>>16&15]+b[f>>12&15]+b[f>>8&15]+b[f>>4&15]+b[f&15]+b[l>>28&15]+b[l>>
24&15]+b[l>>20&15]+b[l>>16&15]+b[l>>12&15]+b[l>>8&15]+b[l>>4&15]+b[l&15]+b[q>>28&15]+b[q>>24&15]+b[q>>20&15]+b[q>>16&15]+b[q>>12&15]+b[q>>8&15]+b[q>>4&15]+b[q&15]+b[o>>28&15]+b[o>>24&15]+b[o>>20&15]+b[o>>16&15]+b[o>>12&15]+b[o>>8&15]+b[o>>4&15]+b[o&15]};return function(b){return(new a).update(b).Vva()}});
define("jE",["require","jt"],function(a){var a=a("jt"),b={};b.A_=a.Yg("debug",y);b.zfa=a.ag("hqhls");b.t_=a.Yg("audiocontext",n);b.hga=a.Yg("testhash",y);b.qfa=a.Yg("exitvronblur",y);b.lfa=a.Yg("download",n);return b});
define("bF",["require","gG","jE"],function(a){function b(a){switch(Array.isArray(a)?"array":a===r?"null":typeof a){case "array":return"["+a.map(b).join(",")+"]";case "object":return"{"+Object.keys(a).sort().map(function(c){return b(c)+":"+b(a[c])}).join(",")+"}";case "boolean":return a?"true":"false";case "number":return a.toFixed(3);case "string":return'"'+a.split('"').join('\\"')+'"';case "null":return"null";case "undefined":return"undefined";case "function":return"<function>"}return""}var c=a("gG"),
d=a("jE"),f=TDV.Da.DM().MAJOR+"."+TDV.Da.DM().MINOR;return{Fza:function(a){var g=a.hash;delete a.hash;var a=b(a),k=c(f+a);d.hga&&k!=g&&(console.log(f+a),console.log(k),console.log(g))}}});
define("iN",[],function(){function a(){var a=e.length,b=e.splice(0,a);f+=a;for(var c=0;c<a;c++){var i=b[c];i&&i()}}var b=window.MutationObserver,c=window.Promise,d=0,f=0,e=[],g;setInterval(function(){0<e.length&&100<(new Date).getTime()-k&&a()},100);var k,i;c&&(i=new c(function(a){a()}));b&&(g=document.createTextNode(""),(new b(a)).observe(g,{characterData:n}));return{jw:function(f,j){if(j>0||!b&&!c)return~setTimeout(f,j||1);if(e.length==0){c?i.then(a):g.textContent=d;k=(new Date).getTime()}d++;e.push(f);
return d-1},cancel:function(a){if(a<0)clearTimeout(~a);else{var b=a-f;if(b>=0){e[b]||h("invalid async handle: "+a);e[b]=r}}}}});
define("eO",["do","iN","bZ","fg"],function(a,b,c,d){function f(){this.Xc={}}f.prototype.bind=function(a,b,c,i,f){a===m&&h("Event name undefined");b===m&&h("Event handler undefined");a in this.Xc||(this.Xc[a]=[]);this.Xc[a].push({handler:b,handlerDef:f||b,context:c||this,immediate:i?n:y});return this};f.prototype.unbind=function(b,c,f){if(b in this.Xc){var f=f||this,i=a(this.Xc[b]).select(function(a){return a.handler!=c||a.context!=f});0<i.length?this.Xc[b]=i:delete this.Xc[b]}return this};f.prototype.zza=
function(a){a in this.Xc&&delete this.Xc[a]};f.prototype.Sea=function(){this.Xc={}};f.prototype.trigger=function(a,b){var f="string"==typeof a,i=f?a:a.name;i in this.Xc&&(f&&(a=new c(a,b)),a.source=this,this.OA(a,n),i in this.Xc&&this.Gja(a));return this};f.prototype.Gja=function(a){f.LH.push({caller:this,event:a});f.mR||(f.mR=n,b.jw(f.H3))};f.LH=[];f.mR=y;f.H3=function(){for(var a=(new Date).getTime()+1E3;f.LH.length;){var c=f.LH.shift();f.prototype.OA.call(c.caller,c.event,y);if((new Date).getTime()>
a)break}0<f.LH.length?b.jw(f.H3,1):f.mR=y};f.prototype.qca=function(a){return a in this.Xc};f.prototype.YE=function(a,b){for(var c=[],i=this.Xc[a]||[],f=0;f<i.length;f++){var d=i[f];(b===m||d.immediate==b)&&c.push(d.handlerDef)}return c};f.prototype.OA=function(a,b){if(a.name in this.Xc)for(var c=this.Xc[a.name],i=0;i<c.length;i++){var f=c[i];if(f.immediate==b)try{f.handler.call(f.context,a)}catch(j){d.XM("Exception handling event "+a.name,j)}}};return f});
define("jd",["ll","fg","bZ","eO"],function(a,b,c,d){b=b.extend(d,function(){d.call(this);this.FA={}});b.prototype.set=function(a,b){this.FA[a]!=b&&(this.FA[a]=b,this.eaa(a))};b.prototype.eaa=function(b){this.trigger(new c(a.D(b)))};b.prototype.get=function(a,b){var c=this.FA[a];return c!==m?c:b};return b});
define("fk",[],function(){function a(a,c,d){this.set("undefined"!=typeof a?a:0,"undefined"!=typeof c?c:0,"undefined"!=typeof d?d:0)}a.prototype.set=function(a,c,d){this.x=a;this.y=c;this.z=d};a.prototype.clone=function(){return new a(this.x,this.y,this.z)};a.prototype.apply=function(a){a.az(this)};a.prototype.project=function(a){a.project(this)};return a});
define("a",["fg","fk"],function(a,b){var c=a.extend(b,function(a,c,e){b.call(this,a,c,e)});c.prototype.clone=function(){return new c(this.x,this.y,this.z)};c.prototype.Zb=function(){return 0==this.x&&0==this.z?0:-Math.atan2(this.x,this.z)};c.prototype.dc=function(){return 0==this.y&&0==this.z?0:Math.atan2(this.y,Math.sqrt(this.z*this.z+this.x*this.x))};c.prototype.xY=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)};c.prototype.NF=function(a){a/=this.xY();this.x*=a;this.y*=a;
this.z*=a;return this};c.prototype.normalize=function(){return this.NF(1)};c.prototype.Iv=function(a){return this.x*a.x+this.y*a.y+this.z*a.z};c.prototype.hM=function(a){var b=this.z*a.x-this.x*a.z,e=this.x*a.y-this.y*a.x;this.x=this.y*a.z-this.z*a.y;this.y=b;this.z=e;return this};c.zs=function(a,b){return new c(b.x-a.x,b.y-a.y,b.z-a.z)};c.Gp=function(a,b){return new c(Math.cos(b)*Math.sin(a),Math.sin(b),Math.cos(b)*Math.cos(a))};return c});
define("gH","require,fg,jd,ll,dW,a".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("a"),a=b.extend(c,function(){c.call(this);this.sX=this.wo=m;this.set("enabled",n);this.set("enabledInSurfaceSelection",n)});f.A("AdjacentPanorama",a).B("Object").K({enabled:"bool",enabledInSurfaceSelection:"bool",yaw:"number",distance:"number",panorama:"Panorama",backwardYaw:"number"}).Cf([d.Ii]);a.prototype.Mba=function(){if(this.wo===m){for(this.wo=this.J4()-this.get("yaw");this.wo>180;)this.wo=
this.wo-360;for(;this.wo<-180;)this.wo=this.wo+360}return this.wo};a.prototype.dva=function(){if(this.sX===m)this.sX=e.Gp(this.J4()*Math.PI/180,0);return this.sX};a.prototype.Zta=function(){return this.get("yaw")!==m&&this.get("backwardYaw")!==m};a.prototype.J4=function(){return this.get("backwardYaw")-180};return a});define("fu",[],function(){return{I:"stopped",O:"playing",uc:"paused"}});
define("dY",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("ImageResource",b).B("Object").K({levels:"array[ImageResourceLevel]"});return b});
define("dw","require,fg,ll,fu,dY,dW".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("fu"),f=a("dY"),a=a("dW"),b=b.extend(f,function(){f.call(this);this.set("state",d.I);this.set("autoplay",n);this.set("repeat",0);this.set("visibleOnStop",n);this.set("finalFrame","last")});b.prototype.play=function(){this.set("state",d.O)};b.prototype.pause=function(){this.set("state",d.uc)};b.prototype.stop=function(){this.set("state",d.I)};a.A("AnimatedImageResource",b).B("ImageResource").K({autoplay:"bool",
finalFrame:"enum[first, last]",frameCount:"number",frameDuration:"number",rowCount:"number",colCount:"number",repeat:"number",state:"enum[stopped, playing, paused]",visibleOnStop:"bool"}).Vb([c.Ba,c.rt,c.Ji]).Ag({pause:b.prototype.pause,play:b.prototype.play,stop:b.prototype.stop});b.prototype.set=function(a,b){switch(a){case "state":(this.get("state")||d.I)==d.I&&b==d.O&&this.trigger(c.Ji)}f.prototype.set.call(this,a,b)};b.prototype.Zg=function(a,b,c){b||(b=1);c||(c=1);return f.prototype.Zg.call(this,
a,b*this.get("colCount",1),c*this.get("rowCount",1))};return b});
define("gs",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(a){b.call(this);this.By=a===m?n:a;this.Wx=this.Ol=this.Nl=this.Y=m;this.set("enabled",n);this.set("selected",y)});c.A("HotspotMapOverlay",a).B("MapOverlay").K({areas:"array[HotspotMapOverlayArea]",enabled:"bool",image:"HotspotMapOverlayImage",map:"HotspotMapOverlayMap",rollOverDisplay:"bool",rollOverImage:"HotspotMapOverlayImage",rollOverMap:"HotspotMapOverlayMap",selectedImage:"HotspotMapOverlayImage",selectedMap:"HotspotMapOverlayMap",
selected:"bool",useHandCursor:"bool"});a.prototype.getItem=function(){if(this.Y===m){var a=this.get("image");this.Y=a?a.gM(this.By):r}return this.Y};a.prototype.dca=function(){if(this.Nl===m){var a=this.get("rollOverImage");this.Nl=a?a.gM(this.By):r}return this.Nl};a.prototype.fca=function(){if(this.Ol===m){var a=this.get("selectedImage");this.Ol=a?a.gM(this.By):r}return this.Ol};a.prototype.ova=function(){if(this.Wx===m){this.Wx=[];var a=this.getItem();a&&this.Wx.push(a);(a=this.dca())&&this.Wx.push(a);
(a=this.fca())&&this.Wx.push(a)}return this.Wx};return a});define("dN",["fg","dW","gs"],function(a,b,c){a=a.extend(c,function(){c.call(this,n)});b.A("AreaHotspotMapOverlay",a).B("HotspotMapOverlay");return a});
define("kU",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("gain",1);this.set("fadeOutTime",0)});a.A("AudioResource",b).B("Object").K({fadeOutTime:"number",gain:"number",mp3Url:"string",oggUrl:"string"}).fh(["mp3Url","oggUrl"]);return b});define("ck",[],function(){return{pt:"inAdvance",C_:"delayed"}});
define("R",[],function(){return{tG:"grab",uG:"grabbing",Lfa:"move",p0:"move-n",q0:"move-ne",g0:"move-e",t0:"move-se",s0:"move-s",u0:"move-sw",v0:"move-w",r0:"move-nw",Mfa:"move-ew",Ofa:"move-ns",Nfa:"move-nesw",Pfa:"move-nwse",i0:"move-fast-n",j0:"move-fast-ne",h0:"move-fast-e",m0:"move-fast-se",l0:"move-fast-s",n0:"move-fast-sw",o0:"move-fast-w",k0:"move-fast-nw",me:"hand",dd:"default",lq:"inherit"}});
define("fF",["require","ll"],function(a){function b(){this.gg=[]}var c=a("ll");b.prototype.register=function(a){this.Mga(a);this.gg.push(a);a.get("pressed")&&this.E9(a)};b.prototype.ZF=function(a){this.npa(a)};b.prototype.Mga=function(a){a.bind(c.Bg,this.J6,this,n)};b.prototype.npa=function(a){a.unbind(c.Bg,this.J6,this)};b.prototype.J6=function(a){this.E9(a.source)};b.prototype.E9=function(a){this.gg.forEach(function(b){b.set("pressed",b==a)})};b.register=function(a,b){this.ZF(a);var e=this.Kf(b);
a.zP=e;e.register(a)};b.ZF=function(a){a.zP&&(a.zP.ZF(a),delete a.zP)};b.Kf=function(a){return this.B5[a]||(this.B5[a]=new b)};b.B5={};return b});define("dm",[],function(){return{Wc:"push",Mh:"toggle"}});define("fV",[],function(){return{tt:"visible",Y_:"hidden",vm:"scroll"}});define("fm",[],function(){return{dd:m,u:"over",Ca:"pressed",$a:"pressedOver",G:"selected"}});define("ep",[],function(){return{wc:"rollOver",ALWAYS:"always"}});
define("cJ",["require"],function(){var a={},b;a:{try{if("localStorage"in window&&(window.localStorage.setItem("test","test"),"test"==window.localStorage.getItem("test"))){b=n;break a}}catch(c){}b=y}if(b)a.setItem=function(a,b){window.localStorage.setItem(a,b)},a.getItem=function(a){return window.localStorage.getItem(a)},a.removeItem=function(a){return window.localStorage.removeItem(a)},a.clear=function(){try{window.localStorage.clear()}catch(a){}};else{var d={};a.setItem=function(a,b){d[a]=b};a.getItem=
function(a){return d[a]};a.removeItem=function(a){delete d[a]};a.clear=function(){d={}}}return a});
define("r",["require","fg","jt","cJ"],function(a){function b(){}var c=a("fg"),d=a("jt"),f=a("cJ");b.Qj=TDV.Da.BG;b.s_=TDV.Da.QO;b.jP=TDV.Da.z0;b.nAa=TDV.Da.UO;b.Hfa=TDV.Da.RO;b.Efa=TDV.Da.y0;b.aAa=TDV.Da.TO;b.SO=TDV.Da.SO;b.cA=TDV.Da.cA;b.PN=TDV.Da.PN;b.ON=TDV.Da.ON;b.NN=TDV.Da.NN;b.QN=TDV.Da.QN;b.Df=TDV.Da.Df;b.dG=TDV.Da.dG;b.Ei=TDV.Da.Ei;b.Di=TDV.Da.Di;b.zw=TDV.Da.zw;b.iq=TDV.Da.iq;b.Yz=TDV.Da.Yz;b.Us=TDV.Da.Us;b.MN=TDV.Da.MN;b.bA=TDV.Da.bA;b.Rn=TDV.Da.Rn;b.hG=TDV.Da.hG;b.$z=TDV.Da.$z;b.eG=TDV.Da.eG;
b.Aw=TDV.Da.Aw;b.aA=TDV.Da.aA;b.Vs=TDV.Da.Vs;b.v_=TDV.Da.v_;b.Zz=TDV.Da.Zz;b.Ws=TDV.Da.Ws;b.fG=TDV.Da.fG;b.gG=TDV.Da.gG;b.RN=TDV.Da.RN;b.VN=TDV.Da.VN;b.Bw=TDV.Da.Bw;b.WN=TDV.Da.WN;b.XN=TDV.Da.XN;b.ar=function(a){a="force_"+a;if(d.ag("debug")&&d.ag(a))return d.Fn(a)};b.Aka=b.ar("os");b.Zd=function(){return b.Aka||TDV.Da.Zd};b.vka=b.ar("browser");b.browser=function(){return b.vka||TDV.Da.browser};b.wka=b.ar("browser_type");b.bz=function(){return b.wka||TDV.Da.bz};b.k4=b.ar("browser_subtype");b.Jc=function(){return b.k4?
b.k4:TDV.Da.Jc};b.xka=b.ar("browser_version");b.gba=function(){return b.xka||TDV.Da.gba};b.zka=b.ar("device");b.xs=function(){return b.zka||TDV.Da.xs};b.Xa=function(){return TDV.Da.iZ};b.mka=function(){for(var a=navigator.userAgent.toLowerCase(),b=["SM-G960","SM-G965"],e=0;e<b.length;e++)if(0<=a.indexOf(b[e].toLowerCase()))return n;return y}();b.Fka=function(){for(var a=navigator.userAgent.toLowerCase(),b="SM-G920,SM-G925,SM-G928,SM-N920,SM-G930,SM-G935,SC-02H,SM-G950,SM-G955,SM-N950,SM-G960,SM-G965,SM-N960,SM-G970,SM-G973,SM-G975,SM-G977,SM-N970,SM-N975".split(","),
e=0;e<b.length;e++)if(0<=a.indexOf(b[e].toLowerCase()))return n;return y}();b.l4=b.ar("gearvrcompatible");b.WE=function(){return b.l4!==m?"true"==b.l4:b.Fka};b.tia=b.browser()!=b.Di||0>navigator.userAgent.indexOf("; wv")?y:n;b.yka=!!b.ar("chromewebview");b.pba=function(){return b.yka||b.tia};b.we=function(){return b.Jc()==b.Rn||b.Jc()==b.hG||b.Jc()==b.Ws||b.Jc()==b.Zz};b.XY=function(){return b.cda()||b.twa()};b.twa=function(){return!!(window.location.hash&&0<=window.location.hash.indexOf("device=piconeo3"))};
b.cda=function(){return b.Jc()==b.Rn&&0<=navigator.userAgent.indexOf("Quest 2")};b.bda=function(){return b.Jc()==b.Rn&&0<=navigator.userAgent.indexOf("Quest")&&0>navigator.userAgent.indexOf("Quest 2")};b.lwa=function(){return b.Jc()==b.Rn&&0>navigator.userAgent.indexOf("Quest")};b.UY=function(){return b.we()&&b.WE()};b.fD=m;b.fxa=function(){b.fD===m&&(b.fD=parseInt(d.Fn("sts")),isNaN(b.fD)&&(b.fD=b.we()&&!b.mka?512:b.Xa()&&b.Zd()==b.Qj?512:b.Xa()?256:1024));return b.fD};var e;if(b.browser()==b.Ei||
b.browser()==b.Df)try{e=parseFloat(/Version\/([0-9]+\.[0-9]+)/i.exec(navigator.userAgent)[1])}catch(g){}b.Npa=e;b.CF=function(){return b.Npa};b.ima=function(){var a;try{a=parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||y}catch(e){}a||(a=b.CF());return a}();b.Yv=function(){return b.ima};b.k5=function(){var a={mca:"unknown",ida:1},b=document.createElement("canvas");if(b&&(b=
b.getContext("webgl")||b.getContext("experimental-webgl"))){var e=b.getExtension("WEBGL_debug_renderer_info");e&&(a.mca=b.getParameter(e.UNMASKED_RENDERER_WEBGL));a.Hwa=b.getParameter(b.MAX_TEXTURE_SIZE);if(e=b.getExtension("EXT_texture_filter_anisotropic")||b.getExtension("MOZ_EXT_texture_filter_anisotropic")||b.getExtension("WEBKIT_EXT_texture_filter_anisotropic"))a.ida=b.getParameter(e.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}return a}();b.lca=function(){return b.k5};b.hha=function(){var a=b.k5.mca.match(/Apple\s+(.+)\s+GPU/);
return a?a[1].toUpperCase():"unknown"}();b.AAa=function(){return b.hha};b.Mma=b.xs()==b.Bw?n:y;b.Np=function(){return b.Mma};b.ZX=function(){return b.browser()==b.Ei&&14<=b.CF()};var k=!!f.getItem("tdvp_video_drift_2");b.Bca=function(){return k};b.Oya=function(){k=n;f.setItem("tdvp_video_drift_2",n)};b.Sma="ontouchstart"in window||"undefined"!==typeof window.PointerEvent&&"undefined"!==typeof navigator.maxTouchPoints&&0<navigator.maxTouchPoints?n:y;b.k_=function(){return b.Sma};b.gk=d.ag("touchenabled")?
d.Yg("touchenabled"):"ontouchstart"in window?b.Zd()==b.jP?y:n:y;b.BN=function(){return b.gk};b.summary=function(){return["browser: "+b.browser(),"browserType: "+b.bz(),"browserSubtype: "+b.Jc(),"device: "+b.xs(),"isMobile: "+b.Xa(),"gearVRCompatibleDevice: "+b.WE(),"chromeWebView: "+b.pba(),"touchDevice"+b.k_(),"touchEnabled"+b.BN()].join(", ")};b.log=function(){c.log("browser: "+b.browser());c.log("browserType: "+b.bz());c.log("browserSubtype: "+b.Jc());c.log("device: "+b.xs());c.log("isMobile: "+
b.Xa());c.log("gearVRCompatibleDevice: "+b.WE());c.log("chromeWebView: "+b.pba());c.log("touchDevice: "+b.k_());c.log("touchEnabled: "+b.BN())};return b});
define("jg",["require","r"],function(a){function b(){for(;p.length;)p.shift()();document.body.removeEventListener("click",b,n);document.body.removeEventListener("touchstart",f,n);document.body.removeEventListener("touchmove",d,n);document.body.removeEventListener("touchend",c,n);k=y}function c(){i&&b()}function d(){i=y}function f(){i=n;g.Zd()==g.Qj&&b()}function e(){document.body.addEventListener("click",b,n);document.body.addEventListener("touchstart",f,n);document.body.addEventListener("touchmove",
d,n);document.body.addEventListener("touchend",c,n)}var g=a("r"),k=y,i=y,p=[];return{FN:function(){b()},Vz:function(a){p.push(a);k||(k=n,document.body?e():document.addEventListener("DOMContentLoaded",e))},yBa:function(a){a=p.indexOf(a);0<=a&&p.splice(a,1)}}});define("ge",[],function(){return{Kfa:7,cG:6,c0:5,Sj:4,O0:3,Lw:2,VO:1,Vza:0,Ufa:1,Tfa:2,Sfa:2,Ki:2,iga:3,lga:4}});define("W",[],function(){return{JO:"horizontal",gP:"vertical"}});
define("lC",[],function(){return{d1:"auto",c1:"auto",N0:"1",B0:"2",A0:"auto",cG:"2",z_:"3",y_:"auto",M0:"3",W0:"100",d1:"1",c1:"auto",N0:"1",B0:"2",A0:"auto",cG:"2",z_:"3",y_:"auto",M0:"5",W0:"100",Pza:"101",rfa:999998,mAa:999999,Cfa:1E6}});
define("fe",[],function(){var a=1,b={};return{css:function(c,d){var f=c.__duqid;f===m&&(f=a.toString(),c.__duqid=f,a++);var f=b[f]||(b[f]={e:c,s:{}}),e;for(e in d)f.s[e]=d[e]},hxa:function(){for(var a in b){var d=b[a],f=d.e.style,d=d.s,e;for(e in d)f[e]=d[e]}b={}}}});
define("by",["require"],function(){return{Nva:function(a){return!!a&&0<=a.indexOf("&tdvflipx")},bba:function(a){a&&(0>a.indexOf("#")&&(a+="#"),a+="&tdvflipx");return a},Oua:function(a,b,c){var d=document.createElement("canvas");d.width=b;d.height=c;c=d.getContext("2d");c.translate(b,0);c.scale(-1,1);c.drawImage(a,0,0);a.src=d.toDataURL()}}});
define("gx",["require","r","jt","iN","cJ"],function(a){function b(a,b,e,c,g){this.url=a;this.Sd=b;this.time=e;this.fza=c;this.$ta=g}var c=a("r"),d=a("jt"),f=a("iN"),e=a("cJ");b.prototype.loaded=function(){g.LV(this.url);g.mD(this)};b.prototype.cancel=function(){g.mD(this)};var g={Tr:[],Km:[],RD:[],kX:r,X5:{},add:function(a,e,c,g){a=new b(a,e,(new Date).getTime(),c,g);this.Tr.push(a);this.L();return a},lza:function(a){this.RD.push(a);this.L()},kza:function(a){var b=this.RD,a=b.indexOf(a);0<=a&&b.splice(a,
1);this.L()}};if(c.Jc()==c.Vs)g.q_=R(n),g.LV=C();else if(!d.ag("debug")||!d.Yg("disable-cache")){g.q_=function(a){return this.X5[a]||e.getItem("tdvp_"+a)};var k=y;g.LV=function(a){this.X5[a]=n;try{e.setItem("tdvp_"+a,n)}catch(b){k||(k=n,e.clear())}}}else g.q_=R(y),g.LV=C();g.L=function(){this.kX||(this.kX=f.jw(g.Lsa))};g.Lsa=function(){g.kX=r;for(var a=this.Spa(),b=0,e=this.Km.length;b<e;b++){var c=this.Km[b];0>a.indexOf(c)&&c.$ta()}var f=this.Km;this.Km=a;b=0;for(e=this.Km.length;b<e;b++)c=this.Km[b],
0>f.indexOf(c)&&c.fza()}.bind(g);g.lra=function(){this.Tr.sort(function(a,b){return a.Sd-b.Sd||b.time-a.time});this.RD.sort(function(a,b){return a-b})};g.Spa=function(){this.lra();var a=[];if(this.Tr.length)for(var b=this.RD.length?this.RD[0]:this.Tr[0].Sd,e=0;10>e&&e<this.Tr.length&&this.Tr[e].Sd<=b;e++)a.push(this.Tr[e]);return a};g.mD=function(a){var b=this.Tr,a=b.indexOf(a);0<=a&&b.splice(a,1);this.L()};return g});
define("id","require,fg,bZ,eO,ll,ge,jt,by,gx".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("eO"),f=a("ll"),e=a("ge"),g=a("jt"),k=a("by"),i=a("gx"),a=b.extend(d,function(a){d.call(this);this.iD=a||e.Kfa;this.ha=this.X=this.yb=this.Nd=r;this.tr=y;this.Ay=this.jk=r;this.CK=0;this.XS=[];this.EI=this.EI.bind(this);this.FI=this.FI.bind(this)});a.prototype.load=function(a){this.cancel();this.Nd=a;this.CK=0;this.d9()};a.prototype.d9=function(){this.jk=i.add(this.Nd,this.iD,this.ura.bind(this),this.nia.bind(this))};
a.prototype.cancel=function(){if(this.jk){this.jk.cancel();this.jk=r}this.V2()};a.prototype.qwa=function(){return!!this.yb&&!this.tr||this.Ay};a.prototype.Mp=Q("tr");a.prototype.ve=function(a){if(a){a=this.yb.cloneNode(n);this.XS.push(a);return a}return this.yb};a.prototype.ad=Q("X");a.prototype.Od=Q("ha");a.prototype.Bj=Q("Nd");a.prototype.ura=function(){this.yb=this.pja(this.Nd)};a.prototype.nia=function(){this.qwa()&&this.V2()};a.prototype.V2=function(){if(this.yb){if(this.Ay){clearTimeout(this.Ay);
this.Ay=r}for(this.tr=y;this.XS.length;)this.P3(this.XS.shift());this.P3(this.yb);this.yb=r}};a.prototype.Qga=function(a){a.addEventListener("load",this.EI);a.addEventListener("error",this.FI)};a.prototype.W8=function(a){a.removeEventListener("load",this.EI);a.removeEventListener("error",this.FI)};a.prototype.EI=function(){this.jk.loaded();this.jk=r;this.W8(this.yb);this.tr=n;this.X=this.yb.width;this.ha=this.yb.height;k.Nva(this.Nd)&&k.Oua(this.yb,this.X,this.ha);this.trigger(new c(f.T))};a.prototype.FI=
function(){this.cancel();if(this.CK<l){this.CK++;this.Ay=setTimeout(function(){this.Ay=r;this.d9()}.bind(this),Math.pow(2,this.CK)*1E3)}else this.trigger(new c(f.ne))};a.prototype.pja=function(a){var b;if(j.length>0)b=j.pop();else{b=document.createElement("img");if(g.Vca(a))b.crossOrigin="Anonymous"}b.setAttribute("draggable","false");b.style.position="static";b.style.border="none";b.style.display="none";this.Qga(b);b.src=a;return b};a.prototype.P3=function(a){this.W8(a);a.parentNode&&a.parentNode.removeChild(a);
a.src="";j.length>p&&j.push(a)};var p=100,j=[],l=5;a.f_=function(a){return i.q_(a)};return a});
define("eY","require,do,jquery.mod,ll,ge,W,lC,fe,id".split(","),function(a){function b(){this.fl=this.hl=this.il=this.gl=this.io=this.ho=this.ko=this.jo=0;this.ZG=this.aH=this.bH=this.$G="";this.zb=1;this.Sb=m;this.Rt=[];this.EQ=[];this.BQ=g.gP;this.qH=y;this.BI=m;this.rf=r;this.yS=this.BX=0;this.gb=document.createElement("canvas");this.gb.setAttribute("tdvlayer","background");this.J=d(this.gb);i.css(this.gb,{position:"absolute",left:0,top:0,"z-index":k.cG,"user-select":"none","-ms-user-select":"none",
"-moz-user-select":"none","-webkit-user-select":"none"});this.re=n}var c=a("do"),d=a("jquery.mod"),f=a("ll"),e=a("ge"),g=a("W"),k=a("lC"),i=a("fe"),p=a("id");b.prototype.setSize=function(a,b){if(this.BX!=a||this.yS!=b){this.BX=a||0;this.yS=b||0;this.re=n}};b.prototype.rea=function(a){if(this.ql!=a){this.ql=a;this.re=n}};b.prototype.Cb=Q("J");b.prototype.aF=Q("gb");b.prototype.eya=function(a){if(this.BI!=a){if(this.rf){this.rf.unbind(f.T,this.DB,this);this.rf.cancel();this.rf=r}if(this.BI=a){this.rf=
new p(e.O0);this.rf.bind(f.T,this.DB,this);this.rf.load(this.BI)}this.re=n}};b.prototype.IZ=function(a){if(this.jo!=a){this.jo=a;this.re=n}};b.prototype.JZ=function(a){if(this.ko!=a){this.ko=a;this.re=n}};b.prototype.DZ=function(a){if(this.ho!=a){this.ho=a;this.re=n}};b.prototype.EZ=function(a){if(this.io!=a){this.io=a;this.re=n}};b.prototype.GZ=function(a){if(this.gl!=a){this.gl=a;this.re=n}};b.prototype.KZ=function(a){if(this.il!=a){this.il=a;this.re=n}};b.prototype.HZ=function(a){if(this.hl!=a){this.hl=
a;this.re=n}};b.prototype.FZ=function(a){if(this.fl!=a){this.fl=a;this.re=n}};b.prototype.Jxa=function(a){if(this.$G!=a){this.$G=a;this.re=n}};b.prototype.Lxa=function(a){if(this.bH!=a){this.bH=a;this.re=n}};b.prototype.Kxa=function(a){if(this.aH!=a){this.aH=a;this.re=n}};b.prototype.Ixa=function(a){if(this.ZG!=a){this.ZG=a;this.re=n}};b.prototype.Hj=function(a){if(this.zb!=a){this.zb=a;this.re=n}};b.prototype.Fh=Q("zb");b.prototype.Nz=function(a){if(!c.isEqual(this.Sb,a)){this.Sb=a;c(a).isArray()||
(a=[a]);a=c(a).filter(function(a){return c(a).isString()});this.jea(a)}};b.prototype.jea=function(a){if(!c.isEqual(this.Rt,a)){this.Rt=a;this.re=n}};b.prototype.Pxa=function(a){if(this.tAa!=a){this.EQ=a;this.re=n}};b.prototype.Oxa=function(a){if(this.BQ!=a){this.BQ=a;this.re=n}};b.prototype.DB=function(){this.re=n;this.Re()};b.prototype.Re=function(){if(this.re){this.L();this.re=y}};b.prototype.L=function(){var a=Math.max(0,this.BX-(this.gl+this.hl)),b=Math.max(0,this.yS-(this.il+this.fl)),e=this.J.get(0);
e.width=a;e.height=b;var e=e.getContext("2d"),i=this.iia(),f=i.length>0,d=this.rf&&this.rf.Mp(),k=this.gl>0&&this.$G||this.il>0&&this.bH||this.hl>0&&this.aH||this.fl>0&&this.ZG,k=f||d||k;if(f){var p;p=this.BQ==g.JO?e.createLinearGradient(0,0,a,0):e.createLinearGradient(0,0,0,b);c(i).forEach(function(a){p.addColorStop(a.ratio,a.color)});e.fillStyle=p;e.fillRect(0,0,a,b);this.qH=n}else if(this.qH){e.clearRect(0,0,a,b);this.qH=y}if(d){e.drawImage(this.rf.ve(),0,0,a,b);this.qH=n}this.gb.style.opacity=
this.zb;this.gb.style.filter="alpha(opacity="+Math.round(this.zb*100)+")";this.gb.style["-ms-filter"]="alpha(opacity="+Math.round(this.zb*100)+")";this.gb.style.borderTopLeftRadius=this.jo+"px";this.gb.style.borderTopRightRadius=this.ko+"px";this.gb.style.borderBottomLeftRadius=this.ho+"px";this.gb.style.borderBottomRightRadius=this.io+"px";this.gb.style.borderLeft=this.kI(this.gl,this.$G);this.gb.style.borderTop=this.kI(this.il,this.bH);this.gb.style.borderRight=this.kI(this.hl,this.aH);this.gb.style.borderBottom=
this.kI(this.fl,this.ZG);this.gb.style.width=a+"px";this.gb.style.height=b+"px";this.gb.style.cursor="inherit";this.gb.style.display=k?"block":"none";if(this.gb.clientWidth===0&&a!==0){this.gb.style.width=0;this.gb.style.width=a+"px"}};b.prototype.kI=function(a,b){return a>0?b?a+"px solid "+b:a+"px solid transparent":"none"};b.prototype.iia=function(){var a=[];if(this.Rt.length>0){for(var b=this.Rt.slice(),b=[].concat([b[0]],b,[b[b.length-1]]),e=this.hia(),e=[].concat([0],e,[1]),c=0;c<b.length;c++){var g=
e[c];g>=0&&a.push({color:b[c],ratio:g})}for(c=0;c<a.length-1;)a[c].ratio==a[c+1].ratio&&a[c].color==a[c+1].color?a.splice(c,1):c++;for(c=1;c<a.length-1;)a[c-1].ratio==a[c+1].ratio?a.splice(c,1):c++}return a};b.prototype.hia=function(){var a=this.Rt.length,b;for(b=this.EQ.length>0?c(this.EQ).map(function(a){return Math.min(1,Math.max(0,a))}):a==1?[0.5]:c(c.range(a)).map(function(b,e){return 1*e/(a-1)});b.length<a;)b.push(1);b.length>a&&b.splice(a,b.length-a);return b};return b});
define("dH",["jquery.mod","lC","fe"],function(a,b,c){function d(){this.QJ=this.SJ=this.TJ=this.RJ=this.fl=this.hl=this.il=this.gl=0;this.SC=this.ql=n;this.wX=this.PS=0;this.Z=n;this.uD=document.createElement("div");this.uD.setAttribute("tdvlayer","content");this.q9=a(this.uD);c.css(this.uD,{position:"absolute"});this.SA=document.createElement("div");this.q3=a(this.SA);c.css(this.SA,{position:"absolute"});this.q9.append(this.q3)}d.prototype.append=function(a){this.q3.append(a)};d.prototype.QX=function(a){this.SA.appendChild(a)};
d.prototype.rxa=function(a){this.SA.removeChild(a)};d.prototype.Cb=Q("q9");d.prototype.aF=Q("uD");d.prototype.bya=function(a){this.PS!=a&&(this.PS=a,this.Z=n)};d.prototype.Zya=function(a){this.wX!=a&&(this.wX=a,this.Z=n)};d.prototype.qz=function(){return this.RJ+this.gl};d.prototype.tz=function(){return this.TJ+this.il};d.prototype.sz=function(){return this.SJ+this.hl};d.prototype.mz=function(){return this.QJ+this.fl};d.prototype.Pz=function(a){this.SC!=a&&(this.SC=a,this.Z=n)};d.prototype.Dya=function(a){this.RJ!=
a&&(this.RJ=a,this.Z=n)};d.prototype.Fya=function(a){this.TJ!=a&&(this.TJ=a,this.Z=n)};d.prototype.Eya=function(a){this.SJ!=a&&(this.SJ=a,this.Z=n)};d.prototype.Cya=function(a){this.QJ!=a&&(this.QJ=a,this.Z=n)};d.prototype.GZ=function(a){this.gl!=a&&(this.gl=a,this.Z=n)};d.prototype.KZ=function(a){this.il!=a&&(this.il=a,this.Z=n)};d.prototype.HZ=function(a){this.hl!=a&&(this.hl=a,this.Z=n)};d.prototype.FZ=function(a){this.fl!=a&&(this.fl=a,this.Z=n)};d.prototype.rea=function(a){this.ql!=a&&(this.ql=
a,this.Z=n)};d.prototype.Re=function(){this.Z&&(this.L(),this.Z=y)};d.prototype.L=function(){c.css(this.uD,{overflow:this.SC?"visible":"hidden","z-index":this.ql?b.z_:b.y_,left:this.qz()+"px",top:this.tz()+"px",right:this.sz()+"px",bottom:this.mz()+"px",cursor:"inherit"});c.css(this.SA,{left:-this.PS+"px",top:-this.wX+"px",right:this.SC?0:"initial",bottom:this.SC?0:"initial",cursor:"inherit"})};return d});
define("hF",["do","jquery.mod","fg","lC","fe"],function(a,b,c,d,f){function e(){this.ha=this.X=this.fa=this.da=m;this.io=this.ho=this.ko=this.jo=0;this.Ic=y;this.OS=0;this.vX=4;this.dQ=6;this.cW=0;this.Sb="#000000";this.zb=1;this.gb=document.createElement("div");this.gb.setAttribute("tdvlayer","shadow");this.J=b(this.gb);f.css(this.gb,{position:"absolute",left:0,top:0,right:0,bottom:"0"});this.Z=y}e.prototype.Cb=Q("J");e.prototype.aF=Q("gb");e.prototype.IZ=function(a){this.jo!=a&&(this.jo=a,this.Z=
n)};e.prototype.JZ=function(a){this.ko!=a&&(this.ko=a,this.Z=n)};e.prototype.DZ=function(a){this.ho!=a&&(this.ho=a,this.Z=n)};e.prototype.EZ=function(a){this.io!=a&&(this.io=a,this.Z=n)};e.prototype.Hj=function(a){this.zb!=a&&(this.zb=a,this.Z=n)};e.prototype.Fh=Q("zb");e.prototype.xe=function(a){this.Ic!=a&&(this.Ic=a,this.Z=n)};e.prototype.aya=function(a){this.OS!=a&&(this.OS=a,this.Z=n)};e.prototype.Yya=function(a){this.vX!=a&&(this.vX=a,this.Z=n)};e.prototype.Hxa=function(a){this.dQ!=a&&(this.dQ=
a,this.Z=n)};e.prototype.Pya=function(a){this.cW!=a&&(this.cW=a,this.Z=n)};e.prototype.Nz=function(a){this.Sb!=a&&(this.Sb=a,this.Z=n)};e.prototype.Re=function(){this.Z&&(this.L(),this.Z=y)};e.prototype.L=function(){var a=this.OS+"px "+this.vX+"px "+this.dQ+"px "+this.cW+"px "+this.Sb;this.gb.style.display=this.Ic?"block":"none";this.gb.style.boxShadow=a;this.gb.style["-webkit-box-shadow"]=a;this.gb.style["-moz-box-shadow"]=a;this.gb.style.borderTopLeftRadius=this.jo+"px";this.gb.style.borderTopRightRadius=
this.ko+"px";this.gb.style.borderBottomLeftRadius=this.ho+"px";this.gb.style.borderBottomRightRadius=this.io+"px";this.gb.style.filter="alpha(opacity="+Math.round(100*this.zb)+")";this.gb.style["-ms-filter"]="alpha(opacity="+Math.round(100*this.zb)+")";this.gb.style.opacity=this.zb;this.gb.style.zIndex=d.N0};return e});
define("kc","require,jquery.mod,do,fg,jd,R,ll,eY,dH,hF,lC,bZ,fe,r".split(","),function(a){var b=a("jquery.mod");a("do");var c=a("fg"),d=a("jd"),f=a("R"),e=a("ll"),g=a("eY"),k=a("dH"),i=a("hF"),p=a("lC"),j=a("bZ"),l=a("fe");a("r");var q=c.extend(d,function(){d.call(this);this.jr=q.jr++;this.KQ=this.Ad=this.tU=this.RC=this.WV=this.J=this.gb=r;this.gaa=this.F5=y;this.Q=this.ra=r;this.ha=this.X=this.Cu=this.Bu=0;this.pr=this.Ic=y;this.x5=n;this.aC=this.bC=this.Zh=this.$h=0;this.zb=1;this.of=f.dd;this.set("inView",
y);this.set("toolTip",m);this.fv(n);this.NV(n)});q.prototype.Uc=P("jx");q.prototype.toString=function(){return"["+this.J.attr("tdvclass")+"::"+this.jr+"]"};q.prototype.log=function(a){c.log(a+" "+this.toString()+" "+(new Date).getTime().toString())};q.prototype.Ra=Q("ra");q.prototype.Zm=function(a){(this.ra=a)&&this.ZS();this.Ty();this.trigger(e.dfa)};q.prototype.Cb=function(){this.J=b(this.Co());this.Cb=Q("J");return this.J};q.prototype.Co=function(){this.gb=document.createElement("div");this.gb.setAttribute("id",
this.jr);this.jx&&this.gb.setAttribute("tdvclass",this.jx);l.css(this.gb,{margin:0,padding:0,position:"absolute",overflow:"visible",display:"block"});this.Co=Q("gb");return this.gb};q.prototype.Sh=function(){this.WV=new i;this.Sh=Q("WV");return this.WV};q.prototype.Gb=function(){this.Ad=new g;this.Gb=Q("Ad");return this.Ad};q.prototype.Jx=function(){this.RC=document.createElement("div");this.RC.setAttribute("tdvlayer","overShadow");l.css(this.RC,{position:"absolute",left:0,top:0,cursor:"inherit"});
this.Jx=Q("RC");return this.RC};q.prototype.pS=function(){this.tU=b(this.Jx());this.pS=Q("tU");return this.tU};q.prototype.Pa=function(){this.KQ=new k;this.Pa=Q("KQ");return this.KQ};q.prototype.getParent=Q("Q");q.prototype.Aa=Q("X");q.prototype.eb=Q("ha");q.prototype.Lva=function(){return this.X!==m&&this.ha!==m};q.prototype.Hd=function(){return this.X-this.Pa().qz()-this.Pa().sz()};q.prototype.Gd=function(){return this.ha-this.Pa().tz()-this.Pa().mz()};q.prototype.ti=function(){return this.Pa().qz()};
q.prototype.yn=function(){return this.Pa().tz()};q.prototype.xn=function(){return this.Pa().sz()};q.prototype.oz=function(){return this.Pa().mz()};q.prototype.xe=function(a){if(this.Ic!=a){this.Ic=a;this.Dc();if(this.Q){this.Q.Wa();this.Q.Lc()}this.Ty()}};q.prototype.Ty=function(){var a=y;this.ra&&this.Ic&&this.Fh()>0&&(this==this.ra?a=n:this.Q&&(a=this.Q.pr));this.pr!=a&&this.RP(a)};q.prototype.RP=function(a){this.pr=a;this.set("inView",a);this.pr?this.trigger(new j(e.od)):this.trigger(new j(e.zd))};
q.prototype.Fqa=function(a){if(this.x5!=a){this.x5=a;this.Q&&this.Q.Lc()}};q.prototype.zqa=function(a){if(this.Ex!=a){this.Ex=a;this.Wa()}};q.prototype.yqa=function(a){if(this.Dx!=a){this.Dx=a;this.Wa()}};q.prototype.xqa=function(a){if(this.Cx!=a){this.Cx=a;this.Wa()}};q.prototype.wqa=function(a){if(this.Bx!=a){this.Bx=a;this.Wa()}};q.prototype.Aqa=function(a){if(this.Vi!=a){this.Vi=a;if(this.Vi!=m)this.jj=m;this.Wa()}};q.prototype.vqa=function(a){if(this.au!=a){this.au=a;if(this.au!=m)this.ij=m;
this.Wa()}};q.prototype.Qqa=function(a){if(this.jj!=a){this.jj=a;if(this.jj!=m)this.Vi=m;this.Wa()}};q.prototype.Mqa=function(a){if(this.ij!=a){this.ij=a;if(this.ij!=m)this.au=m;this.Wa()}};q.prototype.Hqa=function(a){if(this.Oo!=a){if(a!=m)this.eK=m;this.Oo=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.cra=function(a){if(this.vp!=a){if(a!=m)this.gK=m;this.vp=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.Sqa=function(a){if(this.qD!=a){if(a!=m)this.fK=m;this.qD=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.nqa=
function(a){if(this.HA!=a){if(a!=m)this.dK=m;this.HA=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.Nqa=function(a){if(this.eK!=a){if(a!=m)this.Oo=m;this.eK=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.Pqa=function(a){if(this.gK!=a){if(a!=m)this.vp=m;this.gK=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.Oqa=function(a){if(this.fK!=a){if(a!=m)this.qD=m;this.fK=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.Lqa=function(a){if(this.dK!=a){if(a!=m)this.HA=m;this.dK=a;this.Q&&this.Q.Lc();this.Wa()}};q.prototype.qqa=
function(a){if(this.Gq!=a){this.Gq=a;this.Q&&this.Q.Lc()}};q.prototype.rqa=function(a){if(this.Hq!=a){this.Hq=a;this.Q&&this.Q.Lc()}};q.prototype.Dn=function(){return isNaN(this.Vi)?this.$h:this.Vi};q.prototype.Cn=function(){return isNaN(this.au)?this.Zh:this.au};q.prototype.yla=function(){return isNaN(this.jka)?this.g6:this.jka};q.prototype.An=function(){return isNaN(this.Ex)?this.bC:this.Ex};q.prototype.Jp=function(){return isNaN(this.Dx)?this.aC:this.Dx};q.prototype.BM=function(){return isNaN(this.Cx)?
1E4:this.Cx};q.prototype.AM=function(){return isNaN(this.Bx)?1E4:this.Bx};q.prototype.S9=function(a){if(this.sS()!=a){this.Pa().Dya(a);this.Wa()}};q.prototype.sS=function(){return this.Pa().RJ};q.prototype.U9=function(a){if(this.uS()!=a){this.Pa().Fya(a);this.Wa()}};q.prototype.uS=function(){return this.Pa().TJ};q.prototype.T9=function(a){if(this.tS()!=a){this.Pa().Eya(a);this.Wa()}};q.prototype.tS=function(){return this.Pa().SJ};q.prototype.R9=function(a){if(this.rS()!=a){this.Pa().Cya(a);this.Wa()}};
q.prototype.rS=function(){return this.Pa().QJ};q.prototype.OF=function(a){if(this.Bu!=a){this.Bu=a;this.Gh()}};q.prototype.PF=function(a){if(this.Cu!=a){this.Cu=a;this.Gh()}};q.prototype.Hj=function(a){if(this.zb!=a){this.zb=a;l.css(this.Jx(),{filter:"alpha(opacity="+Math.round(this.zb*100)+") ",opacity:this.zb});this.Ty();this.Gh()}};q.prototype.Fh=Q("zb");q.prototype.kqa=function(a){if(this.Gb().jo!=a){this.Sh().IZ(a);this.Gb().IZ(a)}};q.prototype.Pka=function(){return this.Gb().jo};q.prototype.lqa=
function(a){if(this.Gb().ko!=a){this.Sh().JZ(a);this.Gb().JZ(a)}};q.prototype.Qka=function(){return this.Gb().ko};q.prototype.cqa=function(a){if(this.Gb().ho!=a){this.Sh().DZ(a);this.Gb().DZ(a)}};q.prototype.Nka=function(){return this.Gb().ho};q.prototype.dqa=function(a){if(this.Gb().io!=a){this.Sh().EZ(a);this.Gb().EZ(a)}};q.prototype.Oka=function(){return this.Gb().io};q.prototype.gqa=function(a){if(this.Gb().gl!=a){this.Gb().GZ(a);this.Pa().GZ(a);this.Wa()}};q.prototype.z4=function(){return this.Gb().gl};
q.prototype.mqa=function(a){if(this.Gb().il!=a){this.Gb().KZ(a);this.Pa().KZ(a);this.Wa()}};q.prototype.B4=function(){return this.Gb().il};q.prototype.iqa=function(a){if(this.Gb().hl!=a){this.Gb().HZ(a);this.Pa().HZ(a);this.Wa()}};q.prototype.A4=function(){return this.Gb().hl};q.prototype.eqa=function(a){if(this.Gb().fl!=a){this.Gb().FZ(a);this.Pa().FZ(a);this.Wa()}};q.prototype.y4=function(){return this.Gb().fl};q.prototype.fqa=function(a){this.Gb().Jxa(a)};q.prototype.jqa=function(a){this.Gb().Lxa(a)};
q.prototype.hqa=function(a){this.Gb().Kxa(a)};q.prototype.bqa=function(a){this.Gb().Ixa(a)};q.prototype.WK=function(a){this.Sh().xe(a)};q.prototype.Yqa=function(a){this.Sh().aya(a)};q.prototype.ara=function(a){this.Sh().Yya(a)};q.prototype.Wqa=function(a){this.Sh().Hxa(a)};q.prototype.$qa=function(a){this.Sh().Pya(a)};q.prototype.Zqa=function(a){this.Sh().Hj(a)};q.prototype.Xqa=function(a){this.Sh().Nz(a)};q.prototype.Zpa=function(a){this.Lka()!=a&&this.Gb().Hj(a)};q.prototype.Lka=function(){return this.Gb().Fh()};
q.prototype.Vpa=function(a){this.Kka()!=a&&this.Gb().Nz(a)};q.prototype.Kka=function(){return this.Gb().Sb};q.prototype.Xpa=function(a){this.Gb().Pxa(a)};q.prototype.Wpa=function(a){this.Gb().Oxa(a)};q.prototype.Ypa=function(a){this.Gb().eya(a)};q.prototype.cs=function(a){if(this.of!=a){this.of=a;this.Gh()}};q.prototype.fv=function(a){if(this.ql!=a){this.ql=a;l.css(this.Jx(),{"z-index":this.ql?p.B0:p.A0});this.Pa().rea(this.ql);this.Gh()}};q.prototype.NV=function(a){if(this.o8!=a){this.o8=a;l.css(this.Co(),
{"z-index":this.o8?p.d1:p.c1});this.Gh()}};q.prototype.al=function(){this.Ty();this.hF()};q.prototype.nj=function(){this.Ty()};q.prototype.nV=C();q.prototype.ZS=function(){this.hF();this.Dc();this.Wa();this.Lc();this.Gh()};q.prototype.To=function(){this.aC=this.bC=this.Zh=this.$h=0;this.g6=m};q.prototype.hF=function(){var a=this.Ra();a&&a.Ww.hF(this)};q.prototype.Dc=function(){var a=this.Ra();a&&a.Ww.Dc(this)};q.prototype.Wa=function(){var a=this.Ra();a&&a.Ww.Wa(this)};q.prototype.Lc=function(){var a=
this.Ra();a&&a.Ww.Lc(this)};q.prototype.Gh=function(){var a=this.Ra();a&&a.Ww.Gh(this)};q.prototype.DS=function(){var a=isNaN(this.eK)&&isNaN(this.Oo),b=isNaN(this.fK)&&isNaN(this.qD);return isNaN(this.Vi)&&isNaN(this.jj)&&(a||b)?n:y};q.prototype.l5=function(){var a=isNaN(this.gK)&&isNaN(this.vp),b=isNaN(this.dK)&&isNaN(this.HA);return isNaN(this.au)&&isNaN(this.ij)&&(a||b)?n:y};q.prototype.cta=function(){this.To();var a=this.yla();if(a){var b=this.DS(),e=this.l5();if(b&&!e){b=this.Gd();if(b!=0){this.$h=
b*a+this.ti()+this.xn();this.Zh=b+this.yn()+this.oz()}}else if(!b&&e){b=this.Hd();if(b!=0){this.Zh=b/a+this.ti()+this.xn();this.$h=b+this.ti()+this.xn()}}}if(!isNaN(this.Ex)&&this.$h<this.Ex)this.$h=this.Ex;if(!isNaN(this.Cx)&&this.$h>this.Cx)this.$h=this.Cx;if(!isNaN(this.Dx)&&this.Zh<this.Dx)this.Zh=this.Dx;if(!isNaN(this.Bx)&&this.Zh>this.Bx)this.Zh=this.Bx};q.prototype.Fa=function(){if(!this.gaa){this.gaa=n;var a=this.Co(),b=this.Jx();a.appendChild(this.Sh().aF());a.appendChild(b);b.appendChild(this.Gb().aF());
b.appendChild(this.Pa().aF())}};q.prototype.Cza=function(){this.cta();var a=this.Dn(),b=this.Cn(),e=this.An(),c=this.Jp();if(a!=this.ona||b!=this.nna||e!=this.kna||c!=this.jna||this.jj!=this.mna||this.ij!=this.lna){this.ona=a;this.nna=b;this.kna=e;this.jna=c;this.mna=this.jj;this.lna=this.ij;return n}return y};q.prototype.ja=function(){this.Gh()};q.prototype.Bi=C();q.prototype.iea=function(a,b,c,i){if(this.da!=a||this.fa!=b||this.X!=c||this.ha!=i){this.da=a;this.fa=b;this.X=c;this.ha=i;this.Gb().setSize(this.X,
this.ha);this.Lc();this.Gh();this.trigger(new j(e.vb))}};q.prototype.Re=function(){var a=this.Co(),b=this.Jx();if(this.Ic){b.style.width=this.X+"px";b.style.height=this.ha+"px";a.style.left=this.da+this.Bu+"px";a.style.top=this.fa+this.Cu+"px";a.style.width=this.X+"px";a.style.height=this.ha+"px";a.style.visibility="inherit";a.style.overflow="visible";a.style.cursor=this.ra&&this.ra.iR.Jba(this.of);if(b.clientWidth===0&&this.X!==0){a.style.width=0;a.style.width=this.X+"px"}}else{a.style.visibility=
"hidden";a.style.width=0;a.style.height=0;a.style.overflow="hidden";b.style.width=0;b.style.height=0}this.Sh().Re();this.Gb().Re();this.Pa().Re();if(!this.F5&&this.ra){this.F5=n;this.ra.p$?this.$S():this.ra.bind(e.Ji,this.$S,this,n)}};q.prototype.$S=function(){this.trigger(e.INIT)};q.prototype.Ava=function(a){var a=a.Cb().offset(),b=this.Cb().offset(),e={};e.left=b.left-a.left;e.top=b.top-a.top;if(this.ra){e.left=e.left/this.ra.iy;e.top=e.top/this.ra.iy}return e};q.jr=0;return q});
define("J","require,do,fg,ll,bZ,fm,kc".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("fm"),g=a("kc"),k=c.extend(g,function(){this.V={};this.ip=this.m4=m;this.Sr={};this.i4=n;this.q$={};g.call(this);this.Hja();this.za();this.Uc("UICustomizable");this.Dc()});k.nb={visible:n,includeInLayout:n,state:m,left:m,right:m,top:m,bottom:m,centerX:m,centerY:m,width:m,height:m,minWidth:m,minHeight:m,maxWidth:m,maxHeight:m,actualWidth:m,actualHeight:m,paddingLeft:0,paddingTop:0,paddingRight:0,
paddingBottom:0,opacity:1,borderRadius:0,borderTopRadius:m,borderBottomRadius:m,borderLeftRadius:m,borderRightRadius:m,borderTopLeftRadius:m,borderTopRightRadius:m,borderBottomLeftRadius:m,borderBottomRightRadius:m,borderSize:0,borderLeftSize:m,borderTopSize:m,borderRightSize:m,borderBottomSize:m,borderColor:m,borderLeftColor:m,borderTopColor:m,borderRightColor:m,borderBottomColor:m,shadow:y,shadowHorizontalLength:0,shadowVerticalLength:3,shadowBlurRadius:6,shadowSpread:0,shadowColor:"#000000",shadowOpacity:m,
backgroundOpacity:1,backgroundColor:m,backgroundColorRatios:m,backgroundColorDirection:m,backgroundImageUrl:m,hideEffect:m,showEffect:m};k.prototype.Hja=function(){this.q$[e.$a]=e.Ca};k.prototype.za=function(){this.$j(k.nb)};k.prototype.$j=function(a){for(var b in a){var e=a[b],c=e&&e.length;!c||typeof e=="string"?this.f(b,e):c==1?this.f(b,e[0]):c==2?this.h(b,e[0],e[1]):c==3&&this.h(b,e[0],e[1],e[2])}};k.prototype.f=function(a,b){this.V[a]={i:n,d:b}};k.prototype.Ela=function(){var a=[],b;for(b in this.V)a.push(b);
return a};k.prototype.h=function(a,b,e,c){this.Sr[b]||(this.Sr[b]={});this.f(a,c);this.Sr[b][e]=a};k.prototype.Gy=function(a,b){if(b)this.m4=a;else if(this.m4!=m)return;if(this.ip!=a){var e=this.Sr[this.ip];if(e)for(var c in e)(this.V[c]||(this.V[c]={})).i=n;this.ip=a;if(e=this.Sr[this.ip])for(c in e)(this.V[c]||(this.V[c]={})).i=n;this.Dc()}};k.prototype.M=function(a){if(b(a).isString())this.set(a,m);else{var e=a;for(a in e)this.set(a,e[a])}};k.prototype.set=function(a,e){var c=this.V[a];if(c){e==
m&&(e=c.d);if(!b.isEqual(this.get(a),e)){a=="state"&&this.Gy(e,n);g.prototype.set.call(this,a,e);c.i=n;this.Dc()}}else g.prototype.set.call(this,a,e)};k.prototype.get=function(a,b){switch(a){case "actualWidth":return this.Aa();case "actualHeight":return this.eb();default:var e=g.prototype.get.call(this,a);if(e===m){var c=this.V[a];c&&(e=c.d);e===m&&(e=b)}return e}};k.prototype.f2=function(){for(var a=["paddingLeft","paddingTop","paddingRight","paddingBottom","borderRadius","borderTopRadius","borderBottomRadius",
"borderLeftRadius","borderRightRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderSize","borderLeftSize","borderTopSize","borderRightSize","borderBottomSize"],b=0;b<a.length;b++)if(this.n(a[b]))return n;return y};k.prototype.n=function(a){if((this.V[a]||{}).i)return n;if(this.ip!==m){a=this.Sr[this.ip][a];return!!(this.V[a]||{}).i}};k.prototype.gv=function(a){(this.V[a]||(this.V[a]={})).i=n;this.Dc()};k.prototype.q=function(a){(this.V[a]||
(this.V[a]={})).i=y;if(this.ip!=m)(a=this.Sr[this.ip][a])&&((this.V[a]||(this.V[a]={})).i=y)};k.prototype.k=function(){for(var a,b=0;b<arguments.length;b++){for(var e=arguments[b],c=this.ip;c;){if(a=this.Sr[c][e]){a=this.get(a);if(a!=m&&a!=r)return a}c=this.q$[c]}a=this.get(e);if(a!=m&&a!=r)return a}};k.prototype.XV=function(a){a.source.unbind(d.Ba,this.XV,this);this.trigger(new f(d.Mw))};k.prototype.LS=function(a){a.source.unbind(d.Ba,this.LS,this);this.trigger(new f(d.ot))};k.prototype.ja=function(){if(this.i4)this.i4=
y;else if(this.n("visible")){var a=this.k("visible"),b=this.get(a?"hideEffect":"showEffect");if(b&&b.Az(this)){b.unbind(d.Ba,a?this.LS:this.XV,this);b.end()}if(b=this.get(a?"showEffect":"hideEffect")){if(!b.Az(this)){this.q("visible");b.bind(d.Ba,a?this.XV:this.LS,this);b.play(this)}}else this.trigger(new f(a?d.Mw:d.ot))}if(this.n("visible")){this.xe(this.k("visible"));this.q("visible")}if(this.n("includeInLayout")){this.Fqa(this.k("includeInLayout"));this.q("includeInLayout")}if(this.n("left")){b=
this.k("left");a=k.Lk(b);b=a===m?b:m;this.Nqa(a);this.Hqa(b);this.q("left")}if(this.n("top")){b=this.k("top");a=k.Lk(b);b=a===m?b:m;this.Pqa(a);this.cra(b);this.q("top")}if(this.n("right")){b=this.k("right");a=k.Lk(b);b=a===m?b:m;this.Oqa(a);this.Sqa(b);this.q("right")}if(this.n("bottom")){b=this.k("bottom");a=k.Lk(b);b=a===m?b:m;this.Lqa(a);this.nqa(b);this.q("bottom")}if(this.n("centerX")){this.qqa(this.k("centerX"));this.q("centerX")}if(this.n("centerY")){this.rqa(this.k("centerY"));this.q("centerY")}if(this.n("width")){b=
this.k("width");a=k.Lk(b);b=a===m?b:m;this.Qqa(a);this.Aqa(b);this.q("width")}if(this.n("height")){b=this.k("height");a=k.Lk(b);b=a===m?b:m;this.Mqa(a);this.vqa(b);this.q("height")}if(this.n("minWidth")){b=this.k("minWidth");this.zqa(b);this.q("minWidth")}if(this.n("minHeight")){b=this.k("minHeight");this.yqa(b);this.q("minHeight")}if(this.n("maxWidth")){b=this.k("maxWidth");this.xqa(b);this.q("maxWidth")}if(this.n("maxHeight")){b=this.k("maxHeight");this.wqa(b);this.q("maxHeight")}if(this.n("paddingLeft")){this.S9(this.k("paddingLeft"));
this.q("paddingLeft")}if(this.n("paddingTop")){this.U9(this.k("paddingTop"));this.q("paddingTop")}if(this.n("paddingRight")){this.T9(this.k("paddingRight"));this.q("paddingRight")}if(this.n("paddingBottom")){this.R9(this.k("paddingBottom"));this.q("paddingBottom")}a=y;if(this.n("borderRadius")){this.q("borderRadius");a=n}b=y;if(this.n("borderLeftRadius")){this.q("borderLeftRadius");b=n}var e=y;if(this.n("borderTopRadius")){this.q("borderTopRadius");e=n}var c=y;if(this.n("borderRightRadius")){this.q("borderRightRadius");
c=n}var q=y;if(this.n("borderBottomRadius")){this.q("borderBottomRadius");q=n}if(this.n("borderTopLeftRadius")||e||b||a){this.kqa(this.k("borderTopLeftRadius","borderLeftRadius","borderTopRadius","borderRadius"));this.q("borderTopLeftRadius")}if(this.n("borderTopRightRadius")||e||c||a){this.lqa(this.k("borderTopRightRadius","borderRightRadius","borderTopRadius","borderRadius"));this.q("borderTopRightRadius")}if(this.n("borderBottomLeftRadius")||q||b||a){this.cqa(this.k("borderBottomLeftRadius","borderLeftRadius",
"borderBottomRadius","borderRadius"));this.q("borderBottomLeftRadius")}if(this.n("borderBottomRightRadius")||q||c||a){this.dqa(this.k("borderBottomRightRadius","borderRightRadius","borderBottomRadius","borderRadius"));this.q("borderBottomRightRadius")}a=y;if(this.n("borderSize")){this.q("borderSize");a=n}if(this.n("borderLeftSize")||a){this.gqa(this.k("borderLeftSize","borderSize"));this.q("borderLeftSize")}if(this.n("borderTopSize")||a){this.mqa(this.k("borderTopSize","borderSize"));this.q("borderTopSize")}if(this.n("borderRightSize")||
a){this.iqa(this.k("borderRightSize","borderSize"));this.q("borderRightSize")}if(this.n("borderBottomSize")||a){this.eqa(this.k("borderBottomSize","borderSize"));this.q("borderBottomSize")}a=y;if(this.n("borderColor")){this.q("borderColor");a=n}if(this.n("borderLeftColor")||a){this.fqa(this.k("borderLeftColor","borderColor"));this.q("borderLeftColor")}if(this.n("borderTopColor")||a){this.jqa(this.k("borderTopColor","borderColor"));this.q("borderTopColor")}if(this.n("borderRightColor")||a){this.hqa(this.k("borderRightColor",
"borderColor"));this.q("borderRightColor")}if(this.n("borderBottomColor")||a){this.bqa(this.k("borderBottomColor","borderColor"));this.q("borderBottomColor")}if(this.n("shadow")){this.WK(this.k("shadow"));this.q("shadow")}if(this.n("shadowHorizontalLength")){this.Yqa(this.k("shadowHorizontalLength"));this.q("shadowHorizontalLength")}if(this.n("shadowVerticalLength")){this.ara(this.k("shadowVerticalLength"));this.q("shadowVerticalLength")}if(this.n("shadowBlurRadius")){this.Wqa(this.k("shadowBlurRadius"));
this.q("shadowBlurRadius")}if(this.n("shadowSpread")){this.$qa(this.k("shadowSpread"));this.q("shadowSpread")}if(this.n("shadowColor")){this.Xqa(this.k("shadowColor"));this.q("shadowColor")}a=y;if(this.n("opacity")){this.Hj(this.k("opacity"));this.q("opacity");a=n}if(this.n("shadowOpacity")||a){this.Zqa(this.k("shadowOpacity","opacity"));this.q("shadowOpacity")}if(this.n("backgroundOpacity")){this.Zpa(this.k("backgroundOpacity"));this.q("backgroundOpacity")}if(this.n("backgroundColor")){this.Vpa(this.k("backgroundColor"));
this.q("backgroundColor")}if(this.n("backgroundColorRatios")){this.Xpa(this.k("backgroundColorRatios"));this.q("backgroundColorRatios")}if(this.n("backgroundColorDirection")){this.Wpa(this.k("backgroundColorDirection"));this.q("backgroundColorDirection")}if(this.n("backgroundImageUrl")){this.Ypa(this.k("backgroundImageUrl"));this.q("backgroundImageUrl")}g.prototype.ja.call(this)};k.Lk=function(a){if(b(a).isString())if((a=a.match(/^\s*([+-]?\d+\.?\d*)\s*%\s*$/))&&a.length>=2)return parseFloat(a[1])};
return k});define("hp",["do","fg","bZ"],function(a,b,c){return b.extend(c,function(b,f,e){a.isNumber(f)||(f=1);a.isNumber(e)||(e=0);c.call(this,b);this.scale=f;this.rotation=e})});define("lp",["do","fg","bZ"],function(a,b,c){return b.extend(c,function(a,b,e,g,k,i,p){c.call(this,a);this.x=b;this.y=e;this.pageX=g;this.pageY=k;this.Dp=i;this.eY=p})});
define("d","require,jquery.mod,do,fg,ll,fm,jg,J,hp,lp,fe,r,jt".split(","),function(a){var b=a("jquery.mod"),c=a("do"),d=a("fg"),f=a("ll"),e=a("fm"),g=a("jg"),k=a("J"),i=a("hp"),p=a("lp");a("fe");var j=a("r"),a=a("jt"),l=d.extend(k,function(){k.call(this);this.Uc("UIComponent");this.WH=[];this.jC=[];this.Tja=500;this.pc=1;this.gk=j.BN();this.HB=this.Io=this.MI=y;this.set("propagateClick",n)});l.nb={autoRolledOver:y,autoPressed:y,contentOpaque:n,cursor:m,inheritedCursor:m,inheritedInteractionEnabled:n,
interactionEnabled:n,rollOverOpacity:[e.u,"opacity"],rollOverShadow:[e.u,"shadow"]};c.defaults(l.nb,k.nb);l.prototype.za=function(){this.$j(l.nb)};l.prototype.r2=function(){this.X9(n)};l.prototype.q2=function(){this.X9(y)};l.prototype.o2=function(){this.Fy(n)};l.prototype.p2=function(){this.Fy(y)};l.prototype.zD=function(a){if(this.Io!=a){this.Io=a;this.ie()}};l.prototype.Fy=function(a){if(this.HB!=a){this.HB=a;this.ie()}};l.prototype.X9=function(a){if(this.MI!=a){this.MI=a;this.ie()}};l.prototype.ie=
function(){this.Io?this.Gy(e.G):this.HB&&this.MI?this.Gy(e.$a):this.HB?this.Gy(e.Ca):this.MI?this.Gy(e.u):this.Gy(e.dd)};l.prototype.trigger=function(){k.prototype.trigger.apply(this,arguments)};l.prototype.$$=function(a){this.trigger(new p(f.Eb,a.x,a.y,a.pageX,a.pageY))};l.prototype.aaa=function(a){this.trigger(new p(f.Nc,a.x,a.y,a.pageX,a.pageY))};l.prototype.baa=function(a){this.trigger(new p(f.ec,a.x,a.y,a.pageX,a.pageY))};l.prototype.osa=function(a,b){this.trigger(new p(f.nq,a.x,a.y,a.pageX,
a.pageY,b.Dp,b.eY))};l.prototype.V$=function(a){this.trigger(new p(f.U,a.x,a.y,a.pageX,a.pageY))};l.prototype.W$=function(a){this.trigger(new p(f.yG,a.x,a.y,a.pageX,a.pageY))};l.prototype.qsa=function(){this.trigger(new p(f.wc))};l.prototype.psa=function(){this.trigger(new p(f.Mb))};l.prototype.msa=function(){this.trigger(new p(f.Jh))};l.prototype.nsa=function(){this.trigger(new p(f.Ff))};l.prototype.lsa=function(a,b){this.trigger(new i(f.sG,a,b))};l.prototype.jsa=function(a,b){this.trigger(new i(f.vfa,
a,b))};l.prototype.ksa=function(a,b){this.trigger(new i(f.rG,a,b))};l.prototype.Y$=function(a){this.trigger(new i(f.wfa,m,a))};l.prototype.Z$=function(a){this.trigger(new i(f.Ew,a))};l.prototype.DW=function(a){a.stopImmediatePropagation();this.zx(["touchend"]);if(this.kT(a))this.ZU(a);else{this.z5();this.N8(a,n)}};l.prototype.N8=function(a,b){var e=this.vB(a);b&&this.fsa(e);this.$$(e);this.Q&&this.Q.N8(a,b&&this.get("propagateClick"))};l.prototype.BW=function(a){a.preventDefault();a.stopImmediatePropagation();
this.kT(a)?this.XU(a):this.M8(a)};l.prototype.M8=function(a){var b=this.vB(a);this.esa(b);this.aaa(b);this.Q&&this.Q.M8(a)};l.prototype.E4=function(a,b){var e=a.pageX-b.pageX,c=a.pageY-b.pageY;return Math.sqrt(e*e+c*c)};l.prototype.hs=function(a,b){this.fB(["touchend"]);b!==y&&a.preventDefault();a.stopImmediatePropagation();this.kT(a)?this.YU(a):this.L8(a,this.I5());this.AA()};l.prototype.L8=function(a,b){this.baa(this.vB(a));this.dsa(b);this.Q&&this.Q.L8(a)};l.prototype.fsa=function(a){this.bind(f.Mb,
this.Q$,this,n);this.nv=a};l.prototype.esa=function(a){if(this.nv){var a=this.E4(this.nv,a),b;if(j.Xa()){b=this.Ra();b=Math.min(b.Aa(),b.eb())*0.01;b=l.Aga*b}else b=l.Gga;a>b&&this.AW()}};l.prototype.dsa=function(a){if(this.nv){this.V$(this.nv);a&&this.W$(this.nv);this.AW()}};l.prototype.AW=function(){if(this.nv){this.unbind(f.Mb,this.Q$,this);this.nv=m}};l.prototype.Q$=function(){this.AW()};l.prototype.ZR=function(a){this.zx(["gesturechange","gestureend"]);a.preventDefault();a.stopImmediatePropagation();
this.ZU(a)};l.prototype.ZU=function(a){var b=this.jS(a);this.sy=b;this.lsa(b.scale,b.rotation);this.Q&&this.Q.ZU(a)};l.prototype.p4=function(a){a.preventDefault();a.stopImmediatePropagation();this.XU(a)};l.prototype.XU=function(a){var b=this.jS(a,this.sy),e=b.rotation-this.sy.rotation,c=b.scale/this.sy.scale;this.sy=b;this.pc=this.pc*c;for(this.he=this.he+e;this.he>180;)this.he=this.he-360;for(;this.he<-180;)this.he=this.he+360;this.jsa(this.pc,this.he);e!=0&&this.Y$(this.he);c!=1&&this.Z$(this.pc);
this.Q&&this.Q.XU(a)};l.prototype.r4=function(a){this.fB(["gesturechange","gestureend"]);a.preventDefault();a.stopImmediatePropagation();this.YU(a)};l.prototype.YU=function(a){var b=this.jS(a),e=b.rotation-this.sy.rotation,b=b.scale/this.sy.scale;this.pc=this.pc*b;for(this.he=this.he+e;this.he>180;)this.he=this.he-360;for(;this.he<-180;)this.he=this.he+360;this.ksa(this.pc,this.he);e!=0&&this.Y$(this.he);b!=1&&this.Z$(this.pc);this.Q&&this.Q.YU(a)};l.prototype.RT=function(a){this.zx(["mouseup"]);
a.stopImmediatePropagation();this.z5();this.H8(a,n);q&&this.bna(a.ctrlKey)};l.prototype.H8=function(a,b){var e=this.iu(a);b&&this.Mia(e);this.$$(e);this.Q&&this.Q.H8(a,b&&this.get("propagateClick"))};l.prototype.ST=function(a){a.preventDefault();a.stopImmediatePropagation();this.Ra().lw(this);this.I8(a)};l.prototype.I8=function(a){var b=this.iu(a);this.Lia(b);this.aaa(b);this.Q&&this.Q.I8(a)};l.prototype.nJ=function(a){this.fB(["mouseup"]);a.preventDefault();a.stopImmediatePropagation();this.J8(a,
this.I5())};l.prototype.J8=function(a,b){this.baa(this.iu(a));this.Kia(b);this.Q&&this.Q.J8(a,b)};l.prototype.Mia=function(a){this.bind(f.Mb,this.e3,this,n);this.Qt=a};l.prototype.Lia=function(a){this.Qt&&this.E4(this.Qt,a)>l.vga&&this.zQ()};l.prototype.Kia=function(a){if(this.Qt){this.V$(this.Qt);a&&this.W$(this.Qt);this.zQ()}};l.prototype.zQ=function(){if(this.Qt){this.unbind(f.Mb,this.e3,this);this.Qt=m}};l.prototype.e3=function(){this.zQ()};l.prototype.m6=function(a){if(this.ra.l6){a.preventDefault();
a.stopImmediatePropagation();this.K8(a)}};l.prototype.L2=R(y);l.prototype.K8=function(a){var b=this.iu(a),e=this.rla(a);this.Q&&!this.L2(e.Dp)&&this.Q.K8(a);this.osa(b,e)};l.prototype.iu=function(a){return this.bS(a.pageX,a.pageY)};l.prototype.rla=function(a){var a=window.event||a.originalEvent||a,b={};b.Dp=Math.max(-1,Math.min(1,a.wheelDelta||-a.detail));b.eY=a.wheelDelta?a.wheelDelta*0.01:b.Dp;return b};l.prototype.vB=function(a){var b=this.gS(a);return this.$oa=a=b===m?this.bS(a.pageX,a.pageY):
b.length==0?this.$oa:this.bS(b[0].pageX,b[0].pageY)};l.prototype.kT=function(a){if((a=this.gS(a))&&a.length>1)for(var b=0,e=0;e<a.length;e++)if(this.Gma(a[e].target)){b++;if(b>1)return n}return y};l.prototype.Gma=function(a){for(;a;){if(a==this.gb)return n;a=a.parentNode}return y};l.prototype.gS=function(a){return a.originalEvent.touches||a.originalEvent.targetTouches||a.originalEvent.changedTouches};l.prototype.bS=function(a,b){var e=this.Cb().offset(),c=this.ra?this.ra.iy:1,g={};g.x=(a-e.left)/
c;g.y=(b-e.top)/c;g.pageX=a/c;g.pageY=b/c;g.wda=a;g.xda=b;return g};l.prototype.jS=function(a,b){if(a.originalEvent.scale!==m||a.originalEvent.rotation!==m)return{scale:a.originalEvent.scale,rotation:a.originalEvent.rotation};if(b){var e=this.L4(a);return{scale:b.scale*e/b.touchesDistance,rotation:0,touchesDistance:e}}return{scale:1,rotation:0,touchesDistance:this.L4(a)}};l.prototype.L4=function(a){var b=this.gS(a);if(b&&b.length>1){a=Math.abs(b[0].pageX-b[1].pageX);b=Math.abs(b[0].pageY-b[1].pageY);
return Math.sqrt(a*a+b*b)}return 0};l.prototype.zx=function(a){this.WH=c(this.WH).union(a);for(var a=this.K4(a),b=0;b<a.length;b++){var e=a[b];e.target.bind(e.name,e.handler)}};l.prototype.z5=function(){this.jC.push((new Date).getTime());this.jC=this.jC.slice(-2)};l.prototype.I5=function(){var a=(new Date).getTime();if(this.jC.length>1){var b=this.jC.slice(-2)[0];if(a-b<=this.Tja)return n}return y};l.prototype.fB=function(a){this.WH=c(this.WH).difference(a);for(var a=this.K4(a),b=0;b<a.length;b++){var e=
a[b];e.target.unbind(e.name,e.handler)}};l.prototype.K4=function(a){this.d4||(this.d4=this.fS());for(var b=[],e=0;e<a.length;e++)b=b.concat(this.d4[a[e]]);return b};l.prototype.fS=function(){var a=this.Cb(),e=b(document),c=b(window);return{touchstart:[{target:a,name:"touchstart",handler:this.df(this.DW)}],touchmove:[{target:a,name:"touchmove",handler:this.df(this.BW)}],touchend:[{target:a,name:"touchend",handler:this.df(this.hs,n)},{target:e,name:"touchend",handler:this.df(this.hs,n)},{target:a,name:"touchcancel",
handler:this.df(this.hs,n)},{target:e,name:"touchcancel",handler:this.df(this.hs,n)}],gesturestart:[{target:a,name:"gesturestart",handler:this.df(this.ZR)}],gesturechange:[{target:a,name:"gesturechange",handler:this.df(this.p4)}],gestureend:[{target:a,name:"gestureend",handler:this.df(this.r4)}],mousedown:[{target:a,name:"mousedown",handler:this.df(this.RT)}],mousemove:[{target:a,name:"mousemove",handler:this.df(this.ST)}],mouseup:[{target:a,name:"mouseup",handler:this.df(this.nJ,n)},{target:c,name:"mouseup",
handler:this.df(this.nJ,n)}],mousewheel:[{target:a,name:"mousewheel",handler:this.df(this.m6)},{target:a,name:"DOMMouseScroll",handler:this.df(this.m6)}]}};l.prototype.df=function(a,b){var e=this;return function(){b&&g.FN();l.uE=l.uE+1;var c=a.apply(e,arguments);l.uE=l.uE-1;return c}};l.prototype.ja=function(){if(this.n("autoRolledOver")){this.unbind(f.wc,this.r2,this);this.unbind(f.Mb,this.q2,this);if(this.k("autoRolledOver")){this.bind(f.wc,this.r2,this);this.bind(f.Mb,this.q2,this)}this.q("autoRolledOver")}if(this.n("autoPressed")){this.unbind(f.Eb,
this.o2);this.unbind(f.ec,this.p2);if(this.k("autoPressed")){this.bind(f.Eb,this.o2);this.bind(f.ec,this.p2)}this.q("autoPressed")}var a=y;if(this.n("contentOpaque")){a=n;this.q("contentOpaque")}if(this.n("inheritedInteractionEnabled")){a=n;this.q("inheritedInteractionEnabled")}if(this.n("interactionEnabled")){a=n;this.q("interactionEnabled")}if(this.n("backgroundOpacity")||this.n("backgroundColor"))a=n;k.prototype.ja.call(this);if(a){var b=this.Gb(),b=b.Fh()>0&&b.Rt.length>0,e=this.k("contentOpaque"),
c=this.k("inheritedInteractionEnabled"),g=this.k("interactionEnabled");this.ev(c&&g&&(e||b))}if(a||this.n("cursor")||this.n("inheritedCursor")){this.q("cursor");this.q("inheritedCursor");this.TG?this.cs(this.k("cursor")):this.cs(this.k("inheritedCursor"))}};l.prototype.ev=function(a){if(this.TG!=a){(this.TG=a)?this.zx(l.R1):this.fB(l.R1);this.AA()}};l.prototype.AA=function(){this.Co().style["pointer-events"]=this.TG?"auto":"none"};l.prototype.bna=function(a){if(a){for(var a=[],b=this;b;){a.push(b);
b=b.getParent()}console.log(a.map(function(a){return a.FA}))}else console.log(this.FA)};l.lF=function(){return l.uE>0};l.R1=function(){var a=[],a=a.concat(["touchstart","touchmove","gesturestart"]);j.Zd()!=j.Qj&&(a=a.concat(["mousedown","mousemove","mousewheel"]));return a}();l.uE=0;l.qAa=1E3;l.Gga=10;l.Aga=5;l.vga=10;var q=a.Yg("debug");return l});define("jY",[],function(){return{qa:"left",Ma:"right",Mc:"center",mb:"top",lb:"bottom",tc:"middle"}});
define("c",[],function(){return{bG:"absolute",Be:"horizontal",kq:"grid",kf:"vertical"}});define("ca",[],function(){return function(a){this.Vc=a;this.height=this.width=this.y=this.x=0}});define("cV",[],function(){return function(){this.minHeight=this.minWidth=this.height=this.width=0}});
define("bL",["jY","ca","cV"],function(a,b,c){function d(){this.Pb=r;this.pi=a.mb;this.Vh=a.qa;this.wv=this.Fo=0}d.prototype.qea=function(a){this.Fo!=a&&(this.Fo=a,this.ed())};d.prototype.xN=function(a){this.wv!=a&&(this.wv=a,this.ed())};d.prototype.zea=function(a){this.Pb=a;this.ed()};d.prototype.Oz=function(a){this.Vh!=a&&(this.Vh=a,this.ed())};d.prototype.Sz=function(a){this.pi!=a&&(this.pi=a,this.ed())};d.prototype.pF=function(){return new c};d.prototype.update=function(){var a=this.cja();this.Sy(a);
this.sqa(a)};d.prototype.Sy=function(a){this.iE(a);this.hE(a)};d.prototype.pI=function(){for(var a=this.i5(),b=[],c=0;c<a.length;c++){var d=a[c];d.get("includeInLayout")&&b.push(d)}return b};d.prototype.i5=function(){for(var a=this.Pb.Oa(),b=[],c=0;c<a.length;c++){var d=a[c];d.get("visible")&&b.push(d)}return b};d.prototype.cja=function(){for(var a=this.i5(),e=[],c=0;c<a.length;c++)e.push(new b(a[c]));return e};d.prototype.sqa=function(a){for(var b=0;b<a.length;b++){var c=a[b];c.Vc.iea(c.x,c.y,c.width,
c.height)}};d.prototype.ed=function(){this.Pb&&this.Pb.Wa()};return d});
define("cO",["fg","jY","bL","cV"],function(a,b,c,d){a=a.extend(c,function(){c.call(this)});a.prototype.pF=function(){for(var a=new d,b=this.pI(),c=0;c<b.length;c++){var k=b[c],i=k.Oo,p=k.qD,j=0;isNaN(i)||(j+=i);isNaN(p)||(j+=p);a.width=Math.max(j+k.Dn(),a.width);a.minWidth=Math.max(j+k.An(),a.minWidth);i=k.vp;p=k.HA;j=0;isNaN(i)||(j+=i);isNaN(p)||(j+=p);a.height=Math.max(j+k.Cn(),a.height);a.minHeight=Math.max(j+k.Jp(),a.minHeight)}b=this.Pb.ti()+this.Pb.xn();a.width+=b;a.minWidth+=b;b=this.Pb.yn()+
this.Pb.oz();a.height+=b;a.minHeight+=b;return a};a.prototype.Sy=function(a){this.iE(a);this.hE(a)};a.prototype.Sy=function(a){for(var b=this.Pb.Hd(),c=this.Pb.Gd(),d=0;d<a.length;d++){var i=a[d],p=i.Vc,j=p.Oo;if(isNaN(j)){var l=p.eK;isNaN(l)||(j=Math.round(0.01*l*b))}l=p.qD;if(isNaN(l)){var q=p.fK;isNaN(q)||(l=Math.round(0.01*q*b))}var q=p.Gq,o=p.Vi;if(isNaN(o)){var t=p.jj;isNaN(t)?!isNaN(j)&&!isNaN(l)&&(o=b-j-l):o=Math.round(0.01*t*b)}t=p.vp;if(isNaN(t)){var s=p.gK;isNaN(s)||(t=Math.round(0.01*
s*c))}s=p.HA;if(isNaN(s)){var u=p.dK;isNaN(u)||(s=Math.round(0.01*u*c))}var u=p.Hq,v=p.au;if(isNaN(v)){var w=p.ij;isNaN(w)?!isNaN(t)&&!isNaN(s)&&(v=c-t-s):v=Math.round(0.01*w*c)}i.width=isNaN(o)?p.Dn():Math.max(p.An(),Math.min(p.BM(),o));i.height=isNaN(v)?p.Cn():Math.max(p.Jp(),Math.min(p.AM(),v));i.x=!isNaN(j)&&!isNaN(l)?Math.round(j+0.5*(b-l-j-i.width)):isNaN(j)?isNaN(l)?isNaN(q)?0:0.5*b+q-0.5*i.width:b-l-i.width:j;i.y=!isNaN(t)&&!isNaN(s)?Math.round(t+0.5*(c-s-t-i.height)):isNaN(t)?isNaN(s)?isNaN(u)?
0:0.5*c+u-0.5*i.height:c-s-i.height:t}};return a});
define("hU",["fg","jY","bL","cV"],function(a,b,c,d){a=a.extend(c,function(){c.call(this);this.JB=this.KB=this.LB=this.ru=this.Jo=this.Ko=this.NB=this.rr=this.Vi=m});a.prototype.Xxa=function(a){this.Vi!=a&&(this.Vi=a,this.ed())};a.prototype.jya=function(a){this.Ko!=a&&(this.Ko=a,this.Ko!=m&&(this.rr=m),this.ed())};a.prototype.iya=function(a){this.Jo!=a&&(this.Jo=a,this.Jo!=m&&(this.NB=m),this.ed())};a.prototype.rya=function(a){this.rr!=a&&(this.rr=a,this.Ko!=m&&(this.Ko=m),this.ed())};a.prototype.qya=
function(a){this.NB!=a&&(this.NB=a,this.Jo!=m&&(this.Jo=m),this.ed())};a.prototype.oya=function(a){this.ru!=a&&(this.ru=a,this.ed())};a.prototype.nya=function(a){this.LB!=a&&(this.LB=a,this.ed())};a.prototype.mya=function(a){this.KB!=a&&(this.KB=a,this.ed())};a.prototype.lya=function(a){this.JB!=a&&(this.JB=a,this.ed())};a.prototype.pF=function(){for(var a=new d,b=this.pI(),c=0,k=0;k<b.length;k++)b[k].get("includeInLayout")&&c++;if(!isNaN(this.rr)){isNaN(this.ru)||(a.minWidth=this.ru);for(k=0;k<b.length;k++){var i=
b[k].An();isNaN(i)||(a.minWidth=Math.max(i,a.minWidth))}}if(isNaN(this.Ko))for(k=0;k<b.length;k++)i=b[k].Dn(),isNaN(i)||(a.width=Math.max(i,a.width));else a.width=this.Ko;if(isNaN(this.Jo))for(k=0;k<b.length;k++)i=b[k].Cn(),isNaN(i)||(a.height=Math.max(i,a.height));else a.height=this.Jo;isNaN(this.rr)?isNaN(this.Vi)?b=Math.ceil(Math.sqrt(c)):(b=this.Vi-this.Pb.ti()-this.Pb.xn(),b=Math.max(1,Math.floor((b+this.Fo)/(a.width+this.Fo)))):b=Math.max(1,Math.floor(100/this.rr));c=Math.ceil(c/b);a.width=
a.width*b+Math.max(0,b-1)*this.Fo+this.Pb.ti()+this.Pb.xn();a.minWidth=a.minWidth+this.Pb.ti()+this.Pb.xn();a.height=a.height*c+Math.max(0,c-1)*this.wv+this.Pb.yn()+this.Pb.oz();a.minHeight=0;return a};a.prototype.Sy=function(a){for(var e,c,d=[],i=[],p=0;p<a.length;p++)c=a[p].Vc,c.get("includeInLayout")?d.push(a[p]):i.push(a[p]);var j=d.length,l=this.Pb.Hd(),q=this.Fo,o;if(isNaN(this.Ko))if(isNaN(this.rr)){for(p=a=0;p<d.length;p++)c=d[p].Vc,a=Math.max(c.An(),c.Dn(),a);a=Math.min(l,a)}else{if(a=Math.max(1,
Math.floor(100/this.rr)),a=(l-(a-1)*q)/a,p=y,!isNaN(this.KB)&&this.KB<a&&(a=this.KB,p=n),!isNaN(this.ru)&&this.ru>a&&(a=this.ru,p=n),p)a=Math.max(1,Math.floor((l+q)/(a+q))),a=(l-(a-1)*q)/a}else a=this.Ko;a=Math.max(1,a);o=Math.max(1,Math.floor(0.001+(l+q)/(a+q)));var p=o*a,t=o*(a+q)-q,s=0;if(l>=t)switch(this.Vh){case b.Ma:s=l-t;break;case b.Mc:s=Math.round(0.5*(l-t));break;default:s=0}for(var l=[],t=[],u=0;u<o;u++)c=Math.round(p/(o-u)),p-=c,t.push(s),s+=c+q,l.push(c);s=this.Pb.Gd();u=this.wv;if(isNaN(this.Jo))if(isNaN(this.NB)){q=
1;for(p=0;p<d.length;p++)c=d[p].Vc,q=Math.max(c.Jp(),c.Cn(),q)}else{if(q=Math.max(1,100/this.NB),q=(s-(q-1)*u)/q,p=y,!isNaN(this.JB)&&this.JB<q&&(q=this.JB,p=n),!isNaN(this.LB)&&this.LB>q&&(q=this.LB,p=n),p)q=Math.max(1,Math.floor((s+u)/(q+u))),q=(s-(q-1)*u)/q}else q=this.Jo;p=Math.max(1,Math.ceil(j/o));e=p*q;var j=p*(q+u)-u,v=0;if(s>=j)switch(this.pi){case b.lb:v=s-j;break;case b.tc:v=Math.round(0.5*(s-j))}j=[];s=[];for(c=0;c<p;c++){var w=Math.round(e/(p-c));e-=w;s.push(v);v+=w+u;j.push(w)}for(p=
0;p<d.length;p++)e=d[p],u=p%o,c=Math.floor(p/o),e.x=t[u],e.width=l[u],e.y=s[c],e.height=j[c];for(p=0;p<i.length;p++)e=i[p],e.x=0,e.width=Math.round(a),e.y=0,e.height=Math.round(q)};return a});
define("eC",["fg","jY","bL","cV"],function(a,b,c,d){a=a.extend(c,function(){c.call(this)});a.prototype.pF=function(){for(var a=new d,b=this.pI(),c=0;c<b.length;c++){var k=b[c];a.height=Math.max(k.Cn(),a.height);a.minHeight=Math.max(k.Jp(),a.minHeight);a.width+=k.Dn();a.minWidth+=k.An()}b=Math.max(0,b.length-1)*this.Fo+this.Pb.ti()+this.Pb.xn();a.width+=b;a.minWidth+=b;b=this.Pb.yn()+this.Pb.oz();a.height+=b;a.minHeight+=b;return a};a.prototype.Sy=function(a){this.iE(a);this.hE(a)};a.prototype.iE=
function(a){for(var b=0,c=0;c<a.length;c++)a[c].Vc.get("includeInLayout")&&b++;for(var c=Math.max(0,b-1)*this.Fo,d=this.Pb.Hd()-c,i=this.Pb.Gd(),b=d,p=0,j=[],c=0;c<a.length;c++){var l=a[c],q=l.Vc,o=q.ij;l.height=isNaN(o)?q.Cn():Math.max(q.Jp(),Math.min(q.AM(),Math.round(0.01*i*o)));o=q.jj;isNaN(o)?(l.width=q.Dn(),b-=l.width):q.get("includeInLayout")?(p+=o,j.push(l)):l.width=Math.max(q.An(),Math.min(q.BM(),Math.round(0.01*d*o)))}c=Math.max(0,b-0.01*d*p);b-=c;do{a=y;d=Math.max(0,0<p?b/p:0);i=[];for(c=
p=0;c<j.length;c++){var l=j[c],q=l.Vc,o=Math.round(q.jj*d),t=q.An(),s=q.BM();o<t?(l.width=t,b-=l.width,a=n):o>s?(l.width=s,b-=l.width,a=n):(p+=q.jj,i.push(l))}j=i}while(a);for(c=0;c<j.length;c++)l=j[c],q=l.Vc,d=Math.max(0,0<p?b/p:0),l.width=Math.round(q.jj*d),b-=l.width,p-=q.jj};a.prototype.hE=function(a){for(var e=this.Fo,c=this.Pb.Hd(),d=this.Pb.Gd(),i=0,p=0,j=0;j<a.length;j++){var l=a[j];l.Vc.get("includeInLayout")&&(i+=a[j].width,p++)}i+=e*(p-1);if(c>=i)switch(this.Vh){case b.Ma:c-=i;break;case b.Mc:c=
Math.round(0.5*(c-i));break;default:c=0}else c=0;for(j=0;j<a.length;j++)if(l=a[j],l.Vc.get("includeInLayout")){if(d>=l.height)switch(this.pi){case b.lb:l.y=d-l.height;break;case b.tc:l.y=Math.round(0.5*(d-l.height));break;default:l.y=0}else l.y=0;l.x=c;c+=l.width+e}else l.x=0,l.y=0};return a});
define("cv",["fg","jY","bL","cV"],function(a,b,c,d){a=a.extend(c,function(){c.call(this)});a.prototype.pF=function(){for(var a=new d,b=this.pI(),c=0;c<b.length;c++){var k=b[c];a.width=Math.max(k.Dn(),a.width);a.minWidth=Math.max(k.An(),a.minWidth);a.height+=k.Cn();a.minHeight+=k.Jp()}b=Math.max(0,b.length-1)*this.wv+this.Pb.yn()+this.Pb.oz();a.height+=b;a.minHeight+=b;b=this.Pb.ti()+this.Pb.xn();a.width+=b;a.minWidth+=b;return a};a.prototype.Sy=function(a){this.iE(a);this.hE(a)};a.prototype.iE=function(a){for(var b=
0,c=0;c<a.length;c++)a[c].Vc.get("includeInLayout")&&b++;for(var c=Math.max(0,b-1)*this.wv,d=this.Pb.Hd(),i=this.Pb.Gd()-c,b=i,p=0,j=[],c=0;c<a.length;c++){var l=a[c],q=l.Vc,o=q.jj;l.width=isNaN(o)?q.Dn():Math.max(q.An(),Math.min(q.BM(),Math.round(0.01*d*o)));o=q.ij;isNaN(o)?(l.height=q.Cn(),b-=l.height):q.get("includeInLayout")?(p+=o,j.push(l)):l.height=Math.max(q.Jp(),Math.min(q.AM(),Math.round(0.01*i*o)))}c=Math.max(0,b-0.01*i*p);b-=c;do{a=y;d=Math.max(0,0<p?b/p:0);i=[];for(c=p=0;c<j.length;c++){var l=
j[c],q=l.Vc,o=Math.round(q.ij*d),t=q.Jp(),s=q.AM();o<t?(l.height=t,b-=l.height,a=n):o>s?(l.height=s,b-=l.height,a=n):(p+=q.ij,i.push(l))}j=i}while(a);for(c=0;c<j.length;c++)l=j[c],q=l.Vc,d=Math.max(0,0<p?b/p:0),l.height=Math.round(q.ij*d),b-=l.height,p-=q.ij};a.prototype.hE=function(a){for(var e=this.wv,c=this.Pb.Hd(),d=this.Pb.Gd(),i=0,p=0,j=0;j<a.length;j++){var l=a[j];l.Vc.get("includeInLayout")&&(i+=l.height,l.width>c&&(c=l.width),p++)}i+=e*(p-1);if(d>=i)switch(this.pi){case b.lb:d-=i;break;case b.tc:d=
Math.round(0.5*(d-i));break;default:d=0}else d=0;for(j=0;j<a.length;j++)if(l=a[j],l.Vc.get("includeInLayout")){switch(this.Vh){case b.Ma:l.x=c-l.width;break;case b.Mc:l.x=Math.round(0.5*(c-l.width));break;default:l.x=0}l.y=d;d+=l.height+e}else l.x=0,l.y=0};return a});
define("k","fg,do,d,J,jY,ck,c,cO,hU,eC,cv".split(","),function(a,b,c,d,f,e,g,k,i,p,j){var l=a.extend(c,function(){c.call(this);this.Uc("BaseContainer");this.hk=r;this.zc=[];this.jl=[];this.aB=e.C_;this.set("contentOpaque",y)});l.nb={children:[[]],childrenInteractionEnabled:n,gap:0,horizontalAlign:f.qa,itemHeight:m,itemMaxHeight:m,itemMaxWidth:m,itemMinHeight:m,itemMinWidth:m,itemWidth:m,layout:g.bG,verticalAlign:f.mb};b.defaults(l.nb,c.nb);l.prototype.za=function(){this.$j(l.nb)};l.prototype.set=
function(a,b){a=="children"?this.bg(b):a=="creationPolicy"?this.Qxa(b):c.prototype.set.call(this,a,b)};l.prototype.get=function(a,b){return a=="children"?this.Oa():a=="creationPolicy"?this.aB:c.prototype.get.call(this,a,b)};l.prototype.Qxa=function(a){if(this.aB!=a){this.aB=a;this.PW()}};l.prototype.bg=function(a){for(var e=this.Oa(),a=a||[],c=b(e).difference(a),d=0;d<c.length;d++)this.removeChild(c[d]);e=b(a).difference(e);for(d=0;d<e.length;d++)this.la(e[d]);for(d=0;d<a.length;d++)this.Fj(a[d],
d)};l.prototype.Oa=Q("zc");l.prototype.la=function(a){a.getParent()&&a.getParent().removeChild(a);this.zc.push(a);a.Q=this;this.i2(a);a.NV(this.ql);this.jl.push(a);this.PW();a.al()};l.prototype.removeChild=function(a){if(a.getParent()==this){a.nj();a.Q=r;if(b(this.jl).contains(a))this.jl=b.without(this.jl,a);else{a.Cb().detach();a.Zm(r);this.Wa();this.Lc()}this.zc=b.without(this.zc,a);a.nV()}};l.prototype.Kda=function(){b(this.Oa()).forEach(function(a){this.removeChild(a)})};l.prototype.ZE=function(a){return b(this.zc).indexOf(a)};
l.prototype.Fj=function(a,e){var c=this.ZE(a);c<0&&h("Can't set index. This is not a child of this container");var d=this.zc.slice();d.splice(c,1);d.splice(e,0,a);if(!b.isEqual(this.zc,d)){this.zc=d;if(!b(this.jl).contains(a)){c=this.ZE(a);a.Cb().detach();for(var i=d=r,g=c-1;g>=0&&!d;g--)b(this.jl).contains(this.zc[g])||(d=this.zc[g]);for(g=c+1;g<this.zc.length&&!i&&!d;g++)b(this.jl).contains(this.zc[g])||(i=this.zc[g]);d?a.Cb().insertAfter(d.Cb()):i?a.Cb().insertBefore(i.Cb()):this.Pa().QX(a.Co());
this.Lc()}}};l.prototype.ev=function(a){c.prototype.ev.call(this,a);this.maa()};l.prototype.maa=function(){b(this.zc).forEach(function(a){this.i2(a)},this)};l.prototype.i2=function(a){a.set("inheritedInteractionEnabled",this.k("interactionEnabled")&&this.k("inheritedInteractionEnabled")&&this.k("childrenInteractionEnabled"))};l.prototype.AA=function(){c.prototype.AA.call(this);this.zc.forEach(function(a){a.AA()})};l.prototype.fv=function(a){c.prototype.fv.call(this,a);b(this.zc).forEach(function(a){a.NV(this.ql)},
this)};l.prototype.RP=function(a){c.prototype.RP.call(this,a);b(this.Oa()).forEach(function(a){a.Ty()});this.PW()};l.prototype.Zm=function(a){c.prototype.Zm.call(this,a);b(this.Oa()).forEach(function(e){b(this.jl).contains(e)||e.Zm(a)},this)};l.prototype.PW=function(){if((this.aB==e.C_&&this.pr||this.aB==e.pt)&&this.jl.length>0){b(this.jl).forEach(function(a){this.Pa().QX(a.Co());a.Zm(this.Ra())},this);this.jl=[];this.Wa();this.Lc()}};l.prototype.KF=function(a){if(this.hk!=a){this.hk&&this.hk.zea(r);
(this.hk=a)&&this.hk.zea(this)}};l.prototype.ja=function(){var a=y,b=this.k("layout");if(this.n("layout")){switch(b){case g.kq:this.KF(new i);break;case g.Be:this.KF(new p);break;case g.kf:this.KF(new j);break;default:this.KF(new k)}this.q("layout");a=n}var e=this.hk;if(this.n("horizontalAlign")||a){e.Oz(this.k("horizontalAlign"));this.q("horizontalAlign")}if(this.n("verticalAlign")||a){e.Sz(this.k("verticalAlign"));this.q("verticalAlign")}if(this.n("gap")||a){if(b==g.kq){e.qea(this.k("gap"));e.xN(this.k("gap"))}else b==
g.Be?e.qea(this.k("gap")):b==g.kf&&e.xN(this.k("gap"));this.q("gap")}if(b==g.kq){if(this.n("itemWidth")||a){var f=this.k("itemWidth"),l=d.Lk(f);l!==m?e.rya(l):e.jya(f);this.q("itemWidth")}if(this.n("itemHeight")||a){f=this.k("itemHeight");l=d.Lk(f);l!==m?e.qya(l):e.iya(f);this.q("itemHeight")}if(this.n("itemMinWidth")){e.oya(this.k("itemMinWidth"));this.q("itemMinWidth")}if(this.n("itemMinHeight")){e.nya(this.k("itemMinHeight"));this.q("itemMinHeight")}if(this.n("itemMaxWidth")){e.mya(this.k("itemMaxWidth"));
this.q("itemMaxWidth")}if(this.n("itemMaxHeight")){e.lya(this.k("itemMaxHeight"));this.q("itemMaxHeight")}}if(this.n("childrenInteractionEnabled")){this.q("childrenInteractionEnabled");this.maa()}this.hb(["cursor"],{cursor:"inheritedCursor"},this.zc,n,y);c.prototype.ja.call(this);b==g.kq&&e.Xxa(this.Vi)};l.prototype.hb=function(a,b,e,c,d){for(var i=0;i<a.length;i++){var g=a[i];if(!c||this.n(g)){for(var k=0;k<e.length;k++)e[k].set(b[g]?b[g]:g,this.k(g));d&&this.q(g)}}};l.prototype.To=function(){if(this.hk){var a=
this.hk.pF();this.$h=a.width;this.Zh=a.height;this.bC=a.minWidth;this.aC=a.minHeight}else c.prototype.To.call(this)};l.prototype.Bi=function(){this.hk&&this.hk.update(this);c.prototype.Bi.call(this)};return l});
define("ln",["jquery.mod","fg","lC","fe"],function(a,b,c,d){function f(b,g){this.xx=b;this.Sb="#000000";this.zb=0.5;this.X=10;this.xE=this.xB=5;this.Bd=g;this.BH=this.wU=this.va=0;this.e2=this.Ic=this.cH=y;this.Z=n;this.mx=document.createElement("div");this.mx.setAttribute("tdvlayer","scrollbar");this.RA=a(this.mx);d.css(this.mx,{position:"absolute","z-index":c.M0});this.DA=document.createElement("div");this.YP=a(this.DA);d.css(this.DA,{position:"absolute",left:0,top:0});this.RA.append(this.YP)}f.prototype.ad=
function(){return this.RA.width()};f.prototype.Od=function(){return this.RA.height()};f.prototype.Ia=function(a){this.va!=a&&(this.va=a,this.l9(),this.Z=n)};f.prototype.Ds=Q("va");f.prototype.setSize=function(a,b){this.wU=a;this.BH=b;this.l9();this.Z=n};f.prototype.xe=function(a){this.Ic!=a&&(this.Ic=a,this.Z=n)};f.prototype.hea=function(a){this.cH!=a&&(this.cH=a,this.Z=n)};f.prototype.Nz=function(a){this.Sb!=a&&(this.Sb=a,this.Z=n)};f.prototype.Hj=function(a){this.zb!=a&&(this.zb=a,this.Z=n)};f.prototype.RF=
function(a){this.X!=a&&(this.X=a,this.Z=n)};f.prototype.oea=function(a){this.xB!=a&&(this.xB=a,this.Z=n)};f.prototype.Aea=function(a){this.xE!=a&&(this.xE=a,this.Z=n)};f.prototype.Re=function(){this.Z&&(this.e2!=this.Ic&&(this.Ic?this.Bd.append(this.RA):this.RA.detach(),this.e2=this.Ic),this.L(),this.Z=y)};f.prototype.L=function(){var a=Math.round(100*this.wU/this.BH),b=Math.round(100*this.va/this.BH);d.css(this.mx,{filter:"alpha(opacity="+Math.round(100*this.zb)+")",opacity:this.zb,display:this.Ic?
"block":"none"});d.css(this.DA,{backgroundColor:this.Sb,"border-radius":Math.floor(this.X/2)+"px"});this.xx==f.Be?(d.css(this.mx,{left:this.xB+"px",right:(this.cH?this.X:0)+this.xB+"px",height:this.X+"px",bottom:this.xE+"px"}),d.css(this.DA,{left:b+"%",width:a+"%",height:this.X+"px"})):(d.css(this.mx,{top:this.xE+"px",right:this.xB+"px",width:this.X+"px",bottom:(this.cH?this.X:0)+this.xE+"px"}),d.css(this.DA,{top:b+"%",width:this.X+"px",height:a+"%"}))};f.prototype.l9=function(){var a=this.BH-this.wU;
0>this.va?this.va=0:this.va>a&&(this.va=a)};f.Be="horizontal";f.kf="vertical";return f});define("hB",["fg","ln"],function(a,b){return a.extend(b,function(a){b.call(this,b.Be,a)})});define("dx",["fg","ln"],function(a,b){return a.extend(b,function(a){b.call(this,b.kf,a)})});
define("V",["require"],function(){function a(){}function b(e){var c=g;g=[];a.OY=n;var d=e-a.wd,d=1<d?100>d?d:100:1;a.wd=e;for(e=0;e<c.length;e++){var i=c[e];i.callback.call(i.context,d)}a.OY=y;k=0<g.length?f(b):m}var c=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame,d=window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||
window.msCancelAnimationFrame,f=c,e=d,g=[],k=m,i=y;a.La=function(a,e){for(var c=0;c<g.length;c++){var d=g[c];if(d.callback==a&&d.context==e)return}g.push({callback:a,context:e});!i&&k===m&&(k=f(b))};a.SZ=function(a){i!=a&&((i=a)?k!==m&&(e(k),k=m):0<g.length&&(k=f(b)))};a.uN=function(a,i){a=a||c;i=i||d;f!=a&&(k!==m&&(e(k),k=a(b)),f=a,e=i)};a.yZ=function(){a.uN(r,r)};a.wd=(new Date).getTime();a.OY=y;return a});
define("kX",[],function(){function a(a){var b={jY:function(b,c,d,g){d=0>=d?0:d>=g?1:d/g;0.5>d?d=Math.pow(2*d,a):(d=1-Math.pow(1-(2*d-1),a),d+=1);return b+(c-b)*0.5*d}};b.hZ=d(a);return b}function b(a){var b={jY:function(b,c,d,g){return b+(c-b)*(1-Math.pow(1-(0>=d?0:d>=g?1:d/g),a))}};b.hZ=d(a);return b}function c(a){var b={jY:function(b,c,d,g){return b+(c-b)*Math.pow(0>=d?0:d>=g?1:d/g,a)}};b.hZ=d(a);return b}function d(a){return function(b,c,d){b=Math.abs(c-b);return 1>b/d?0:1/(1-Math.pow((b-d)/b,
1/a))}}function f(e,d,k){this.lh=r;switch(e){case "quad_in":this.lh=c(2);break;case "quad_out":this.lh=b(2);break;case "quad_in_out":this.lh=a(2);break;case "cubic_in":this.lh=c(3);break;case "cubic_out":this.lh=b(3);break;case "cubic_in_out":this.lh=a(3);break;case "quart_in":this.lh=c(4);break;case "quart_out":this.lh=b(4);break;case "quart_in_out":this.lh=a(4);break;case "quint_in":this.lh=c(5);break;case "quint_out":this.lh=b(5);break;case "quint_in_out":this.lh=a(5);break;default:this.lh=c(1)}this.xo=
d.slice();this.rc=0;this.pb=this.$q(d,k);this.oR={};for(e=0;e<this.xo.length;e++)this.oR[this.xo[e].name]=d[e].Nv}f.prototype.Nba=function(a){for(var b=0;b<this.xo.length;b++)if(this.xo[b].name==a)return this.xo[b];return r};f.prototype.Bb=function(a){return this.oR[a]};f.prototype.Qe=function(){return this.rc>=this.pb};f.prototype.Aj=Q("pb");f.prototype.setTime=function(a){this.rc=Math.min(Math.max(0,a),this.pb);for(a=0;a<this.xo.length;a++){var b=this.xo[a];this.oR[b.name]=this.lh.jY(b.Nv,b.Tz,
this.rc,this.pb)}};f.prototype.fb=function(a){this.setTime(this.rc+a)};f.prototype.$q=function(a,b,c){for(var d=[],f=0;f<this.xo.length;f++){var j=this.xo[f],l=c?c:j.Gwa;l!==m&&0<l&&d.push(this.lh.hZ(j.Nv,j.Tz,l/1E3))}if(0<d.length){a=d[0];for(f=1;f<d.length;f++)a=Math.max(a,d[f]);return 0<b?Math.max(b,a):a}return 0<b?b:this.$q(a,b,1E3)};return f});define("bq",[],function(){return function(a,b,c,d){this.name=a;this.Nv=b;this.Tz=c;this.Gwa=d}});
define("kS","require,do,fg,ll,bZ,fV,ep,k,hB,dx,V,kX,bq".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("fV"),g=a("ep"),k=a("k"),i=a("hB"),p=a("dx"),j=a("V"),l=a("kX"),q=a("bq"),o=c.extend(k,function(){k.call(this);this.Uc("Container");this.hc=this.Fc=this.ee=this.He=this.Ya=this.Na=this.s3=this.r3=0;this.fT=this.lT=this.bi=this.ai=y;this.l3=0;this.HQ=this.GQ=m;this.JQ=this.IQ=0;this.$r=r;this.PJ=e.Y_;this.fr=y;this.tI=r;this.kn=y;this.JL=r});o.nb={overflow:e.tt,scrollBarColor:"#000000",
scrollBarWidth:10,scrollBarMargin:5,scrollBarHorizontalMargin:m,scrollBarVerticalMargin:m,scrollBarOpacity:0.5,scrollBarVisible:g.wc};b.defaults(o.nb,k.nb);o.prototype.ck=function(){this.tI=new i(this.pS());this.tI.YP.bind("mousedown touchstart",b.bind(this.Xla,this));this.ck=Q("tI");return this.tI};o.prototype.dk=function(){this.JL=new p(this.pS());this.JL.YP.bind("mousedown touchstart",b.bind(this.rta,this));this.dk=Q("JL");return this.JL};o.prototype.scrollIntoView=function(a){var b=a.da,b=Math.min(b,
Math.max(b+a.Aa()-this.He,this.Fc)),c=a.fa,a=Math.min(c,Math.max(c+a.eb()-this.ee,this.hc));this.scrollTo(b,a)};o.prototype.scrollTo=function(a,b){var c=this.Fc;a>this.Fc?this.nH()&&(c=Math.min(a,this.Na-this.He)):a<this.Fc&&this.mH()&&(c=Math.max(a,0));var e=this.hc;b>this.hc?this.lH()&&(e=Math.min(b,this.Ya-this.ee)):b<this.hc&&this.oH()&&(e=Math.max(b,0));this.OD(c,e)};o.prototype.dea=function(){if(this.lH()){for(var a=Math.max(0,this.Ya-this.ee),b=Math.min(a,this.hc+this.ee*0.5),c=a=Math.min(a,
this.hc+this.ee),e=this.Oa().slice(),d=e.shift();e.length;d=e.shift())if(d.get("visible")){var i=d.fa;i+d.eb()>this.hc+this.ee&&i>=b&&i<a&&i<c&&(c=i)}this.OD(this.Fc,c)}};o.prototype.lH=function(){return this.J2()&&this.hc+this.ee<this.Ya};o.prototype.fea=function(){if(this.oH()){for(var a=Math.max(0,this.hc-this.ee),b=Math.max(0,this.hc-this.ee*0.5),c=a,e=this.Oa().slice(),d=e.shift();e.length;d=e.shift())if(d.get("visible")){var i=d.fa,d=i+d.eb();i<this.hc&&d>=a+this.ee&&d<b+this.ee&&d>c+this.ee&&
(c=d-this.ee)}this.OD(this.Fc,c)}};o.prototype.oH=function(){return this.J2()&&this.hc>0};o.prototype.eea=function(){if(this.nH()){for(var a=Math.max(0,this.Na-this.He),b=Math.min(a,this.Fc+this.He*0.5),c=a=Math.min(a,this.Fc+this.He),e=this.Oa().slice(),d=e.shift();e.length;d=e.shift())if(d.get("visible")){var i=d.da;i+d.Aa()>this.Fc+this.He&&i>=b&&i<a&&i<c&&(c=i)}this.OD(c,this.hc)}};o.prototype.nH=function(){return this.I2()&&this.Fc+this.He<this.Na};o.prototype.scrollLeft=function(){if(this.mH()){for(var a=
Math.max(0,this.Fc-this.He),b=Math.max(0,this.Fc-this.He*0.5),c=a,e=this.Oa().slice(),d=e.shift();e.length;d=e.shift())if(d.get("visible")){var i=d.da,d=i+d.Aa();i<this.Fc&&d>=a+this.He&&d<b+this.He&&d>c+this.He&&(c=d-this.He)}this.OD(c,this.hc)}};o.prototype.mH=function(){return this.I2()&&this.Fc>0};o.prototype.OD=function(a,b){this.ai=this.Fc!=a;this.bi=this.hc!=b;this.gn();this.$r=new l("cubic_in_out",[new q("hScrollPosition",this.Fc,a),new q("vScrollPosition",this.hc,b)],500);j.La(this.IP,this)};
o.prototype.J2=function(){return this.kn&&this.ee<this.Ya};o.prototype.I2=function(){return this.fr&&this.He<this.Na};o.prototype.za=function(){this.$j(o.nb)};o.prototype.Wia=function(){this.lT=n;this.gn()};o.prototype.Via=function(){this.lT=y;this.gn()};o.prototype.Xla=function(){this.ai=n};o.prototype.rta=function(){this.bi=n};o.prototype.Sia=function(a){if(this.ai||this.bi){this.Ra().bind(d.Nc,this.j3,this);this.Ra().bind(d.ec,this.k3,this);this.Lq=a.pageX;this.Mq=a.pageY;this.gn()}else this.m3(a)};
o.prototype.j3=function(a){if(this.ai){var b=(a.pageX-this.Lq)*this.Na/this.ck().ad();this.Fc=this.Fc+b}else if(this.bi){b=(a.pageY-this.Mq)*this.Ya/this.dk().Od();this.hc=this.hc+b}this.Lq=a.pageX;this.Mq=a.pageY;this.yp()};o.prototype.k3=function(){this.Ra().unbind(d.Nc,this.j3,this);this.Ra().unbind(d.ec,this.k3,this);this.bi=this.ai=y;this.gn()};o.prototype.L2=function(a){return this.kn&&(a>0&&this.hc>0||a<0&&this.hc<this.Ya-this.ee)?n:y};o.prototype.Uia=function(a){if(this.kn){this.hc=this.hc-
a.Dp*this.ee*0.1;this.yp()}};o.prototype.m3=function(a){if(this.fr||this.kn){this.Ra().bind(d.Nc,this.n3,this);this.Ra().bind(d.ec,this.o3,this);this.fT=n;this.Lq=a.pageX;this.Mq=a.pageY;this.gn();this.oma()}};o.prototype.n3=function(a){var b=a.pageX-this.Lq,c=a.pageY-this.Mq;if(!this.ai&&!this.bi&&b*b+c*c>25){this.ai=this.fr;this.bi=this.kn;this.gn()}if(this.ai||this.bi){this.Fc=this.Fc-b;this.hc=this.hc-c;this.Lq=a.pageX;this.Mq=a.pageY;this.yp();this.Hsa()}};o.prototype.o3=function(){this.Ra().unbind(d.Nc,
this.n3,this);this.Ra().unbind(d.ec,this.o3,this);this.fT=y;this.gn();var a=Math.max(Math.abs(this.IQ/0.001),Math.abs(this.JQ/0.001));this.$r=new l("linear",[new q("hScrollPosition",this.Fc,this.Fc-0.5*this.IQ*a),new q("vScrollPosition",this.hc,this.hc-0.5*this.JQ*a)],a);j.La(this.IP,this)};o.prototype.oma=function(){this.GQ=this.Lq;this.HQ=this.Mq};o.prototype.Hsa=function(){var a=(new Date).getTime(),b=a-this.l3;if(b>10){this.l3=a;this.IQ=(this.Lq-this.GQ)/b;this.JQ=(this.Mq-this.HQ)/b;this.GQ=
this.Lq;this.HQ=this.Mq}};o.prototype.IP=function(a){if(this.$r&&!this.$r.Qe()&&(this.ai||this.bi)){this.$r.fb(a);if(this.ai){this.Fc=this.$r.Bb("hScrollPosition");if(this.Fc<0||this.Fc>this.Na-this.He)this.ai=y}if(this.bi){this.hc=this.$r.Bb("vScrollPosition");if(this.hc<0||this.hc>this.Ya-this.ee)this.bi=y}this.yp();j.La(this.IP,this)}else{this.bi=this.ai=y;this.$r=r;this.gn()}};o.prototype.yp=function(){this.Fc=this.fr?Math.max(0,Math.min(this.Na-this.He,this.Fc)):0;this.hc=this.kn?Math.max(0,
Math.min(this.Ya-this.ee,this.hc)):0;this.ck().Ia(this.Fc);this.dk().Ia(this.hc);this.Pa().bya(this.Fc);this.Pa().Zya(this.hc);this.Gh();if(this.z8!=this.Fc||this.A8!=this.hc){this.z8!==m&&this.A8!==m&&this.trigger(new f(d.vm));this.z8=this.Fc;this.A8=this.hc}};o.prototype.gn=function(){var a;a=this.get("scrollBarVisible")==g.ALWAYS?n:this.gk?this.ai||this.bi||this.fT:this.ai||this.bi||this.lT;this.ck().xe(this.fr&&a);this.dk().xe(this.kn&&a);this.Gh()};o.prototype.Fa=function(){k.prototype.Fa.call(this);
if(!this.Tia){this.Tia=n;if(this.gk)this.bind(d.Eb,this.m3,this);else{this.bind(d.Eb,this.Sia,this);this.bind(d.wc,this.Wia,this);this.bind(d.Mb,this.Via,this);this.bind(d.nq,this.Uia,this)}}};o.prototype.ja=function(){if(this.n("overflow")){this.PJ=this.k("overflow");this.q("overflow");this.Lc()}if(this.n("scrollBarColor")){this.ck().Nz(this.k("scrollBarColor"));this.dk().Nz(this.k("scrollBarColor"));this.q("scrollBarColor")}if(this.n("scrollBarWidth")){this.ck().RF(this.k("scrollBarWidth"));this.dk().RF(this.k("scrollBarWidth"));
this.q("scrollBarWidth")}if(this.n("scrollBarMargin")||this.n("scrollBarVerticalMargin")||this.n("scrollBarHorizontalMargin")){var a=this.k("scrollBarHorizontalMargin","scrollBarMargin"),b=this.k("scrollBarVerticalMargin","scrollBarMargin");this.ck().oea(a);this.ck().Aea(b);this.dk().oea(a);this.dk().Aea(b);this.q("scrollBarMargin");this.q("scrollBarVerticalMargin");this.q("scrollBarHorizontalMargin")}if(this.n("scrollBarOpacity")){this.ck().Hj(this.k("scrollBarOpacity"));this.dk().Hj(this.k("scrollBarOpacity"));
this.q("scrollBarOpacity")}k.prototype.ja.call(this)};o.prototype.Bi=function(){k.prototype.Bi.call(this);this.Jsa();this.Wsa();this.Usa();this.gn();this.Gh()};o.prototype.Jsa=function(){for(var a=0,b=0,c=0,e=0,d=this.Oa(),i=0;i<d.length;i++){var g=d[i];if(g.get("visible")){e=Math.min(e,g.da);c=Math.min(c,g.fa);a=Math.max(a,g.da+g.Aa());b=Math.max(b,g.fa+g.eb())}}this.r3=e;this.s3=c;this.Na=a;this.Ya=b};o.prototype.Wsa=function(){if(this.PJ==e.tt){this.He=this.Na;this.ee=this.Ya}else{this.He=Math.min(this.Hd(),
this.Na);this.ee=Math.min(this.Gd(),this.Ya)}};o.prototype.Usa=function(){var a=this.r3<0||this.s3<0||this.Na>this.He||this.Ya>this.ee;if(this.PJ==e.vm){this.fr=this.He<this.Na;var b=(this.kn=this.ee<this.Ya)&&this.fr;this.ck().setSize(this.He,this.Na);this.ck().hea(b);this.dk().setSize(this.ee,this.Ya);this.dk().hea(b);this.Pa().Pz(!a)}else{this.kn=this.fr=y;this.PJ==e.tt?this.Pa().Pz(n):this.Pa().Pz(!a)}this.yp()};o.prototype.Re=function(){this.dk().Re();this.ck().Re();k.prototype.Re.call(this)};
return o});define("N",[],function(){return{kf:"vertical",Be:"horizontal"}});define("dK",["require"],function(){return{ys:function(a){return!a?"":a.split(",").map(function(a){return a.trim()}).filter(function(a){return""!=a}).map(function(a){"'"!=a[0]&&'"'!=a[0]&&(a="'"+a+"'");return a}).join(", ")}}});
define("gP","require,jquery.mod,do,fg,jY,N,d,fe,dK".split(","),function(a){function b(a){var b=a.rj.width(),c=a.rj.height();a.get("fontStyle")=="italic"&&(b=b+c*1/5);return Math.round(b)}var c=a("jquery.mod"),d=a("do"),f=a("fg"),e=a("jY"),g=a("N"),k=a("d");a("fe");var i=a("dK"),a=f.extend(k,function(){k.call(this);this.Uc("Label");this.rj=this.JD=r});a.nb={};a.prototype.za=function(){k.prototype.za.call(this);this.f("fontFamily");this.f("fontSize");this.f("fontColor");this.f("fontWeight");this.f("fontStyle");
this.f("horizontalAlign",e.qa);this.f("verticalAlign",e.tc);this.f("direction",g.Be);this.f("text","");this.f("textDecoration");this.f("textShadowBlurRadius",3);this.f("textShadowColor","#000000");this.f("textShadowHorizontalLength",0);this.f("textShadowOpacity",0);this.f("textShadowVerticalLength",0)};a.prototype.Fa=function(){k.prototype.Fa.call(this);if(!this.rj){this.JD=document.createElement("span");this.rj=c(this.JD);this.bW({position:"absolute","text-align":"center",cursor:"inherit","white-space":"nowrap",
transform:"translate3d(0, 0, 0)"});var a=this.Pa();a.Pz(y);a.append(this.rj)}};a.prototype.To=function(){k.prototype.To.call(this);var a=this.Pa();this.$h=b(this)+a.qz()+a.sz();this.Zh=this.rj.height()+a.tz()+a.mz();p(this)};a.prototype.ja=function(){var a,b={};if(this.n("direction")||this.n("text")){switch(this.k("direction")){case g.kf:b["line-height"]="100%";this.rj.html(this.rj.text(this.k("text")).text().split("").join("<br/>"));break;default:b["line-height"]="normal";this.rj.text(this.k("text"));
this.rj.html(this.rj.html().split(" ").join(" "))}this.q("direction");this.q("text");setTimeout(function(){this.Wa();this.Lc()}.bind(this),0)}if(this.n("fontFamily")){a=this.k("fontFamily");d(a).isString()||(a="");b.fontFamily=i.ys(a);this.q("fontFamily");this.Wa();this.Lc()}if(this.n("fontSize")){a=this.k("fontSize");d(a).isNumber()?a=a+"px":d(a).isString()||(a="");b.fontSize=a;this.q("fontSize");this.Wa();this.Lc()}if(this.n("fontColor")){a=this.k("fontColor");d(a).isString()||(a="");b.color=
a;this.q("fontColor")}if(this.n("fontWeight")){a=this.k("fontWeight");switch(a){case "bold":case "bolder":case "lighter":case "100":case "200":case "300":case "400":case "500":case "600":case "700":case "800":case "900":case "normal":break;default:a="normal"}b.fontWeight=a;this.q("fontWeight");this.Wa();this.Lc()}if(this.n("fontStyle")){a=this.k("fontStyle");switch(a){case "italic":case "normal":break;default:a="normal"}b.fontStyle=a;this.q("fontStyle");this.Wa();this.Lc()}if(this.n("textDecoration")){a=
this.k("textDecoration");switch(a){case "underline":case "overline":case "line-through":case "none":break;default:a="none"}b.textDecoration=a;this.q("textDecoration");this.Wa();this.Lc()}if(this.n("horizontalAlign")){this.Lc();this.q("horizontalAlign")}if(this.n("verticalAlign")){this.Lc();this.q("verticalAlign")}a=["textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"];if(d(a).any(function(a){return this.n(a)},this)){var c={};d(a).each(function(a){c[a]=
this.k(a);this.q(a)},this);b["-moz-text-shadow"]=b["-webkit-text-shadow"]=b["text-shadow"]=[c.textShadowHorizontalLength+"px",c.textShadowVerticalLength+"px",c.textShadowBlurRadius+"px","rgba("+parseInt("0x"+c.textShadowColor.substr(1,2))+", "+parseInt("0x"+c.textShadowColor.substr(3,2))+", "+parseInt("0x"+c.textShadowColor.substr(5,2))+", "+c.textShadowOpacity+")"].join(" ");a=c.textShadowVerticalLength==0&&this.k("textShadowHorizontalLength")==0?135:Math.round(4*Math.atan2(c.textShadowHorizontalLength,
-c.textShadowVerticalLength)/Math.PI)*45;b.filter="progid:DXImageTransform.Microsoft.Shadow(color=#"+("00"+(255*c.textShadowOpacity).toString(16)).slice(-2)+c.textShadowColor.substr(1,6)+",direction="+a+")";this.Pa().Pz((c.textShadowHorizontalLength>0||c.textShadowVerticalLength>0||c.textShadowBlurRadius>0)&&c.textShadowOpacity>0)}this.bW(b);k.prototype.ja.call(this)};a.prototype.Bi=function(){var a={left:"auto",right:"auto",top:"auto",bottom:"auto"};switch(this.k("horizontalAlign")){case e.qa:a.left=
"0";break;case e.Ma:this.Re();a.left=this.Hd()-b(this)+"px";break;case e.Mc:this.Re();a.left=Math.max(0,Math.round((this.Hd()-b(this))*0.5))+"px"}switch(this.k("verticalAlign")){case e.mb:a.top="0";break;case e.lb:this.Re();a.top=this.Gd()-this.JD.clientHeight+"px";break;case e.tc:this.Re();a.top=Math.max(0,Math.round((this.Gd()-this.JD.clientHeight)*0.5))+"px"}this.bW(a)};a.prototype.bW=function(a){var b=this.JD.style,c;for(c in a)b[c]=a[c]};var p=function(){function a(){!i&&c()&&(i=setTimeout(function(){i=
r;var c=(new Date).getTime()-5E3,e;for(e in d){var g=d[e];g.timestamp<c&&delete d[e];var k=g.label;if(g.width!=b(k)||g.height!=k.rj.height()){k.Wa();k.Lc()}}a()},500))}function c(){for(var a in d)return n;return y}var e=1,d={},i=r;return function(c){c.q6||(c.q6=e++);d[c.q6]={label:c,timestamp:(new Date).getTime(),width:b(c),height:c.rj.height()};a()}}();return a});
define("jb","require,fg,do,ck,R,ll,bZ,fF,dm,fV,fm,kS,gP".split(","),function(a){var b=a("fg"),c=a("do"),d=a("ck"),f=a("R"),e=a("ll"),g=a("bZ"),k=a("fF"),i=a("dm"),p=a("fV"),j=a("fm"),l=a("kS"),q=a("gP"),o=b.extend(l,function(){this.Uc("Button");l.call(this);this.Mf=this.sa=r;this.set("childrenInteractionEnabled",y);this.set("contentOpaque",n);this.set("creationPolicy",d.pt);this.set("overflow",p.Y_);this.set("autoRolledOver",n);this.set("autoPressed",n);this.set("cursor",f.me)});o.prototype.za=function(){l.prototype.za.call(this);
this.f("label");this.f("fontFamily");this.f("fontSize");this.f("fontColor");this.f("fontWeight");this.f("fontStyle");this.f("textDecoration");this.f("textShadowBlurRadius");this.f("textShadowColor");this.f("textShadowHorizontalLength");this.f("textShadowOpacity");this.f("textShadowVerticalLength");this.f("layout","horizontal");this.f("iconWidth");this.f("iconHeight");this.f("iconBeforeLabel");this.f("gap",5);this.f("mode",i.Wc);this.f("buttonGroup");this.f("paddingLeft",5);this.f("paddingTop",5);
this.f("paddingRight",5);this.f("paddingBottom",5);this.f("pressed");this.h("rollOverOpacity",j.u,"opacity");this.h("rollOverIconWidth",j.u,"iconWidth");this.h("rollOverIconHeight",j.u,"iconHeight");this.h("rollOverFontSize",j.u,"fontSize");this.h("rollOverFontColor",j.u,"fontColor");this.h("rollOverFontWeight",j.u,"fontWeight");this.h("rollOverFontStyle",j.u,"fontStyle");this.h("rollOverTextDecoration",j.u,"textDecoration");this.h("rollOverTextShadowBlurRadius",j.u,"textShadowBlurRadius");this.h("rollOverTextShadowColor",
j.u,"textShadowColor");this.h("rollOverTextShadowHorizontalLength",j.u,"textShadowHorizontalLength");this.h("rollOverTextShadowOpacity",j.u,"textShadowOpacity");this.h("rollOverTextShadowVerticalLength",j.u,"textShadowVerticalLength");this.h("rollOverBorderSize",j.u,"borderSize");this.h("rollOverBorderLeftSize",j.u,"borderLeftSize");this.h("rollOverBorderTopSize",j.u,"borderTopSize");this.h("rollOverBorderRightSize",j.u,"borderRightSize");this.h("rollOverBorderBottomSize",j.u,"borderBottomSize");
this.h("rollOverBorderColor",j.u,"borderColor");this.h("rollOverBorderLeftColor",j.u,"borderLeftColor");this.h("rollOverBorderTopColor",j.u,"borderTopColor");this.h("rollOverBorderRightColor",j.u,"borderRightColor");this.h("rollOverBorderBottomColor",j.u,"borderBottomColor");this.h("rollOverShadow",j.u,"shadow");this.h("rollOverShadowHorizontalLength",j.u,"shadowHorizontalLength");this.h("rollOverShadowVerticalLength",j.u,"shadowVerticalLength");this.h("rollOverShadowBlurRadius",j.u,"shadowBlurRadius");
this.h("rollOverShadowSpread",j.u,"shadowSpread");this.h("rollOverShadowOpacity",j.u,"shadowOpacity");this.h("rollOverShadowColor",j.u,"shadowColor");this.h("rollOverBackgroundOpacity",j.u,"backgroundOpacity");this.h("rollOverBackgroundColor",j.u,"backgroundColor");this.h("rollOverBackgroundColorRatios",j.u,"backgroundColorRatios");this.h("rollOverBackgroundColorDirection",j.u,"backgroundColorDirection");this.h("pressedLabel",j.Ca,"label");this.h("pressedOpacity",j.Ca,"opacity");this.h("pressedIconWidth",
j.Ca,"iconWidth");this.h("pressedIconHeight",j.Ca,"iconHeight");this.h("pressedFontSize",j.Ca,"fontSize");this.h("pressedFontColor",j.Ca,"fontColor");this.h("pressedFontWeight",j.Ca,"fontWeight");this.h("pressedFontStyle",j.Ca,"fontStyle");this.h("pressedTextDecoration",j.Ca,"textDecoration");this.h("pressedTextShadowBlurRadius",j.Ca,"textShadowBlurRadius");this.h("pressedTextShadowColor",j.Ca,"textShadowColor");this.h("pressedTextShadowHorizontalLength",j.Ca,"textShadowHorizontalLength");this.h("pressedTextShadowOpacity",
j.Ca,"textShadowOpacity");this.h("pressedTextShadowVerticalLength",j.Ca,"textShadowVerticalLength");this.h("pressedBorderSize",j.Ca,"borderSize");this.h("pressedBorderLeftSize",j.Ca,"borderLeftSize");this.h("pressedBorderTopSize",j.Ca,"borderTopSize");this.h("pressedBorderRightSize",j.Ca,"borderRightSize");this.h("pressedBorderBottomSize",j.Ca,"borderBottomSize");this.h("pressedBorderColor",j.Ca,"borderColor");this.h("pressedBorderLeftColor",j.Ca,"borderLeftColor");this.h("pressedBorderTopColor",
j.Ca,"borderTopColor");this.h("pressedBorderRightColor",j.Ca,"borderRightColor");this.h("pressedBorderBottomColor",j.Ca,"borderBottomColor");this.h("pressedShadow",j.Ca,"shadow");this.h("pressedShadowHorizontalLength",j.Ca,"shadowHorizontalLength");this.h("pressedShadowVerticalLength",j.Ca,"shadowVerticalLength");this.h("pressedShadowBlurRadius",j.Ca,"shadowBlurRadius");this.h("pressedShadowSpread",j.Ca,"shadowSpread");this.h("pressedShadowOpacity",j.Ca,"shadowOpacity");this.h("pressedShadowColor",
j.Ca,"shadowColor");this.h("pressedBackgroundOpacity",j.Ca,"backgroundOpacity");this.h("pressedBackgroundColor",j.Ca,"backgroundColor");this.h("pressedBackgroundColorRatios",j.Ca,"backgroundColorRatios");this.h("pressedBackgroundColorDirection",j.Ca,"backgroundColorDirection");this.h("pressedLabel",j.$a,"label");this.h("pressedRollOverOpacity",j.$a,"opacity");this.h("pressedRollOverIconWidth",j.$a,"iconWidth");this.h("pressedRollOverIconHeight",j.$a,"iconHeight");this.h("pressedRollOverFontSize",
j.$a,"fontSize");this.h("pressedRollOverFontColor",j.$a,"fontColor");this.h("pressedRollOverFontWeight",j.$a,"fontWeight");this.h("pressedRollOverFontStyle",j.$a,"fontStyle");this.h("pressedRollOverTextDecoration",j.$a,"textDecoration");this.h("pressedRollOverTextShadowBlurRadius",j.$a,"textShadowBlurRadius");this.h("pressedRollOverTextShadowColor",j.$a,"textShadowColor");this.h("pressedRollOverTextShadowHorizontalLength",j.$a,"textShadowHorizontalLength");this.h("pressedRollOverTextShadowOpacity",
j.$a,"textShadowOpacity");this.h("pressedRollOverTextShadowVerticalLength",j.$a,"textShadowVerticalLength");this.h("pressedRollOverBorderSize",j.$a,"borderSize");this.h("pressedRollOverBorderLeftSize",j.$a,"borderLeftSize");this.h("pressedRollOverBorderTopSize",j.$a,"borderTopSize");this.h("pressedRollOverBorderRightSize",j.$a,"borderRightSize");this.h("pressedRollOverBorderBottomSize",j.$a,"borderBottomSize");this.h("pressedRollOverBorderColor",j.$a,"borderColor");this.h("pressedRollOverBorderLeftColor",
j.$a,"borderLeftColor");this.h("pressedRollOverBorderTopColor",j.$a,"borderTopColor");this.h("pressedRollOverBorderRightColor",j.$a,"borderRightColor");this.h("pressedRollOverBorderBottomColor",j.$a,"borderBottomColor");this.h("pressedRollOverShadow",j.$a,"shadow");this.h("pressedRollOverShadowHorizontalLength",j.$a,"shadowHorizontalLength");this.h("pressedRollOverShadowVerticalLength",j.$a,"shadowVerticalLength");this.h("pressedRollOverShadowBlurRadius",j.$a,"shadowBlurRadius");this.h("pressedRollOverShadowSpread",
j.$a,"shadowSpread");this.h("pressedRollOverShadowOpacity",j.$a,"shadowOpacity");this.h("pressedRollOverShadowColor",j.$a,"shadowColor");this.h("pressedRollOverBackgroundOpacity",j.$a,"backgroundOpacity");this.h("pressedRollOverBackgroundColor",j.$a,"backgroundColor");this.h("pressedRollOverBackgroundColorRatios",j.$a,"backgroundColorRatios");this.h("pressedRollOverBackgroundColorDirection",j.$a,"backgroundColorDirection")};o.prototype.SQ=C();o.prototype.Fa=function(){l.prototype.Fa.call(this);if(!this.Mf){this.Mf=
this.SQ();this.la(this.Mf)}if(!this.sa){this.sa=new q;this.la(this.sa)}};o.prototype.JA=function(){if(this.get("pressed")){this.set("pressed",y);this.trigger(new g(e.Lh))}else{this.set("pressed",n);this.trigger(new g(e.Bg))}};o.prototype.ja=function(){var a=y;if(this.n("mode")){if(this.k("mode")==i.Wc){this.unbind(e.U,this.JA,this,n);this.set("autoPressed",n)}else{this.bind(e.U,this.JA,this,n);this.set("autoPressed",y)}this.q("mode");a=n}if(a||this.n("pressed"))this.k("mode")==i.Mh?this.Fy(this.k("pressed")==
n):a&&this.Fy(y);if(this.n("label")){a=this.k("label");this.sa.set("text",a);this.sa.set("visible",a?n:y);this.q("label")}this.hb(o.x1,o.y1,[this.sa],n,n);if(this.n("iconBeforeLabel")){this.k("iconBeforeLabel")==y?this.Fj(this.sa,0):this.Fj(this.Mf,0);this.q("iconBeforeLabel")}if(this.n("iconWidth")){this.Mf.set("width",this.k("iconWidth"));this.q("iconWidth")}if(this.n("iconHeight")){this.Mf.set("height",this.k("iconHeight"));this.q("iconHeight")}if(this.n("buttonGroup")){(a=this.k("buttonGroup"))?
k.register(this,a):k.ZF(this);this.q("buttonGroup")}this.hb(["horizontalAlign","verticalAlign"],{},[this.Mf],n,y);l.prototype.ja.call(this)};o.x1=["fontFamily","fontSize","fontColor","fontWeight","fontStyle","textDecoration","textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"];o.y1={};c(o.x1).each(function(a){o.y1[a]=a});return o});
define("hq",["require","fg","jb","dW","ll"],function(a){var b=a("fg"),c=a("jb"),d=a("dW"),a=a("ll"),b=b.extend(c,function(){c.call(this)});d.A("BaseButton",b).B("UIComponent").K({label:"string",gap:"number",horizontalAlign:"enum[center, left, right]",iconBeforeLabel:"bool",layout:"enum[horizontal, vertical]",mode:"enum[push, toggle]",buttonGroup:"string",verticalAlign:"enum[bottom, middle, top]",iconWidth:"or[number, percent]",iconHeight:"or[number, percent]",fontFamily:"string",fontSize:"or[number, size]",
fontColor:"color",fontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",fontStyle:"enum[italic, normal]",textDecoration:"enum[underline, overline, line-through, none]",textShadowBlurRadius:"number",textShadowColor:"color",textShadowHorizontalLength:"number",textShadowOpacity:"number",textShadowVerticalLength:"number",rollOverIconWidth:"or[number, percent]",rollOverIconHeight:"or[number, percent]",rollOverFontFamily:"string",rollOverFontSize:"or[number, size]",
rollOverFontColor:"color",rollOverFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",rollOverFontStyle:"enum[italic, normal]",rollOverTextDecoration:"enum[underline, overline, line-through, none]",rollOverTextShadowBlurRadius:"number",rollOverTextShadowColor:"color",rollOverTextShadowHorizontalLength:"number",rollOverTextShadowOpacity:"number",rollOverTextShadowVerticalLength:"number",rollOverBorderSize:"number",rollOverBorderLeftSize:"number",rollOverBorderTopSize:"number",
rollOverBorderRightSize:"number",rollOverBorderBottomSize:"number",rollOverBorderColor:"color",rollOverBorderLeftColor:"color",rollOverBorderTopColor:"color",rollOverBorderRightColor:"color",rollOverBorderBottomColor:"color",rollOverShadow:"bool",rollOverShadowHorizontalLength:"number",rollOverShadowVerticalLength:"number",rollOverShadowBlurRadius:"number",rollOverShadowSpread:"number",rollOverShadowColor:"color",rollOverShadowOpacity:"number",rollOverBackgroundOpacity:"number",rollOverBackgroundColor:"or[array[color], color]",
rollOverBackgroundColorRatios:"array[number]",rollOverBackgroundColorDirection:"enum[horizontal, vertical]",pressed:"bool",pressedLabel:"string",pressedIconWidth:"or[number, percent]",pressedIconHeight:"or[number, percent]",pressedFontFamily:"string",pressedFontSize:"or[number, size]",pressedFontColor:"color",pressedFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",pressedFontStyle:"enum[italic, normal]",pressedTextDecoration:"enum[underline, overline, line-through, none]",
pressedTextShadowBlurRadius:"number",pressedTextShadowColor:"color",pressedTextShadowHorizontalLength:"number",pressedTextShadowOpacity:"number",pressedTextShadowVerticalLength:"number",pressedOpacity:"number",pressedBorderSize:"number",pressedBorderLeftSize:"number",pressedBorderTopSize:"number",pressedBorderRightSize:"number",pressedBorderBottomSize:"number",pressedBorderColor:"color",pressedBorderLeftColor:"color",pressedBorderTopColor:"color",pressedBorderRightColor:"color",pressedBorderBottomColor:"color",
pressedShadow:"bool",pressedShadowHorizontalLength:"number",pressedShadowVerticalLength:"number",pressedShadowBlurRadius:"number",pressedShadowSpread:"number",pressedShadowOpacity:"number",pressedShadowColor:"color",pressedBackgroundOpacity:"number",pressedBackgroundColor:"or[array[color], color]",pressedBackgroundColorRatios:"array[number]",pressedBackgroundColorDirection:"enum[horizontal, vertical]",pressedRollOverIconWidth:"or[number, percent]",pressedRollOverIconHeight:"or[number, percent]",pressedRollOverFontFamily:"string",
pressedRollOverFontSize:"or[number, size]",pressedRollOverFontColor:"color",pressedRollOverFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",pressedRollOverFontStyle:"enum[italic, normal]",pressedRollOverTextDecoration:"enum[underline, overline, line-through, none]",pressedRollOverTextShadowBlurRadius:"number",pressedRollOverTextShadowColor:"color",pressedRollOverTextShadowHorizontalLength:"number",pressedRollOverTextShadowOpacity:"number",pressedRollOverTextShadowVerticalLength:"number",
pressedRollOverOpacity:"number",pressedRollOverBorderSize:"number",pressedRollOverBorderLeftSize:"number",pressedRollOverBorderTopSize:"number",pressedRollOverBorderRightSize:"number",pressedRollOverBorderBottomSize:"number",pressedRollOverBorderColor:"color",pressedRollOverBorderLeftColor:"color",pressedRollOverBorderTopColor:"color",pressedRollOverBorderRightColor:"color",pressedRollOverBorderBottomColor:"color",pressedRollOverShadow:"bool",pressedRollOverShadowHorizontalLength:"number",pressedRollOverShadowVerticalLength:"number",
pressedRollOverShadowBlurRadius:"number",pressedRollOverShadowSpread:"number",pressedRollOverShadowOpacity:"number",pressedRollOverShadowColor:"color",pressedRollOverBackgroundOpacity:"number",pressedRollOverBackgroundColor:"or[array[color], color]",pressedRollOverBackgroundColorRatios:"array[number]",pressedRollOverBackgroundColorDirection:"enum[horizontal, vertical]"}).aq(["fontSize","rollOverFontSize","pressedFontSize","pressedRollOverFontSize"]).Vb([a.Bg,a.Lh]).Cf([a.U]);return b});
define("jn",[],function(){return{NONE:"none",Vn:"fill",Se:"fit_inside",tm:"fit_outside",Wk:"fit_to_width",ih:"fit_to_height",hfa:"custom"}});
define("jF","require,do,jquery.mod,fg,ll,ge,r,jY,jn,d,fe,id".split(","),function(a){function b(a){this.jQ=a;this.fd=[];this.Ph=r}var c=a("do"),d=a("jquery.mod"),f=a("fg"),e=a("ll"),g=a("ge"),k=a("r"),i=a("jY"),p=a("jn"),j=a("d"),l=a("fe"),q=a("id");b.cj=document.createElement("a");b.prototype.Qia=function(a){b.cj.href=a;return b.cj.href};b.prototype.load=function(a,b,d){a=this.Qia(a);if(this.Ph&&!this.Ph.Mp()){this.Ph.cancel();this.fd=c(this.fd).without(this.Ph)}if(this.Ph=c(this.fd).find(function(b){return b.Bj()==
a}))this.fd=c(this.fd).without(this.Ph);else{this.Ph=new q(g.O0);this.Ph.load(a)}for(this.fd.splice(0,0,this.Ph);this.fd.length>this.jQ;)this.fd.pop().cancel();if(b){var i=this.Ph,k=function(){b.call(d||window,i.ve(),i.ad(),i.Od())};this.Ph.Mp()?k():this.Ph.bind(e.T,k)}};b.prototype.clear=function(){this.fd.forEach(function(a){a.cancel()});this.Ph=r};a=f.extend(j,function(a){j.call(this);this.Uc("Image");this.jQ=a||1;this.oX=y;this.Vh=i.qa;this.vI=y;this.pi=i.mb;this.ML=y;this.Ed=p.NONE;this.xV=y;
this.fy=this.gy=0;this.WS=this.sU=y;this.Ya=this.Na=0;this.oo=y;this.FT=this.Wh=this.yb=this.DI=this.CI=r;this.bind(e.vb,this.mma,this);this.bind(e.od,this.nma,this)});a.prototype.oS=function(){this.FT=new b(this.jQ);this.oS=Q("FT");return this.FT};a.prototype.za=function(){j.prototype.za.call(this);this.f("horizontalAlign",i.qa);this.f("verticalAlign",i.mb);this.f("scaleMode",p.NONE)};a.prototype.set=function(a,b){if(a=="url"&&this.get("url")!=b){this.oX=n;this.Dc()}j.prototype.set.call(this,a,b)};
a.prototype.Oz=function(a){if(this.Vh!=a){this.Vh=a;this.vI=n;this.Dc()}};a.prototype.Sz=function(a){if(this.pi!=a){this.pi=a;this.ML=n;this.Dc()}};a.prototype.Qs=function(a){if(this.Ed!=a){this.Ed=a;this.xV=n;this.Dc();this.Wa()}};a.prototype.mma=function(){this.oo=n;this.Dc()};a.prototype.nma=function(){this.Faa()};var o={position:"static",cursor:"inherit",display:"inline",verticalAlign:"top",visibility:"hidden","pointer-events":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"none",
"-webkit-user-select":"none","touch-callout":"none","-webkit-touch-callout":"none"};k.browser()==k.Di&&k.Xa()&&(o.transform="translate3d(0,0,0)");a.prototype.j2=function(a,b,c){this.gy=b?b:0;this.fy=c?c:0;if(this.yb){this.yb.remove();this.yb=r}if(this.Wh=a){this.yb=d(this.Wh);l.css(this.Wh,o);this.CI.append(this.yb)}this.sU=this.WS=n;this.Dc();this.Wa();this.yb&&this.trigger(e.T)};a.prototype.Fa=function(){j.prototype.Fa.call(this);if(!this.CI){this.DI=document.createElement("div");this.CI=d(this.DI);
l.css(this.DI,{position:"static",overflow:"hidden",cursor:"inherit"});this.Pa().append(this.CI)}};a.prototype.To=function(){this.$h=this.gy+this.ti()+this.xn();this.Zh=this.fy+this.yn()+this.oz();this.g6=this.gy==0&&this.fy==0?0:this.gy/this.fy;this.aC=this.bC=0};a.prototype.ja=function(){if(this.n("scaleMode")){this.Qs(this.k("scaleMode"));this.q("scaleMode")}if(this.n("horizontalAlign")){this.Oz(this.k("horizontalAlign"));this.q("horizontalAlign")}if(this.n("verticalAlign")){this.Sz(this.k("verticalAlign"));
this.q("verticalAlign")}if(this.f2())this.oo=n;j.prototype.ja.call(this);this.Faa();if(this.Lva()){var a=y;if(this.xV||this.sU||this.oo){var b=this.Hd(),c=this.Gd(),e=this.gy,d=this.fy,g,k;if(e==0||d==0)k=g=0;else switch(this.Ed){case p.NONE:g=e;k=d;break;case p.Vn:g=b;k=c;break;case p.Se:if(e*c>d*b){g=b;k=d*b/e}else{g=e*c/d;k=c}break;case p.tm:if(e*c>d*b){g=e*c/d;k=c}else{g=b;k=d*b/e}break;case p.Wk:g=b;k=d*b/e;break;case p.ih:g=e*c/d;k=c}if(this.Na!=g||this.Ya!=k){this.Na=g;this.Ya=k;a=n}this.sU=
this.xV=y}if(a||this.oo||this.WS){this.ML=this.vI=n;this.Wh&&l.css(this.Wh,{width:this.Na+"px",height:this.Ya+"px",visibility:"inherit"});l.css(this.DI,{width:this.Hd()+"px",height:this.Gd()+"px","border-top-left-radius":this.rI(this.Pka(),this.B4(),this.z4())+"px","border-top-right-radius":this.rI(this.Qka(),this.B4(),this.A4())+"px","border-bottom-left-radius":this.rI(this.Nka(),this.y4(),this.z4())+"px","border-bottom-right-radius":this.rI(this.Oka(),this.y4(),this.A4())+"px"});this.Wa();this.WS=
this.oo=y}if(this.vI&&this.Wh){switch(this.Vh){case i.qa:l.css(this.Wh,{"margin-left":0,"margin-right":this.Hd()-this.Na+"px"});break;case i.Ma:l.css(this.Wh,{"margin-left":this.Hd()-this.Na+"px","margin-right":0});break;case i.Mc:l.css(this.Wh,{"margin-left":Math.floor((this.Hd()-this.Na)*0.5)+"px","margin-right":Math.ceil((this.Hd()-this.Na)*0.5)+"px"})}this.vI=y}if(this.ML&&this.Wh){switch(this.pi){case i.mb:l.css(this.Wh,{"margin-top":0,"margin-bottom":this.Gd()-this.Ya+"px"});break;case i.lb:l.css(this.Wh,
{"margin-top":this.Gd()-this.Ya+"px","margin-bottom":0});break;case i.tc:l.css(this.Wh,{"margin-top":Math.floor((this.Gd()-this.Ya)*0.5)+"px","margin-bottom":Math.ceil((this.Gd()-this.Ya)*0.5)+"px"})}this.ML=y}}};a.prototype.Faa=function(){if(this.oX){var a=this.get("url");if(a)this.oS().load(a,this.j2,this);else{this.oS().clear();this.j2(r,0,0)}this.oX=y}};a.prototype.rI=function(a,b,c){if(!a)return 0;var e=0;b&&(e=Math.max(e,b));c&&(e=Math.max(e,c));return Math.max(0,a-e)};return a});
define("ez",["fg","jn","fm","jb","jF"],function(a,b,c,d,f){a=a.extend(d,function(){d.call(this)});a.prototype.za=function(){d.prototype.za.call(this);this.f("iconURL");this.h("rollOverIconURL",c.u,"iconURL");this.h("pressedIconURL",c.Ca,"iconURL");this.h("pressedRollOverIconURL",c.$a,"iconURL")};a.prototype.SQ=function(){var a=new f(3);a.set("scaleMode",b.Se);return a};a.prototype.ja=function(){if(this.n("iconURL")){var a=this.k("iconURL");this.Mf.set("url",a);this.Mf.set("visible",a?n:y);this.q("iconURL")}d.prototype.ja.call(this)};
return a});define("ey",["fg","ez","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("Button",a).B("BaseButton").K({iconURL:"string",rollOverIconURL:"string",pressedIconURL:"string",pressedRollOverIconURL:"string"}).fh(["iconURL","rollOverIconURL","pressedIconURL","pressedRollOverIconURL"]);return a});
define("gk",["require","fg","jd","ll","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("angle",0);this.set("rotate",y);this.set("inertia",y)});a.A("CapPanoramaOverlay",b).B("PanoramaOverlay").K({angle:"number",distance:"number",hfov:"number",image:"ImageResource",inertia:"bool",rotate:"bool",useHandCursor:"bool"}).Vb([d.wc,d.Mb,d.Jh,d.Ff]).Cf([d.U]);return b});
define("gb",["fg","dW","gk"],function(a,b,c){a=a.extend(c,function(){c.call(this)});b.A("CeilingCapPanoramaOverlay",a).B("CapPanoramaOverlay");return a});
define("bY","do,jquery.mod,fg,ll,bZ,d".split(","),function(a,b,c,d,f,e){a=c.extend(e,function(){e.call(this);this.Uc("Canvas");this.DR=n;this.v=r;this.bind(d.vb,this.oia,this)});a.prototype.oia=function(){this.RM()};a.prototype.RM=function(){this.DR=n;this.Gh()};a.prototype.Fa=function(){e.prototype.Fa.call(this);if(!this.v){this.v=b("<canvas/>");this.v.css({position:"absolute",left:0,top:0,cursor:"inherit"});this.Pa().append(this.v)}};a.prototype.ja=function(){this.f2()&&this.RM();e.prototype.ja.call(this)};
a.prototype.Re=function(){if(this.DR){this.DR=y;var a=this.v.get(0);a.width=this.Hd();a.height=this.Gd();this.Bza()}e.prototype.Re.call(this)};a.prototype.cva=function(){return this.v.get(0).width};a.prototype.bva=function(){return this.v.get(0).height};a.prototype.ava=function(){return this.v.get(0).getContext("2d")};a.prototype.Bza=function(){this.trigger(new f(d.aa))};return a});
define("hJ",["fg","ll","fm","jb","bY"],function(a,b,c,d,f){a=a.extend(d,function(){d.call(this)});a.prototype.Bi=function(){d.prototype.Bi.call(this)};a.prototype.za=function(){d.prototype.za.call(this);this.f("iconColor");this.h("rollOverIconColor",c.u,"iconColor");this.h("pressedIconColor",c.Ca,"iconColor");this.h("pressedRollOverIconColor",c.$a,"iconColor")};a.prototype.SQ=function(){var a=new f;a.bind(b.aa,this.Tea,this,n);return a};a.prototype.ja=function(){this.n("iconColor")&&(this.Mf.RM(),
this.q("iconColor"));d.prototype.ja.call(this)};a.prototype.fla=function(){return this.k("iconColor")};a.prototype.gla=function(){return this.Mf.ava()};a.prototype.ila=function(){return this.Mf.cva()};a.prototype.hla=function(){return this.Mf.bva()};a.prototype.Tea=C();return a});
define("eF",["fg","hJ","jY","fm"],function(a,b,c,d){a=a.extend(b,function(){b.call(this);this.M({horizontalAlign:c.Mc,verticalAlign:c.tc})});a.prototype.za=function(){b.prototype.za.call(this);this.f("iconLineWidth");this.h("rollOverIconLineWidth",d.u,"iconLineWidth");this.h("pressedIconLineWidth",d.Ca,"iconLineWidth");this.h("pressedRollOverIconLineWidth",d.$a,"iconLineWidth")};a.prototype.pla=function(){return this.k("iconLineWidth")};a.prototype.ja=function(){this.n("iconLineWidth")&&(this.Mf.RM(),
this.q("iconLineWidth"));b.prototype.ja.call(this)};a.prototype.Tea=function(){var a=this.gla(),b=this.fla(),c=this.ila(),d=this.hla(),i=this.pla();a.clearRect(0,0,c,d);a.lineWidth=i||1;a.strokeStyle=b||"#000000";a.beginPath();a.moveTo(0,0);a.lineTo(c,d);a.moveTo(0,d);a.lineTo(c,0);a.closePath();a.stroke()};return a});
define("hc",["fg","eF","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("CloseButton",a).B("BaseButton").K({iconColor:"color",iconLineWidth:"number",rollOverIconColor:"color",rollOverIconLineWidth:"number",pressedIconColor:"color",pressedIconLineWidth:"number",pressedRollOverIconColor:"color",pressedRollOverIconLineWidth:"number"});return a});
define("hM",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("CookiesPolicy",b).B("Object").K({url:"string",geographicArea:"or[array[string], string]"}).fh(["url"]);return b});
define("jc","require,do,iN,fg,kS,dW".split(","),function(a){a("do");var b=a("iN"),c=a("fg"),d=a("kS"),a=a("dW"),c=c.extend(d,function(){d.call(this)});a.A("Container",c).B("UIComponent").K({children:"array[UIComponent]",contentOpaque:"bool",childrenInteractionEnabled:"bool",creationPolicy:"enum[inAdvance, delayed]",layout:"enum[absolute, vertical, horizontal]",gap:"number",horizontalAlign:"enum[center, left, right]",overflow:"enum[scroll, hidden, visible]",scrollBarColor:"color",scrollBarWidth:"number",
scrollBarMargin:"number",scrollBarHorizontalMargin:"number",scrollBarVerticalMargin:"number",scrollBarOpacity:"number",scrollBarVisible:"enum[rollOver, always]",verticalAlign:"enum[bottom, middle, top]"}).Ag({scrollTo:function(a,b){d.prototype.scrollTo.call(this,a,b)},scrollIntoView:function(a){b.jw(function(){d.prototype.scrollIntoView.call(this,a)}.bind(this))}});return c});
define("iR",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("dW"),a=b.extend(c,function(){c.call(this);this.N=r});d.A("PanoramaFrame",a).B("Object").K({thumbnailUrl:"string",snapshots:"array[PanoramaSnapshot]",overlays:"array[PanoramaOverlay]"}).fh(["thumbnailUrl"]);a.prototype.get=function(a,b){switch(a){case "overlays":return this.qS();case "hfov":case "vfov":case "pitch":case "flipImageHorizontally":if(this.N)return this.N.get(a,b)}return c.prototype.get.call(this,a,b)};a.prototype.qS=
function(){var a=c.prototype.get.call(this,"overlays");a||(a=[]);return this.$V(a)};a.prototype.$V=function(a){if(this.Ky===m||this.WI!=a){var b=function(a){return d.qb("PopupPanoramaOverlay",a)},c=function(a){return d.qb("LensFlarePanoramaOverlay",a)};this.WI=a;this.Ky=[].concat(a.filter(function(a){return!(b(a)||c(a))}),a.filter(c),a.filter(b))}return this.Ky};a.prototype.Uta=P("N");a.prototype.rz=Q("N");a.prototype.Hh=R(y);return a});
define("la",["require","fg","dW","iR"],function(a){var b=a("fg"),c=a("dW"),d=a("iR"),a=b.extend(d,function(){d.call(this)});c.A("CubicPanoramaFrame",a).B("PanoramaFrame").K({cube:"ImageResource",stereoCube:"ImageResource",front:"ImageResource",left:"ImageResource",back:"ImageResource",right:"ImageResource",top:"ImageResource",bottom:"ImageResource"});return a});
define("gt",["require"],function(){return{"ar-ar":{mute:"\u062a\u0639\u0637\u064a\u0644 \u0627\u0644\u0635\u0648\u062a","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"\u062a\u063a\u064a\u064a\u0631 \u0648\u0636\u0639 \u0627\u0644\u062a\u062d\u0643\u0645 \u0644\u0644\u0633\u062d\u0628 \u0648\u0627\u0644\u0625\u0641\u0631\u0627\u062c",
accept:"\u0642\u0628\u0648\u0644",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",cancel:"Cancel","change-to-click-and-move":"\u062a\u063a\u064a\u064a\u0631 \u0648\u0636\u0639 \u0627\u0644\u062a\u062d\u0643\u0645 \u0644\u0644\u0646\u0642\u0631 \u0648\u0627\u0644\u062a\u062d\u0631\u0643",
yes:"\u0646\u0639\u0645 \u0641\u0639\u0644\u0627","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"\u0627\u0644\u062e\u0631\u0648\u062c \u0645\u0646 \u0648\u0636\u0639 \u0645\u0644\u0626 \u0644\u0644\u0634\u0627\u0634\u0629",no:"\u0644\u0627","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.",
"cookies-notice":"\u062a\u0633\u062a\u062e\u062f\u0645 \u0635\u0641\u062d\u0629 \u0627\u0644\u0648\u064a\u0628 \u0647\u0630\u0647 \u0645\u0644\u0641\u0627\u062a \u062a\u0639\u0631\u064a\u0641 \u0627\u0644\u0627\u0631\u062a\u0628\u0627\u0637 \u0644\u062c\u0645\u0639 \u0625\u062d\u0635\u0627\u0626\u064a\u0627\u062a \u0627\u0644\u0627\u0633\u062a\u062e\u062f\u0627\u0645. \u0644\u0645\u0632\u064a\u062f \u0645\u0646 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062a \u060c \u064a\u0631\u062c\u0649 \u0632\u064a\u0627\u0631\u0629 <a> \u0633\u064a\u0627\u0633\u0629 \u0645\u0644\u0641\u0627\u062a \u062a\u0639\u0631\u064a\u0641 \u0627\u0644\u0627\u0631\u062a\u0628\u0627\u0637 </a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"\u064a\u0631\u0641\u0636","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0635\u0648\u062a \u0648\u0627\u0644\u0641\u064a\u062f\u064a\u0648\u061f",
"storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0641\u064a\u062f\u064a\u0648\u061f","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"\u0623\u062f\u062e\u0644 \u0645\u0644\u0621 \u0627\u0644\u0634\u0627\u0634\u0629",
"use-cardboard-v2":"Use Cardboard v2",unmute:"\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0635\u0648\u062a","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0635\u0648\u062a\u061f"},"bg-bg":{mute:"\u0417\u0430\u0433\u043b\u0443\u0448\u0430\u0432\u0430\u043d\u0435",
"cardboard-v1":"\u0410\u043a\u043e \u043d\u0435 \u0441\u0442\u0435 \u0441\u0438\u0433\u0443\u0440\u043d\u0438 \u043a\u043e\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 Cardboard \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435, \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0445\u043e\u0442\u0441\u043f\u043e\u0442 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435. \u0421\u043b\u0435\u0434 \u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0449\u0435 \u043f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u0445\u043e\u0442\u0441\u043f\u043e\u0442\u0430 \u0438 \u0449\u0435 \u0438\u0437\u0447\u0430\u043a\u0430\u0442\u0435, \u0434\u043e\u043a\u0430\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u0441\u0435 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430.",
"download-tour":"\u0418\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435 \u043d\u0430 \u0442\u0443\u0440\u0430 \u0437\u0430 \u0432\u044a\u0437\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0436\u0434\u0430\u043d\u0435 \u043e\u0444\u043b\u0430\u0439\u043d","change-to-drag-and-release":"\u041f\u0440\u043e\u043c\u0435\u043d\u0435\u0442\u0435 \u0440\u0435\u0436\u0438\u043c\u0430 \u043d\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u041f\u043b\u044a\u0437\u0433\u0430\u043d\u0435 \u0438 \u041f\u0443\u0441\u043a\u0430\u043d\u0435",
accept:"\u041f\u0440\u0438\u0435\u043c\u0435\u0442\u0435",cancel:"\u041e\u0442\u043a\u0430\u0437","storage-not-provided-bookmark":"\u041f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0435 \u043e\u0442\u043a\u0430\u0437\u0430\u043d\u043e. \u041e\u043f\u0438\u0442\u0430\u0439\u0442\u0435 \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u0442\u0430\u0437\u0438 \u0443\u0435\u0431 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0432 \u043e\u0442\u043c\u0435\u0442\u043a\u0438 \u0438 \u0434\u0430 \u044f \u043f\u0440\u0435\u0437\u0430\u0440\u0435\u0434\u0438\u0442\u0435.",
"dont-display-again":"\u041d\u0435 \u043f\u043e\u043a\u0430\u0437\u0432\u0430\u0439 \u0442\u0430\u0437\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0442\u043d\u043e\u0432\u043e","web-server-required":"\u0422\u043e\u0437\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u0435\u043b\u0435\u043d \u0442\u0443\u0440 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u0443\u0441\u043d\u0430\u0442 \u043e\u0442 \u043b\u043e\u043a\u0430\u043b\u043d\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. \u041c\u043e\u043b\u044f, \u043a\u0430\u0447\u0435\u0442\u0435 \u0433\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0438 \u043e\u043f\u0438\u0442\u0430\u0439\u0442\u0435 \u043e\u0442\u043d\u043e\u0432\u043e.\n\u0410\u043a\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0442\u0435, \u0438\u0437\u0442\u0435\u0433\u043b\u0435\u0442\u0435 htm \u0444\u0430\u0439\u043b\u0430 (\u0438\u043b\u0438 \u0446\u044f\u043b\u0430\u0442\u0430 \u043f\u0430\u043f\u043a\u0430 \u043d\u0430 \u0442\u0443\u0440\u0430) \u0432\u044a\u0440\u0445\u0443 \u0438\u043a\u043e\u043d\u0430\u0442\u0430 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e TourViewer.",
download:"\u0418\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435","change-to-click-and-move":"\u041f\u0440\u043e\u043c\u0435\u043d\u0435\u0442\u0435 \u0440\u0435\u0436\u0438\u043c\u0430 \u043d\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u041a\u043b\u0438\u043a\u0432\u0430\u043d\u0435 \u0438 \u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430\u043d\u0435",yes:"\u0434\u0430","delete-downloaded":"\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435","use-safari-for-vr":"\u041f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0432\u0430\u043c\u0435 Safari, \u0437\u0430 \u0434\u0430 \u0440\u0430\u0437\u0433\u043b\u0435\u0434\u0430\u0442\u0435 \u0442\u043e\u0437\u0438 \u0442\u0443\u0440 \u0432 \u0440\u0435\u0436\u0438\u043c VR",
"exit-fullscreen":"\u0418\u0437\u043b\u0435\u0437\u0442\u0435 \u043e\u0442 \u0446\u044f\u043b \u0435\u043a\u0440\u0430\u043d",no:"\u043d\u0435","download-failed":"\u0418\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435\u0442\u043e \u0441\u0435 \u043f\u0440\u043e\u0432\u0430\u043b\u0438","giroscope-disabled-http":"\u0418\u043c\u0430\u0442\u0435 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0442\u0430\u0437\u0438 \u0443\u0435\u0431 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0447\u0440\u0435\u0437 http, \u0442\u0430\u043a\u0430 \u0447\u0435 \u0434\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0434\u043e \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 \u0432\u0430\u0448\u0435\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0438 \u0440\u0435\u0436\u0438\u043c\u044a\u0442 VR \u0441\u0430 \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0438, \u043c\u043e\u043b\u044f, \u043e\u0442\u0432\u043e\u0440\u0435\u0442\u0435 \u0433\u043e \u0447\u0440\u0435\u0437 https, \u0437\u0430 \u0434\u0430 \u0433\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0442\u0435.",
"cookies-notice":"\u0422\u0430\u0437\u0438 \u0443\u0435\u0431 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0431\u0438\u0441\u043a\u0432\u0438\u0442\u043a\u0438 \u0437\u0430 \u0441\u044a\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0434\u0430\u043d\u043d\u0438 \u0437\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e. \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u043c\u043e\u043b\u044f, \u043f\u043e\u0441\u0435\u0442\u0435\u0442\u0435 <a> \u041f\u0440\u0430\u0432\u0438\u043b\u0430\u0442\u0430 \u0437\u0430 \u0431\u0438\u0441\u043a\u0432\u0438\u0442\u043a\u0438\u0442\u0435 </a>.",
"use-cardboard":"\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439 Cardboard","launch-default-browser":"\u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u0432 \u0431\u0440\u0430\u0443\u0437\u044a\u0440\u0430 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435","rotate-device":"\u041c\u043e\u043b\u044f \u0437\u0430\u0432\u044a\u0440\u0442\u0435\u0442\u0435 \u0432\u0430\u0448\u0435\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e",
"exit-vr":"\u0418\u0437\u043b\u0438\u0437\u0430\u043d\u0435 \u043e\u0442 \u0440\u0435\u0436\u0438\u043c VR","storage-not-provided-launch-from-desktop":"\u041c\u043e\u043b\u044f, \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439\u0442\u0435 \u043e\u0431\u0438\u043a\u043e\u043b\u043a\u0430\u0442\u0430 \u043e\u0442 \u0438\u043a\u043e\u043d\u0430\u0442\u0430 \u043d\u0430 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u0430, \u0437\u0430 \u0434\u0430 \u044f \u0438\u0437\u0442\u0435\u0433\u043b\u0438\u0442\u0435.",
"disable-measure":"Stop measuring",downloading:"\u0418\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435","cardboard-v2":"\u0410\u043a\u043e \u0438\u043c\u0430\u0442\u0435 \u043e\u0447\u0438\u043b\u0430 Cardboard v2, \u043a\u043e\u0438\u0442\u043e \u0440\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430\u0442 \u0441 \u0431\u0443\u0442\u043e\u043d, \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u043f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u0445\u043e\u0442\u0441\u043f\u043e\u0442\u0430 \u0438 \u0434\u0430 \u043d\u0430\u0442\u0438\u0441\u043d\u0435\u0442\u0435 \u0431\u0443\u0442\u043e\u043d\u0430, \u0437\u0430 \u0434\u0430 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043c\u0443.",
"enable-video-audio-prompt":"\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0438\u0434\u0435\u043e \u0438 \u0430\u0443\u0434\u0438\u043e?",reject:"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u0435\u0442\u0435",downloaded:"\u0422\u043e\u0437\u0438 \u0442\u0443\u0440 \u0435 \u0438\u0437\u0442\u0435\u0433\u043b\u0435\u043d \u0437\u0430 \u0432\u044a\u0437\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0436\u0434\u0430\u043d\u0435 \u043e\u0444\u043b\u0430\u0439\u043d.","samsung-internet-vr-app-info":"\u0410\u043a\u043e \u0438\u043c\u0430\u0442\u0435 \u043e\u0447\u0438\u043b\u0430 Gear VR, \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0438 \u0441 \u0442\u043e\u0432\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e, \u0438 \u0441\u0442\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043b\u0438 Samsung Internet for VR, \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0433\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438 \u0437\u0430 \u043f\u0440\u0435\u0433\u043b\u0435\u0434 \u043d\u0430 \u0442\u043e\u0432\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435 \u0432\u044a\u0432 VR. \u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u0435 Samsung Internet \u0431\u0440\u0430\u0443\u0437\u044a\u0440 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435.",
"samsung-internet-vr-info":"\u0410\u043a\u043e \u0438\u043c\u0430\u0442\u0435 \u043e\u0447\u0438\u043b\u0430 Gear VR, \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0438 \u0441 \u0442\u043e\u0432\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e, \u0438 \u0441\u0442\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043b\u0438 Samsung Internet for VR, \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0433\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438 \u0437\u0430 \u043f\u0440\u0435\u0433\u043b\u0435\u0434 \u043d\u0430 \u0442\u043e\u0432\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435 \u0432\u044a\u0432 VR. \u0421\u0435\u0433\u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u043b\u043e\u0436\u0438\u0442\u0435 \u043c\u043e\u0431\u0438\u043b\u043d\u0438\u044f \u0441\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0432 \u043e\u0447\u0438\u043b\u0430\u0442\u0430 \u0437\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430 \u0440\u0435\u0430\u043b\u043d\u043e\u0441\u0442.",
"enable-video-prompt":"\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0438\u0434\u0435\u043e?","giroscope-disabled-safari-request-permission":["\u0414\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0437\u0430 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430 \u0432\u0430\u0448\u0435\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0438 \u0440\u0435\u0436\u0438\u043c\u044a\u0442 VR \u0441\u0430 \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0438 \u0437\u0430 \u0442\u043e\u0437\u0438 \u0441\u0430\u0439\u0442.",
"\u0417\u0430 \u0434\u0430 \u0432\u0438\u0434\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e \u0442\u0430\u0437\u0438 \u0443\u0435\u0431 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u043c\u043e\u043b\u044f, \u043a\u043b\u0438\u043a\u043d\u0435\u0442\u0435 \u0432\u044a\u0440\u0445\u0443 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438 \u0438 \u043f\u0440\u0438\u0435\u043c\u0435\u0442\u0435 \u0438\u0441\u043a\u0430\u043d\u0435\u0442\u043e \u0437\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435."],
"storage-not-provided-launch-from-homescreen":"\u041c\u043e\u043b\u044f, \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439\u0442\u0435 \u043e\u0431\u0438\u043a\u043e\u043b\u043a\u0430\u0442\u0430 \u043e\u0442 \u0438\u043a\u043e\u043d\u0430\u0442\u0430 \u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u043d\u0438\u044f \u0435\u043a\u0440\u0430\u043d, \u0437\u0430 \u0434\u0430 \u044f \u0438\u0437\u0442\u0435\u0433\u043b\u0438\u0442\u0435.","enter-fullscreen":"\u0412\u043b\u0435\u0437\u0442\u0435 \u0432 \u0446\u044f\u043b \u0435\u043a\u0440\u0430\u043d",
"use-cardboard-v2":"\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439 Cardboard v2",unmute:"\u041f\u0443\u0441\u043a\u0430\u043d\u0435 \u0437\u0432\u0443\u043a","enter-vr":"\u0412\u043b\u0435\u0437 \u0432\u044a\u0432 VR \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435","enable-measure":"Start measuring","use-cardboard-info":"\u041c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0432\u0441\u044f\u043a\u0430\u043a\u0432\u0438 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0438 Google Cardboard \u043e\u0447\u0438\u043b\u0430, \u0437\u0430 \u0434\u0430 \u0432\u0438\u0434\u0438\u0442\u0435 \u0442\u043e\u0432\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435 \u0432\u044a\u0432 VR.",
"refresh-downloaded":"\u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435","use-default-cardboard":"\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435","enable-audio-prompt":"\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0443\u0434\u0438\u043e?"},"ca-es":{mute:"Silenciar","cardboard-v1":"Si no esteu segurs de quina versi\u00f3 de cartr\u00f3 utilitzeu, seleccioneu el control de punt d'acc\u00e9s per defecte. Despr\u00e9s, simplement veureu un punt d'acc\u00e9s i espereu fins que s'activi l'acci\u00f3.",
"download-tour":"Descarregueu la visita virtual per a jugar fora de l\u00ednia","change-to-drag-and-release":"Canvieu el mode de control a Arrossegar i deixeu anar",accept:"Accepta",cancel:"Cancel\u00b7lar","storage-not-provided-bookmark":"S'ha denegat l'emmagatzematge persistent. Proveu de marcar aquesta p\u00e0gina web i torneu-la a carregar.","dont-display-again":"No tornis a mostrar aquesta informaci\u00f3","web-server-required":"Aquesta visita virtual no es pot reproduir des d'una unitat local. Carregueu-lo a Internet i torneu-ho a provar.\nSi ho preferiu, arrossegueu el fitxer htm (o tota la carpeta de la visita virtual) a la icona de l'aplicaci\u00f3 TourViewer.",
download:"Descarregar","change-to-click-and-move":"Canvieu el mode de control a Fer clic i desplaceu",yes:"s\u00ed","delete-downloaded":"Suprimeix","use-safari-for-vr":"Recomanem Safari per a visualitzar aquesta visita virtual en mode VR","exit-fullscreen":"Surt de pantalla completa",no:"no","download-failed":"Error de desc\u00e0rrega","giroscope-disabled-http":"Accediu a aquesta p\u00e0gina web a trav\u00e9s de http de manera que el moviment i l\u2019orientaci\u00f3 del dispositiu i el mode VR estan desactivats, accediu-hi mitjan\u00e7ant https per habilitar-les.",
"cookies-notice":"Aquesta p\u00e0gina web utilitza cookies per recopilar estad\u00edstiques d\u2019\u00fas. Per obtenir m\u00e9s informaci\u00f3, visiteu la <a>Pol\u00edtica de cookies</a>.","use-cardboard":"Utilitzeu Cardboard","launch-default-browser":"Inicieu el navegador per defecte","rotate-device":"Gireu el dispositiu","exit-vr":"Surt de VR","storage-not-provided-launch-from-desktop":"Torneu a iniciar la visita virtual des de la icona de l'escriptori per a descarregar-la.","disable-measure":"Stop measuring",
downloading:"Baixant","cardboard-v2":"Si teniu unes Cardboard v2, que venen amb un bot\u00f3, podeu mirar cap a un punt de vista i pr\u00e9mer el bot\u00f3 per activar-lo.","enable-video-audio-prompt":"Habilitar v\u00eddeo i \u00e0udio?",reject:"Rebutjar",downloaded:"Aquesta visita virtual es descarrega per a reproduir-la fora de l\u00ednia.","samsung-internet-vr-app-info":"Si teniu un auricular Gear VR compatible amb aquest dispositiu i heu instal\u00b7lat Samsung Internet per a VR, tamb\u00e9 podeu utilitzar-lo per visualitzar aquest contingut en VR, heu de fer que Samsung Internet sigui el vostre navegador predeterminat.",
"samsung-internet-vr-info":"Si teniu un auricular Gear VR compatible amb aquest dispositiu i heu instal\u00b7lat Samsung Internet per a VR, tamb\u00e9 podeu utilitzar-lo per visualitzar aquest contingut en VR, nom\u00e9s heu de posar el tel\u00e8fon m\u00f2bil als auriculars.","enable-video-prompt":"Activar v\u00eddeo?","giroscope-disabled-safari-request-permission":["Aquest lloc web est\u00e0 desactivat en el moviment i en la direcci\u00f3 o en mode VR del dispositiu.","Per veure correctament aquesta p\u00e0gina web, feu clic a Continuar i accepteu la sol\u00b7licitud de perm\u00eds si se us demana."],
"storage-not-provided-launch-from-homescreen":"Torneu a iniciar la visita virtual des de la icona de la pantalla inicial.","enter-fullscreen":"Entra a pantalla completa","use-cardboard-v2":"Utilitzeu Cardboard v2",unmute:"No activa","enter-vr":"Introdu\u00efu contingut de VR","enable-measure":"Start measuring","use-cardboard-info":"Podeu utilitzar qualsevol auricular de Google Cardboard compatible per a visualitzar aquest contingut en VR.","refresh-downloaded":"Actualitzaci\u00f3","use-default-cardboard":"\u00das per defecte",
"enable-audio-prompt":"Activar \u00e0udio?"},"da-dk":{mute:"Deaktiver lyd","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"Skift kontroltilstand for at tr\u00e6kke og slippe",accept:"Acceptere",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.",
"dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",cancel:"Cancel","change-to-click-and-move":"Skift kontroltilstand for at klikke og flytte",yes:"Ja","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Afslut fuldsk\u00e6rm",
no:"ingen","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"Denne webside bruger cookies til at indsamle brugsstatistikker. For mere information, se venligst <a> Cookiepolitik </a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device",
"exit-vr":"Exit VR",reject:"Afvise","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Aktiv\u00e9r lyd og video?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.",
"samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.","enable-video-prompt":"Aktiv\u00e9r video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],
"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Indtast fuldsk\u00e6rm","use-cardboard-v2":"Use Cardboard v2",unmute:"Aktiv\u00e9r lyd","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Aktiv\u00e9r lyd?"},"de-de":{mute:"Deaktiviere Audio",
"cardboard-v1":"Wenn Sie sich nicht sicher sind, welche Cardboard-Version Sie verwenden, w\u00e4hlen Sie die Standard-Hotspot-Steuerung. Sie schauen dann einfach auf einen Hotspot und warten, bis die jeweilige Aktion ausgel\u00f6st wird.","download-tour":"Tour zum Offline-Abspielen herunterladen","giroscope-disabled-safari-request-permission":["Der Bewegungs- und Orientierungszugriff, sowie VR Modus Ihres Ger\u00e4ts ist f\u00fcr diese Seite deaktiviert.","Um diese Webseite korrekt anzuzeigen, klicken Sie auf Weiter und akzeptieren Sie die Erlaubnisanfrage, wenn Sie dazu aufgefordert werden."],
accept:"Akzeptieren",download:"Download",downloading:"Downloading","dont-display-again":"Diese Info nicht mehr anzeigen","web-server-required":"Diese Virtual Tour kann nicht von einem lokalen Laufwerk abgespielt werden. Laden Sie Ihre Tour ins Internet und versuchen Sie es erneut.\nAlternativ, ziehen Sie die htm Datei (oder den ganzen Tour Ordner) auf das Icon der Tour Viewer App, um die Tour direkt lokal abzuspielen.",cancel:"Abbrechen","change-to-click-and-move":"\u00c4ndern Sie den Steuerungsmodus, um zu klicken und zu drehen",
yes:"ja","delete-downloaded":"L\u00f6schen","use-safari-for-vr":"Wir empfehlen Safari, um diese Tour im VR-Modus zu sehen","exit-fullscreen":"Vollbild verlassen",no:"nein","storage-not-provided-bookmark":"Dauerhafte Speicherung verweigert. Versuchen Sie, diese Seite als Lesezeichen zu speichern und erneut zu laden.","download-failed":"Download fehlgeschlagen","giroscope-disabled-http":"Der Bewegungs- und Ausrichtungsszugriff Ihres Ger\u00e4ts ist f\u00fcr diese Webseite deaktiviert. Greifen Sie bitte \u00fcber https darauf zu.",
"cookies-notice":"Diese Webseite verwendet Cookies, um Nutzungsstatistiken zu sammeln. Weitere Informationen finden Sie in der <a>Cookie-Richtlinie</a>.","use-cardboard":"Cardboard verwenden","launch-default-browser":"Im Standardbrowser starten","rotate-device":"Bitte drehen Sie Ihr Ger\u00e4t","exit-vr":"VR verlassen",reject:"Ablehnen","disable-measure":"Messung beenden","change-to-drag-and-release":"\u00c4ndern Sie den Steuerungsmodus zu Ziehen und Loslassen","cardboard-v2":"Wenn Sie ein Cardboard v2-Headset haben, das mit einer Taste ausgestattet ist, k\u00f6nnen Sie auf einen Hotspot blicken und die Taste dr\u00fccken, um dessen Aktion auszul\u00f6sen.",
"enable-video-audio-prompt":"Video und Audio aktivieren?","storage-not-provided-launch-from-desktop":"Bitte starten Sie die Tour erneut \u00fcber das Desktop-Symbol, um sie herunterzuladen.",downloaded:"Diese Tour ist zum Offline-Abspielen heruntergeladen.","samsung-internet-vr-app-info":"Wenn Sie ein Gear VR-Headset haben, das mit diesem Ger\u00e4t kompatibel ist, und Sie Samsung Internet f\u00fcr VR installiert haben, k\u00f6nnen Sie es auch verwenden, um diese Inhalte in VR anzusehen. Machen Sie dazu Samsung Internet zu Ihrem Standardbrowser.",
"samsung-internet-vr-info":"Wenn Sie ein Gear VR-Headset haben, das mit diesem Ger\u00e4t kompatibel ist, und Sie Samsung Internet f\u00fcr VR installiert haben, k\u00f6nnen Sie es auch verwenden, um diese Inhalte in VR zu sehen. Setzen Sie dazu nun das Mobiltelefon auf das Headset.","enable-video-prompt":"Video aktivieren?","storage-not-provided-launch-from-homescreen":"Bitte starten Sie die Tour erneut \u00fcber das Symbol auf dem Startbildschirm, um sie herunterzuladen.","enter-fullscreen":"Vollbildmodus aktivieren",
"use-cardboard-v2":"Cardboard v2 verwenden",unmute:"Audio aktivieren","enter-vr":"VR Inhalt eingeben","enable-measure":"Messung beginnen","use-cardboard-info":"Sie k\u00f6nnen jedes kompatible Google Cardboard-Headset verwenden, um diese Inhalte in VR zu sehen.","refresh-downloaded":"Aktualisieren","use-default-cardboard":"Standard verwenden","enable-audio-prompt":"Audio aktivieren?"},"el-gr":{mute:"\u0391\u03c0\u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03bf\u03bd \u03ae\u03c7\u03bf",
"cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"\u0391\u03bb\u03bb\u03ac\u03be\u03c4\u03b5 \u03c4\u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b5\u03bb\u03ad\u03b3\u03c7\u03bf\u03c5 \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c3\u03cd\u03c1\u03b5\u03c4\u03b5 \u03ba\u03b1\u03b9 \u03bd\u03b1 \u03b1\u03c0\u03b5\u03bb\u03b5\u03c5\u03b8\u03b5\u03c1\u03ce\u03c3\u03b5\u03c4\u03b5",
accept:"\u0391\u03c0\u03bf\u03b4\u03ad\u03c7\u03bf\u03bc\u03b1\u03b9",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",cancel:"Cancel","change-to-click-and-move":"\u0391\u03bb\u03bb\u03ac\u03be\u03c4\u03b5 \u03c4\u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b5\u03bb\u03ad\u03b3\u03c7\u03bf\u03c5 \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03ba\u03ac\u03bd\u03b5\u03c4\u03b5 \u03ba\u03bb\u03b9\u03ba \u03ba\u03b1\u03b9 \u03bd\u03b1 \u03bc\u03b5\u03c4\u03b1\u03ba\u03b9\u03bd\u03b7\u03b8\u03b5\u03af\u03c4\u03b5",
yes:"\u039d\u03b1\u03af","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"\u0388\u03be\u03bf\u03b4\u03bf\u03c2 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03c0\u03bb\u03ae\u03c1\u03b7 \u03bf\u03b8\u03cc\u03bd\u03b7",no:"\u03cc\u03c7\u03b9","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.",
"cookies-notice":"\u0391\u03c5\u03c4\u03ae \u03b7 \u03b9\u03c3\u03c4\u03bf\u03c3\u03b5\u03bb\u03af\u03b4\u03b1 \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b5\u03af cookie \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03c3\u03c5\u03bb\u03bb\u03bf\u03b3\u03ae \u03c3\u03c4\u03b1\u03c4\u03b9\u03c3\u03c4\u03b9\u03ba\u03ce\u03bd \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03c9\u03bd \u03c7\u03c1\u03ae\u03c3\u03b7\u03c2. \u0393\u03b9\u03b1 \u03c0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b5\u03c2 \u03c0\u03bb\u03b7\u03c1\u03bf\u03c6\u03bf\u03c1\u03af\u03b5\u03c2, \u03b5\u03c0\u03b9\u03c3\u03ba\u03b5\u03c6\u03b8\u03b5\u03af\u03c4\u03b5 \u03c4\u03b7\u03bd <a> \u03a0\u03bf\u03bb\u03b9\u03c4\u03b9\u03ba\u03ae cookie </a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"\u0391\u03c0\u03bf\u03c1\u03c1\u03af\u03c0\u03c4\u03c9","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03ae\u03c7\u03bf\u03c5 \u03ba\u03b1\u03b9 \u03b2\u03af\u03bd\u03c4\u03b5\u03bf;",
"storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03b2\u03af\u03bd\u03c4\u03b5\u03bf;","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"\u0395\u03b9\u03c3\u03ac\u03b3\u03b5\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03bb\u03ae\u03c1\u03b7 \u03bf\u03b8\u03cc\u03bd\u03b7",
"use-cardboard-v2":"Use Cardboard v2",unmute:"\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03ae\u03c7\u03bf\u03c5","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03ae\u03c7\u03bf\u03c5;"},
"en-us":{mute:"Mute","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"Change control mode to Drag and Release",accept:"Accept",cancel:"Cancel","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again",
"web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",download:"Download","change-to-click-and-move":"Change control mode to Click and Move",yes:"yes","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Exit fullscreen",no:"no","download-failed":"Download failed",
"giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"This web page uses cookies to collect usage statistics. For more information, please visit the <a>Cookie Policy</a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",
"disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Enable video and audio?",reject:"Reject",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.",
"samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.","enable-video-prompt":"Enable video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],
"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Enter fullscreen","use-cardboard-v2":"Use Cardboard v2",unmute:"Unmute","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Enable audio?"},"es-es":{mute:"Silenciar",
"cardboard-v1":"Si no esta seguro de que versi\u00f3n de Cardboard debe usar escoja la selecci\u00f3n de hotspot por defecto. Solo tendr\u00e1 que apuntar al hotspot y esperar para que se ejecute la acci\u00f3n.","download-tour":"Descargar el tour para reproducirlo sin conexi\u00f3n","change-to-drag-and-release":"Cambiar el modo de control a arrastrar y soltar",accept:"Aceptar","use-cardboard-v2":"Usar Cardboard v2","storage-not-provided-bookmark":"Almacenamiento persistente denagado. Intente a\u00f1adir la p\u00e1gina a los marcadores y recargarla.",
"dont-display-again":"No volver a mostrar esta informaci\u00f3n","web-server-required":"Este tour virtual no puede reproducirse desde una unidad local. Por favor s\u00fabalo a internet y pruebe de nuevo.\nSi lo prefiere puede arrastrar el archivo html o la carpeta con el tour sobre el icono de la aplicaci\u00f3n Tour Viewer de su escritorio.",download:"Descargar","change-to-click-and-move":"Cambiar el modo de control a pulsar y mover",yes:"si","delete-downloaded":"Borrar","use-safari-for-vr":"Recomendamos Safari para ver este tour en modo VR",
"exit-fullscreen":"Salir de pantalla completa",no:"no","download-failed":"La descarga ha fallado","giroscope-disabled-http":"Est\u00e1 accediendo a esta p\u00e1gina web por http por lo que el acceso al movimiento y la orientaci\u00f3n del dispositivo est\u00e1 deshabilitado, por favor acceda por https.","cookies-notice":"Esta p\u00e1gina usa cookies para recolectar estad\u00edsticas de uso. Para m\u00e1s informaci\u00f3n, visite la <a>Pol\u00edtica de Cookies</a>.","use-cardboard":"Usar Cardboard",
"launch-default-browser":"Lanzar en el navegador por defecto","rotate-device":"Por favor, gire el dispositivo","exit-vr":"Salir de VR","storage-not-provided-launch-from-desktop":"Por favor lance el tour desde el escritorio para descargarlo.","disable-measure":"Stop measuring",cancel:"Cancel",downloading:"Descargando","cardboard-v2":"Si tiene unas gafas Cardboard v2, que vienen con un bot\u00f3n, puede apuntar al hotspot y pulsar el bot\u00f3n para que se ejecute su acci\u00f3n.","enable-video-audio-prompt":"\u00bfActivar v\u00eddeo y audio?",
reject:"Rechazar",downloaded:"Este tour esta descargado para reproducirlo sin conexi\u00f3n.","samsung-internet-vr-app-info":"Si tiene unas gafas Gear VR compatibles con este dispositivo y tiene instalado Samsung Internet for VR puede usarlo para ver este contenido en VR, necesita hacer Samsung Internet su navegador por defecto.","samsung-internet-vr-info":"Si tiene unas gafas Gear VR compatibles con este dispositivo y tiene instalado Samsung Internet for VR puede usarlo para ver este contenido en VR, solo tiene que poner ahora el dispositivo en las gafas.",
"enable-video-prompt":"\u00bfActivar v\u00eddeo?","giroscope-disabled-safari-request-permission":["El acceso al movimiento y la orientaci\u00f3n del dispositivo est\u00e1 deshabiltado para este sitio.","Para ver correctamente la p\u00e1gina por favor pulse Continuar y acepte la petici\u00f3n de permiso si se muestra."],"storage-not-provided-launch-from-homescreen":"Por favor lance el tour desde el icono de la pantalla de inicio para descargarlo.","enter-fullscreen":"Mostrar en pantalla completa",
unmute:"Habilitar sonido","enter-vr":"Entrar al contenido VR","enable-measure":"Start measuring","use-cardboard-info":"Puede usar unas gafas compatibles con Google Cardboard para ver este contenido en VR.","refresh-downloaded":"Actualizar","use-default-cardboard":"Usar versi\u00f3n por defecto","enable-audio-prompt":"\u00bfActivar audio?"},"fi-fi":{mute:"Poista \u00e4\u00e4ni k\u00e4yt\u00f6st\u00e4","cardboard-v1":"Mik\u00e4li et ole varma, mit\u00e4 Cardboard-versiota k\u00e4yt\u00e4t, valitse oletusarvoinen hotspot-hallinta. T\u00e4m\u00e4n j\u00e4lkeen katsomalla hotspotia, toiminto k\u00e4ynnistyy.",
"download-tour":"Lataa t\u00e4m\u00e4 sis\u00e4lt\u00f6 offline-toistoa varten","change-to-drag-and-release":"Muuta ohjaustilaa vet\u00e4m\u00e4ll\u00e4 ja vapauttamalla",accept:"Hyv\u00e4ksy",download:"Lataa","storage-not-provided-bookmark":"Tallennus ep\u00e4onnistui. Kokeile lis\u00e4t\u00e4 t\u00e4m\u00e4 verkkosivu kirjanmerkkeihin ja suorita lataus uudelleen.","dont-display-again":"\u00c4l\u00e4 n\u00e4yt\u00e4 t\u00e4t\u00e4 ilmoitusta uudelleen","web-server-required":"T\u00e4t\u00e4 sis\u00e4lt\u00f6\u00e4 ei voi toistaa paikalliselta asemalta. Lataa sis\u00e4lt\u00f6 internet-palvelimelle ja yrit\u00e4 uudelleen.\nVoit my\u00f6s vet\u00e4\u00e4 htm-tiedoston (tai koko kansion) TourViewer-sovelluskuvakkeen p\u00e4\u00e4lle.",
cancel:"Sulje","change-to-click-and-move":"Muuta ohjaustilaa klikkaamalla ja siirt\u00e4m\u00e4ll\u00e4",yes:"Kyll\u00e4","delete-downloaded":"Poista","use-safari-for-vr":"Suosittelemme Safari-selainta t\u00e4m\u00e4n sis\u00e4ll\u00f6n katseluun VR-tilassa.","exit-fullscreen":"Sulje koko n\u00e4yt\u00f6n n\u00e4kym\u00e4",no:"Ei","download-failed":"Lataus ep\u00e4onnistui","giroscope-disabled-http":"K\u00e4yt\u00e4t t\u00e4t\u00e4 verkkosivua http:n kautta, joten laitteesi liiketunnistimet sek\u00e4 VR-tila on poistettu k\u00e4yt\u00f6st\u00e4. Ota ne k\u00e4ytt\u00f6\u00f6n siirtym\u00e4ll\u00e4 sivulle https:n kautta.",
"cookies-notice":"T\u00e4m\u00e4 verkkosivu k\u00e4ytt\u00e4\u00e4 ev\u00e4steit\u00e4 k\u00e4ytt\u00f6tilastojen ker\u00e4\u00e4miseen. Lis\u00e4tietoja <a>ev\u00e4stek\u00e4yt\u00e4nn\u00f6st\u00e4</a>.","use-cardboard":"K\u00e4yt\u00e4 Cardboardia","launch-default-browser":"K\u00e4ynnist\u00e4 oletusselaimessa","rotate-device":"K\u00e4\u00e4nn\u00e4 laitettasi","exit-vr":"Poistu VR-tilasta",reject:"Hylk\u00e4\u00e4","disable-measure":"Lopeta mittaaminen",downloading:"Ladataan","cardboard-v2":"Mik\u00e4li sinulla on Cardboard v2 -virtuaalilasit, joissa on painike, voit katsoa hotspotia ja aktivoida sen painamalla painiketta.",
"enable-video-audio-prompt":"Otetaanko \u00e4\u00e4ni ja video k\u00e4ytt\u00f6\u00f6n?","storage-not-provided-launch-from-desktop":"Uudelleenk\u00e4ynnist\u00e4 t\u00e4m\u00e4 sis\u00e4lt\u00f6 ty\u00f6p\u00f6yd\u00e4n kuvakkeesta aloittaaksesi lataamisen.",downloaded:"T\u00e4m\u00e4 sis\u00e4lt\u00f6 on ladattu offline-toistoa varten","samsung-internet-vr-app-info":"Mik\u00e4li sinulla on t\u00e4m\u00e4n laitteen kanssa yhteensopivat Gear VR -virtuaalilasit ja olet asentanut Samsung Internet for VR:n, voit k\u00e4ytt\u00e4\u00e4 virtuaalilaseja t\u00e4m\u00e4n sis\u00e4ll\u00f6n katseluun VR-tilassa. Sinun on lis\u00e4ksi m\u00e4\u00e4ritett\u00e4v\u00e4 Samsung Internet oletusselaimeksi.",
"samsung-internet-vr-info":"Mik\u00e4li sinulla on t\u00e4m\u00e4n laitteen kanssa yhteensopivat Gear VR -virtuaalilasit ja olet asentanut Samsung Internet for VR:n, voit k\u00e4ytt\u00e4\u00e4 virtuaalilaseja t\u00e4m\u00e4n sis\u00e4ll\u00f6n katseluun VR-tilassa. Aseta \u00e4lypuhelin virtuaalilaseihin aloittaaksesi.","enable-video-prompt":"Otetaanko video k\u00e4ytt\u00f6\u00f6n?","giroscope-disabled-safari-request-permission":["Laitteesi liiketunnistimen k\u00e4ytt\u00f6oikeus ja VR-tila on poistettu k\u00e4yt\u00f6st\u00e4 t\u00e4ll\u00e4 sivustolla.",
"N\u00e4hd\u00e4ksesi t\u00e4m\u00e4n verkkosivun oikein, valitse jatka ja hyv\u00e4ksy lupapyynt\u00f6 pyydett\u00e4ess\u00e4."],"storage-not-provided-launch-from-homescreen":"Uudelleenk\u00e4ynnist\u00e4 t\u00e4m\u00e4 sis\u00e4lt\u00f6 kotin\u00e4yt\u00f6n kuvakkeesta aloittaaksesi lataamisen","enter-fullscreen":"Avaa koko n\u00e4yt\u00f6n n\u00e4kym\u00e4","use-cardboard-v2":"K\u00e4yt\u00e4 Cardboard v2:sta",unmute:"Ota \u00e4\u00e4ni k\u00e4ytt\u00f6\u00f6n","enter-vr":"Siirry VR-tilaan","enable-measure":"Aloita mittaaminen",
"use-cardboard-info":"Voit k\u00e4ytt\u00e4\u00e4 mit\u00e4 tahansa yhteensopivia Google Cardboard -virtuaalilaseja katsellaksesi t\u00e4t\u00e4 sis\u00e4lt\u00f6\u00e4 VR-tilassa.","refresh-downloaded":"P\u00e4ivit\u00e4","use-default-cardboard":"K\u00e4yt\u00e4 oletuksena","enable-audio-prompt":"Otetaanko \u00e4\u00e4ni k\u00e4ytt\u00f6\u00f6n?"},"fr-fr":{mute:"D\u00e9sactiver l'audio","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.",
"download-tour":"Download Tour for offline playing","giroscope-disabled-safari-request-permission":["L'acc\u00e8s aux mouvements et \u00e0 l'orientation de votre appareil est d\u00e9sactiv\u00e9 pour ce site.","Pour voir correctement cette page Web, veuillez cliquer sur Continuer et accepter la demande d'autorisation si elle est affich\u00e9e."],accept:"Accepter",download:"Download",downloading:"Downloading","dont-display-again":"Ne plus afficher cette information","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",
cancel:"Cancel","change-to-click-and-move":"Changer le mode de contr\u00f4le pour cliquer et d\u00e9placer",yes:"oui","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Quitter le mode plein \u00e9cran",no:"non","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","download-failed":"Download failed","giroscope-disabled-http":"L'acc\u00e8s aux mouvements et \u00e0 l'orientation de votre appareil est d\u00e9sactiv\u00e9 pour cette page Web. Veuillez y acc\u00e9der via https.",
"cookies-notice":"Cette page Web utilise des cookies pour collecter des statistiques d'utilisation. Pour plus d'informations, veuillez consulter la <a>Politique relative aux cookies</a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"Rejeter","disable-measure":"Stop measuring","change-to-drag-and-release":"Changer le mode de contr\u00f4le pour faire glisser et rel\u00e2cher","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.",
"enable-video-audio-prompt":"Activer l'audio? et la vid\u00e9o?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Activer la vid\u00e9o?","storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Passer en mode plein \u00e9cran","use-cardboard-v2":"Use Cardboard v2",unmute:"Activer l'audio","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default",
"enable-audio-prompt":"Activer l'audio?"},"hr-hr":{mute:"nijem","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"Promijenite na\u010din upravljanja u povla\u010denje i otpu\u0161tanje",accept:"Prihvatiti",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.",
"dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",cancel:"Cancel","change-to-click-and-move":"Promijenite na\u010din upravljanja na Klik i Premjesti",yes:"Da","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Iza\u0111ite s punog zaslona",
no:"Ne","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"Ova web stranica koristi kola\u010di\u0107e za prikupljanje statistike upotrebe. Za vi\u0161e informacija posjetite <a>Pravila o kola\u010di\u0107ima</a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device",
"exit-vr":"Exit VR",reject:"Odbiti","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Omogu\u0107iti videozapis i zvuk?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.",
"samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.","enable-video-prompt":"Omogu\u0107ite videozapis?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],
"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Unesite cijeli zaslon","use-cardboard-v2":"Use Cardboard v2",unmute:"Uklju\u010di mikrofon","enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"\u017delite li omogu\u0107iti zvuk?"},
"hu-hu":{mute:"N\u00e9m\u00edt\u00e1s","cardboard-v1":"Ha nem vagy biztos benne, hogy milyen VR eszk\u00f6zt haszn\u00e1lsz, akkor v\u00e1laszd az alap\u00e9rtelmezettet \u00e9s az egyes hotspot-ok megtekint\u00e9s\u00e9hez csak tartsd ott a jel\u00f6l\u0151t.","download-tour":"T\u00fara let\u00f6lt\u00e9se offline megtekint\u00e9shez","change-to-drag-and-release":"Ir\u00e1ny\u00edt\u00e1s \u00e1t\u00e1ll\u00edt\u00e1sa: megfog \u00e9s mozgat m\u00f3dra",accept:"Elfogad",cancel:"M\u00e9gsem","storage-not-provided-bookmark":"Pr\u00f3b\u00e1lja meg az oldalt megjel\u00f6lni \u00e9s \u00fajrat\u00f6lteni!",
"dont-display-again":"Ne mutasd \u00fajra","web-server-required":"Ez a t\u00fara nem j\u00e1tszat\u00f3 le helyi futtat\u00e1ssal, k\u00e9rlek t\u00f6lsd fel az internetre \u00e9s pr\u00f3b\u00e1ld meg \u00fajra\nM\u00e1sik megold\u00e1s, ha a Tourviewer applik\u00e1ci\u00f3ra h\u00fazod a t\u00fara f\u00e1jlt, vagy az azt tartalmaz\u00f3 t\u00fara mapp\u00e1t.",download:"Let\u00f6lt\u00e9s","change-to-click-and-move":"Ir\u00e1ny\u00edt\u00e1s \u00e1t\u00e1ll\u00edt\u00e1sa kattint \u00e9s k\u00f6rben\u00e9z m\u00f3dra",
yes:"igen","delete-downloaded":"T\u00f6rl\u00e9s","use-safari-for-vr":"Azt javasoljuk, hogy haszn\u00e1lj Safari b\u00f6ng\u00e9sz\u0151t a VR n\u00e9zet megtekint\u00e9s\u00e9hez","exit-fullscreen":"Kil\u00e9p\u00e9s a teljesk\u00e9perny\u0151 m\u00f3db\u00f3l",no:"nem","download-failed":"Let\u00f6lt\u00e9s sikertelen","giroscope-disabled-http":"Az oldalt https el\u0151taggal sz\u00fcks\u00e9ges megnyitnod ahhoz, hogy a k\u00e9sz\u00fcl\u00e9ked mozg\u00e1s\u00e1t \u00e9rz\u00e9kelni tudja.","cookies-notice":"Ez a weboldal s\u00fctiket haszn\u00e1l a haszn\u00e1lati statisztik\u00e1k gy\u0171jt\u00e9s\u00e9hez. Tov\u00e1bbi inform\u00e1ci\u00f3\u00e9rt l\u00e1togasson el a <a>s\u00fctikre vonatkoz\u00f3 ir\u00e1nyelvekbe</a>.",
"use-cardboard":"Cardboard haszn\u00e1lata","launch-default-browser":"Futtat\u00e1s az alap\u00e9rtelmezett b\u00f6ng\u00e9sz\u0151ben","rotate-device":"Forgasd el a telefont!","exit-vr":"Kil\u00e9p\u00e9s a VR m\u00f3db\u00f3l","storage-not-provided-launch-from-desktop":"K\u00e9rlek ind\u00edtsd \u00fajra az oldalt az asztalon tal\u00e1lhat\u00f3 iconra kattintva.","disable-measure":"Stop measuring",downloading:"Let\u00f6lt\u00e9s","cardboard-v2":"Ha Cardboard 2.0 t\u00edpus\u00fa eszk\u00f6zt haszn\u00e1lsz, akkor a kapcsol\u00f3kkal ir\u00e1ny\u00edthatod a t\u00far\u00e1t, kattinthatsz az egyes hotspotokra",
"enable-video-audio-prompt":"Hang \u00e9s vide\u00f3 enged\u00e9lyez\u00e9se",reject:"Elutas\u00edt",downloaded:"Let\u00f6ltve offline megtekint\u00e9shez","samsung-internet-vr-app-info":"Ha Samsung Gear VR szem\u00fcveget szeretn\u00e9l haszn\u00e1lni, akkor nyisd meg a Samsung internetb\u00f6ng\u00e9sz\u0151ben a t\u00far\u00e1t.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Vide\u00f3 enged\u00e9lyez\u00e9se","giroscope-disabled-safari-request-permission":["A megjelen\u00edt\u0151 eszk\u00f6z\u00f6d nem adott hozz\u00e1f\u00e9r\u00e9st a mozg\u00e1s \u00e9rz\u00e9kel\u00e9s\u00e9hez ezen az oldalon.","Ahhoz hogy megfelel\u0151en l\u00e1sd az oldalt k\u00e9rlek enged\u00e9lyezd a hozz\u00e1f\u00e9r\u00e9st."],"storage-not-provided-launch-from-homescreen":"Ind\u00edtsd \u00fajra a t\u00far\u00e1t a home ikonra kattintva.","enter-fullscreen":"Teljesk\u00e9perny\u0151",
"use-cardboard-v2":"Cardboard 2.0 haszn\u00e1lata",unmute:"N\u00e9m\u00edt\u00e1s kikapcsol\u00e1sa","enter-vr":"VR tartalom megtekint\u00e9se","enable-measure":"Start measuring","use-cardboard-info":"Haszn\u00e1lhatsz b\u00e1rmilyen google cardboard-ot ahhoz, hogy VR m\u00f3dban l\u00e1sd a t\u00far\u00e1t.","refresh-downloaded":"Friss\u00edt\u00e9s","use-default-cardboard":"Alap\u00e9rtelmezett haszn\u00e1lata","enable-audio-prompt":"Hang enged\u00e9lyez\u00e9se"},"id-id":{mute:"Mute","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.",
"download-tour":"Download Tour for offline playing","change-to-drag-and-release":"Change control mode to Drag and Release",accept:"Menerima",cancel:"Cancel","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",
download:"Download","change-to-click-and-move":"Change control mode to Click and Move",yes:"yes","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Exit fullscreen",no:"no","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"Halaman web ini menggunakan cookie untuk mengumpulkan statistik penggunaan. Untuk informasi lebih lanjut, silakan kunjungi <a>Kebijakan Cookie</a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Enable video and audio?",
reject:"Menolak",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Enable video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Enter fullscreen","use-cardboard-v2":"Use Cardboard v2",unmute:"Unmute","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Enable audio?"},"it-it":{mute:"Disabilita audio","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing",
"change-to-drag-and-release":"Cambia la modalit\u00e0 di controllo per trascinare e rilasciare",accept:"Accettare",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",
cancel:"Cancel","change-to-click-and-move":"Cambia la modalit\u00e0 di controllo per fare clic e spostare",yes:"s\u00ec","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Esci dalla modalit\u00e0 schermo intero",no:"no","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.",
"cookies-notice":"Questa pagina web utilizza i cookie per raccogliere statistiche sull'utilizzo. Per ulteriori informazioni, visita la <a>Cookie Policy</a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"Rifiutare","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.",
"enable-video-audio-prompt":"Abilita audio e video?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Abilita il video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Entra a schermo intero","use-cardboard-v2":"Use Cardboard v2",unmute:"Abilita audio","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Abilita l'audio?"},"ja-jp":{mute:"\u30df\u30e5\u30fc\u30c8","cardboard-v1":"\u4f7f\u7528\u3057\u3066\u3044\u308bCardboard\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304c\u308f\u304b\u3089\u306a\u3044\u5834\u5408\u3001\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30db\u30c3\u30c8\u30b9\u30dd\u30c3\u30c8\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u3092\u9078\u629e\u3057\u307e\u3059\u3002\u6b21\u306b\u3001\u30db\u30c3\u30c8\u30b9\u30dd\u30c3\u30c8\u3092\u6ce8\u8996\u3057\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u304c\u52d5\u4f5c\u3059\u308b\u307e\u3067\u5f85\u6a5f\u3057\u307e\u3059\u3002\uff08\u4e00\u90e8\u52d5\u4f5c\u3057\u306a\u3044\u30a2\u30af\u30b7\u30e7\u30f3\u6709\u308a\uff09",
"download-tour":"\u30aa\u30d5\u30e9\u30a4\u30f3\u518d\u751f\u7528\u30c4\u30a2\u30fc\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b","change-to-drag-and-release":"\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30e2\u30fc\u30c9\u3092\u30c9\u30e9\u30c3\u30b0\uff06\u30ea\u30ea\u30fc\u30b9\u306b\u5909\u66f4",accept:"\u53d7\u3051\u5165\u308c\u308b",cancel:"\u30ad\u30e3\u30f3\u30bb\u30eb","storage-not-provided-bookmark":"\u6c38\u7d9a\u7684\u306a\u4fdd\u5b58\u304c\u62d2\u5426\u3055\u308c\u305f\u3002\u3053\u306eWeb\u30da\u30fc\u30b8\u3092\u30d6\u30c3\u30af\u30de\u30fc\u30af\u3057\u3001\u66f4\u65b0\u3057\u3066\u304f\u3060\u3055\u3044",
"dont-display-again":"\u4eca\u5f8c\u3053\u306e\u60c5\u5831\u3092\u8868\u793a\u3057\u306a\u3044","web-server-required":"\u3053\u306e\u30d0\u30fc\u30c1\u30e3\u30eb\u30c4\u30a2\u30fc\u306f\u3001\u30ed\u30fc\u30ab\u30eb\u30c9\u30e9\u30a4\u30d6\u304b\u3089\u518d\u751f\u3067\u304d\u307e\u305b\u3093\u3002\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306b\u63a5\u7d9a\u3057\u3001\u3082\u3046\u4e00\u5ea6\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3092\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\n\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001htm\u30d5\u30a1\u30a4\u30eb\uff08\u307e\u305f\u306f\u30c4\u30a2\u30fc\u306e\u30d5\u30a9\u30eb\u30c0\u30fc\u5168\u4f53\uff09\u3092\u300eTourViewer\u300f\u30a2\u30d7\u30ea\u306e\u30a2\u30a4\u30b3\u30f3\u306b\u30c9\u30e9\u30c3\u30b0\u3057\u307e\u3059",
download:"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9","change-to-click-and-move":"\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30e2\u30fc\u30c9\u3092\u30af\u30ea\u30c3\u30af\uff06\u30e0\u30fc\u30d6\u306b\u5909\u66f4",yes:"\u306f\u3044","delete-downloaded":"\u524a\u9664","use-safari-for-vr":"\u3053\u306e\u30c4\u30a2\u30fc\u3092VR\u30d3\u30e5\u30fc\u3067\u8868\u793a\u3059\u308b\u306b\u306f\u3001Safari\u30d6\u30e9\u30a6\u30b6\u306e\u5229\u7528\u3092\u304a\u52e7\u3081\u3057\u307e\u3059","exit-fullscreen":"\u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u3092\u7d42\u4e86\u3059\u308b",
no:"\u3044\u3044\u3048","download-failed":"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5931\u6557\u3057\u307e\u3057\u305f","giroscope-disabled-http":"\u3053\u306eWeb\u30da\u30fc\u30b8\u306b\u300ehttp\u300f\u7d4c\u7531\u3067\u30a2\u30af\u30bb\u30b9\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u3054\u5229\u7528\u7aef\u672b\u306e\u30e2\u30fc\u30b7\u30e7\u30f3\u3068\u753b\u9762\u306e\u5411\u304d\u3078\u30a2\u30af\u30bb\u30b9\u304c\u3067\u304d\u305a\u3001VR\u30e2\u30fc\u30c9\u304c\u7121\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002\u300ehttps\u300f\u7d4c\u7531\u3067\u30a2\u30af\u30bb\u30b9\u3057\u6709\u52b9\u306b\u3057\u3066\u304f\u3060\u3055\u3044",
"cookies-notice":"\u3053\u306e\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\u306fCookie\u3092\u4f7f\u7528\u3057\u3066\u4f7f\u7528\u7d71\u8a08\u3092\u53ce\u96c6\u3057\u307e\u3059\u3002 \u8a73\u7d30\u306b\u3064\u3044\u3066\u306f\u3001<a>Cookie\u30dd\u30ea\u30b7\u30fc</a>\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002","use-cardboard":"Cardboard\u5229\u7528","launch-default-browser":"\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30d6\u30e9\u30a6\u30b6\u3067\u8d77\u52d5","rotate-device":"\u7aef\u672b\u3092\u56de\u8ee2\u3055\u305b\u3066\u304f\u3060\u3055\u3044",
"exit-vr":"VR\u30d3\u30e5\u30fc \u7d42\u4e86","storage-not-provided-launch-from-desktop":"\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u30a2\u30a4\u30b3\u30f3\u304b\u3089\u30c4\u30a2\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3001\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044","disable-measure":"Stop measuring",downloading:"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d","cardboard-v2":"\u30dc\u30bf\u30f3\u304c\u4ed8\u5c5e\u3057\u3066\u3044\u308bCardboard v2\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u3092\u304a\u6301\u3061\u306e\u5834\u5408\u306f\u3053\u3061\u3089\u3002",
"enable-video-audio-prompt":"\u30d3\u30c7\u30aa\u3068\u97f3\u58f0\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u304b\uff1f",reject:"\u62d2\u5426\u3059\u308b",downloaded:"\u3053\u306e\u30c4\u30a2\u30fc\u306f\u3001\u30aa\u30d5\u30e9\u30a4\u30f3\u3067\u518d\u751f\u3059\u308b\u305f\u3081\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3092\u3059\u308b","samsung-internet-vr-app-info":"\u3053\u306e\u7aef\u672b\u3068\u4e92\u63db\u6027\u306e\u3042\u308bVR\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u6a5f\u5668\u3092\u304a\u6301\u3061\u3067\u3001VR\u7528\u306e\u300eSamsung Internet\u300f\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u3044\u308b\u5834\u5408\u3002VR\u30d3\u30e5\u30fc\u3067\u3053\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002\u305d\u306e\u969b\u3001\u300eSamsung Internet\u300f\u3092\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30d6\u30e9\u30a6\u30b6\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059",
"samsung-internet-vr-info":"\u3053\u306e\u7aef\u672b\u3068\u4e92\u63db\u6027\u306e\u3042\u308bVR\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u6a5f\u5668\u3092\u304a\u6301\u3061\u3067\u3001VR\u7528\u306e\u300eSamsung Internet\u300f\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u3044\u308b\u5834\u5408\u3002VR\u30d3\u30e5\u30fc\u3067\u3053\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002\u305d\u306e\u969b\u3001\u30b9\u30de\u30fc\u30c8\u30d5\u30a9\u30f3\u3092\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u306b\u88c5\u7740\u3059\u308b\u3060\u3051\u3067\u3059",
"enable-video-prompt":"\u30d3\u30c7\u30aa\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u304b\uff1f","giroscope-disabled-safari-request-permission":["\u3054\u5229\u7528\u7aef\u672b\u306e\u30e2\u30fc\u30b7\u30e7\u30f3\u3068\u753b\u9762\u306e\u5411\u304d\u3078\u30a2\u30af\u30bb\u30b9\u304c\u3067\u304d\u305a\u3001VR\u30e2\u30fc\u30c9\u304c\u7121\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002","\u3053\u306eWeb\u30da\u30fc\u30b8\u3092\u6b63\u3057\u304f\u8868\u793a\u3059\u308b\u306b\u306f\u3001\u300eOK\u300f\u3092\u30af\u30ea\u30c3\u30af\u3057\u300e\u8a31\u53ef\u300f\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u53d7\u3051\u5165\u308c\u3066\u304f\u3060\u3055\u3044"],
"storage-not-provided-launch-from-homescreen":"\u30db\u30fc\u30e0\u753b\u9762\u306e\u30a2\u30a4\u30b3\u30f3\u304b\u3089\u30c4\u30a2\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3001\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044","enter-fullscreen":"\u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u3067\u5165\u529b\u3059\u308b","use-cardboard-v2":"Cardboard v2\u5229\u7528",unmute:"\u30df\u30e5\u30fc\u30c8\u89e3\u9664","enter-vr":"VR\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u5165\u529b","enable-measure":"Start measuring",
"use-cardboard-info":"\u3053\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092VR\u30d3\u30e5\u30fc\u3067\u8868\u793a\u3059\u308b\u306b\u306f\u3001\u4e92\u63db\u6027\u306e\u3042\u308b\u4efb\u610f\u306eGoogle Cardboard\u30d8\u30c3\u30c9\u30bb\u30c3\u30c8\u3092\u5229\u7528\u3067\u304d\u307e\u3059","refresh-downloaded":"\u66f4\u65b0","use-default-cardboard":"\u30c7\u30d5\u30a9\u30eb\u30c8\u5229\u7528","enable-audio-prompt":"\u97f3\u58f0\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u304b\uff1f"},"nb-no":{mute:"Skru av lyd",
"cardboard-v1":"Hvis du ikke er sikker, hvilken Cardboard versjon du bruker, velger du standard hotspot-kontrollen. Du vil da bare se p\u00e5 et hotspot og vente til handlingen utl\u00f8ses.","download-tour":"Last ned visningen, s\u00e5 den kan bli sett uten internett","change-to-drag-and-release":"Endre kontrollmodus til Trekk og Slipp",accept:"Aksepterer",cancel:"Avbryt","storage-not-provided-bookmark":"Vedvarende lagring nektet. Pr\u00f8v \u00e5 bokmerke denne nettsiden og laste den inn p\u00e5 nytt.",
"dont-display-again":"Ikke vis denne informasjonen igjen","web-server-required":"Denne virtuelle visningen kan ikke spilles av lokalt. Vennligst last den opp til internett, og fors\u00f8k igjen.\ndersom du prefererer det, kan du dra htm filen (eller hele mappen som inneholder visningen) over 'TourViewer' appen.",download:"Last ned","change-to-click-and-move":"Endre kontrollmodus til Klikk og Flytt",yes:"Ja","delete-downloaded":"Slett","use-safari-for-vr":"Vi anbefaler Safari for \u00e5 se p\u00e5 venne visningen i VR modus",
"exit-fullscreen":"G\u00e5 ut av full skjerm",no:"Nei","download-failed":"Nedlastning feilet","giroscope-disabled-http":"Du er koblet til denne nettsiden via http. Dermed er enhetens bevegelses- og orienteringstilgang og VR-modus deaktivert. Koble til via https for \u00e5 aktivere denne.","cookies-notice":"Denne websiden bruker informasjonskapsler for \u00e5 samle inn bruksstatistikk. For mer informasjon, bes\u00f8k <a>retningslinjer for informasjonskapsler</a>.","use-cardboard":"Bruk Cardboard",
"launch-default-browser":"\u00c5pne i standard nettleser","rotate-device":"Vennligst roter enheten","exit-vr":"G\u00e5 ut av VR","storage-not-provided-launch-from-desktop":"Start turen p\u00e5 nytt fra skrivebordsikonet for \u00e5 laste ned.","disable-measure":"Stop measuring",downloading:"Laster ned","cardboard-v2":"Dersom du har Cardboard versjon 2, hvilket kommer med en knapp, kan du kikke p\u00e5 en klikkbar ting i visningen, og bruke knappen for \u00e5 bruke disse tingene, p\u00e5 samme m\u00e5te som p\u00e5 en laptop eller telefon.",
"enable-video-audio-prompt":"Aktivere video og lyd?",reject:"Avvis",downloaded:"Denne visningen er lastet ned, s\u00e5 den kan bli sett uten internett.","samsung-internet-vr-app-info":"Hvis du har et Gear VR-headset som er kompatibelt med denne enheten og har installert Samsung Internet for VR, kan du ogs\u00e5 bruke det til \u00e5 se dette innholdet i VR, du m\u00e5 ogs\u00e5 gj\u00f8re Samsung Internet til standard nettleser.","samsung-internet-vr-info":"Hvis du har et Gear VR-headset som er kompatibelt med denne enheten, og du har installert Samsung Internet for VR, kan du ogs\u00e5 bruke det til \u00e5 se dette innholdet i VR, du trenger bare \u00e5 sette mobiltelefonen p\u00e5 headsettet n\u00e5.",
"enable-video-prompt":"Aktivere video?","giroscope-disabled-safari-request-permission":["Din enhet sin bevegelses- og orienterings tilgang, samt VR modus er deaktivert for denne nettsiden.","For \u00e5 se denne siden korrekt, vennligst klikk p\u00e5 fortsett og godta tillatelsesforesp\u00f8rselen hvis du blir bedt om dette."],"storage-not-provided-launch-from-homescreen":"Start turen p\u00e5 nytt fra startskjermikonet for \u00e5 laste ned.","enter-fullscreen":"G\u00e5 til full skjerm","use-cardboard-v2":"Bruk Cardboard Versjon 2",
unmute:"Skru p\u00e5 lyd","enter-vr":"\u00c5pne VR Modus","enable-measure":"Start measuring","use-cardboard-info":"Du kan bruke hvilke some helst Google Cardboard kompatible headsett for \u00e5 se denne visningen i VR.","refresh-downloaded":"Last inn p\u00e5 nytt","use-default-cardboard":"Bruk Standard","enable-audio-prompt":"Aktivere audio?"},"nl-nl":{mute:"Schakel audio uit","cardboard-v1":"Als u niet weet wat voor versie van Cardboard u gebruikt, selecteer dan de default hotspot control. Dan zult u moeten wachten op een hotspot tot er een bepaald actie is gestart.",
"download-tour":"Download Tour voor offline afspelen","change-to-drag-and-release":"Verander de besturingsmodus om te slepen en los te laten",accept:"Aanvaarden",download:"Download","storage-not-provided-bookmark":"Aanhoudende inhoud geweigerd. Probeer deze pagina als bookmark op te slaan en te verversen.","dont-display-again":"Niet meer laten zien","web-server-required":"Deze virtuele tour kan niet worden afgespeeld vanaf een lokale schijf. Upload dit alstublieft op het internet. Je kan ook de htm bestand slepen naar het icoon van de TourViewer app.",
cancel:"Annuleren","change-to-click-and-move":"Verander de bedieningsmodus om te klikken en te verplaatsen",yes:"Ja","delete-downloaded":"Verwijderen","use-safari-for-vr":"We raden aan om in Safari deze tour te bekijken in VR mode","exit-fullscreen":"Volledig scherm verlaten",no:"Nee","download-failed":"Download mislukt","giroscope-disabled-http":"Jij betreedt deze pagina door http, dus uw toestel's motion en orientation access en VR modus zijn uitgeschakeld. Betreed deze pagina door https om ze weer aan te schakelen.",
"cookies-notice":"Deze webpagina maakt gebruik van cookies om gebruiksstatistieken te verzamelen. Raadpleeg het <a>Cookiebeleid</a> voor meer informatie.","use-cardboard":"Gebruik Cardboard","launch-default-browser":"Start op in standaard browser","rotate-device":"Draai uw toestel om, alstublieft","exit-vr":"VR verlaten",reject:"Weigeren","disable-measure":"Stop meten",downloading:"Downloaden","cardboard-v2":"Als u een Cardboard v2 headset heeft, wat met een knop komt, kunt u wachten op een hotspot en een op een knop drukken om een actie te starten.",
"enable-video-audio-prompt":"Audio en video inschakelen?","storage-not-provided-launch-from-desktop":"Start de tour alstublieft opnieuw up vanaf het bureaublad om te kunnen downloaden.",downloaded:"Deze tour is gedownload voor offline afspelen.","samsung-internet-vr-app-info":"Als u een Gear VR headset heeft dat werkt met dit toestel en u Samsung Internet voor VR heeft ge\u00efnstalleerd, kunt u dit ook bekijken in VR. U moet alleen Samsung Internet instellen als uw standaard browser.","samsung-internet-vr-info":"Als u een Gear VR headset heeft dat werkt met dit toestel en u Samsung Internet voor VR heeft ge\u00efnstalleerd, kunt u dit ook bekijken in VR, u moet alleen uw mobiele toestel op uw headset zetten.",
"enable-video-prompt":"Video inschakelen?","giroscope-disabled-safari-request-permission":["Uw toestel's motion en orientation access en VR modus zijn uitgeschakeld voor deze site..","Om deze pagina goed te kunnen zien, druk op doorgaan en geef toestemming als dat gevraagd wordt."],"storage-not-provided-launch-from-homescreen":"Start de tour alstublieft opnieuw up vanaf het homescherm om te kunnen downloaden.","enter-fullscreen":"Volledig scherm inschakelen","use-cardboard-v2":"Gebruik Cardboard v2",
unmute:"Schakel audio in","enter-vr":"Voer VR inhoud in","enable-measure":"Begin meten","use-cardboard-info":"U kunt elk werkend Google Cardboard headset gebruiken om dit te bekijken.","refresh-downloaded":"Verversen","use-default-cardboard":"Standaard gebruiken","enable-audio-prompt":"Audio inschakelen?"},"nn-no":{mute:"Skru av lyd","cardboard-v1":"Hvis du ikke er sikker, hvilken Cardboard versjon du bruker, velger du standard hotspot-kontrollen. Du vil da bare se p\u00e5 et hotspot og vente til handlingen utl\u00f8ses.",
"download-tour":"Last ned visningen, s\u00e5 den kan bli sett uten internett","change-to-drag-and-release":"Endre kontrollmodus til Trekk og Slipp",accept:"Aksepterer",cancel:"Avbryt","storage-not-provided-bookmark":"Vedvarende lagring nektet. Pr\u00f8v \u00e5 bokmerke denne nettsiden og laste den inn p\u00e5 nytt.","dont-display-again":"Ikke vis denne informasjonen igjen","web-server-required":"Denne virtuelle visningen kan ikke spilles av lokalt. Vennligst last den opp til internett, og fors\u00f8k igjen.\ndersom du prefererer det, kan du dra htm filen (eller hele mappen som inneholder visningen) over 'TourViewer' appen.",
download:"Last ned","change-to-click-and-move":"Endre kontrollmodus til Klikk og Flytt",yes:"Ja","delete-downloaded":"Slett","use-safari-for-vr":"Vi anbefaler Safari for \u00e5 se p\u00e5 venne visningen i VR modus","exit-fullscreen":"G\u00e5 ut av full skjerm",no:"Nei","download-failed":"Nedlastning feilet","giroscope-disabled-http":"Du er koblet til denne nettsiden via http. Dermed er enhetens bevegelses- og orienteringstilgang og VR-modus deaktivert. Koble til via https for \u00e5 aktivere denne.",
"cookies-notice":"Denne websiden bruker informasjonskapsler for \u00e5 samle inn bruksstatistikk. For mer informasjon, bes\u00f8k <a>retningslinjer for informasjonskapsler</a>.","use-cardboard":"Bruk Cardboard","launch-default-browser":"\u00c5pne i standard nettleser","rotate-device":"Vennligst roter enheten","exit-vr":"G\u00e5 ut av VR","storage-not-provided-launch-from-desktop":"Start turen p\u00e5 nytt fra skrivebordsikonet for \u00e5 laste ned.","disable-measure":"Stop measuring",downloading:"Laster ned",
"cardboard-v2":"Dersom du har Cardboard versjon 2, hvilket kommer med en knapp, kan du kikke p\u00e5 en klikkbar ting i visningen, og bruke knappen for \u00e5 bruke disse tingene, p\u00e5 samme m\u00e5te som p\u00e5 en laptop eller telefon.","enable-video-audio-prompt":"Aktivere video og lyd?",reject:"Avvis",downloaded:"Denne visningen er lastet ned, s\u00e5 den kan bli sett uten internett.","samsung-internet-vr-app-info":"Hvis du har et Gear VR-headset som er kompatibelt med denne enheten og har installert Samsung Internet for VR, kan du ogs\u00e5 bruke det til \u00e5 se dette innholdet i VR, du m\u00e5 ogs\u00e5 gj\u00f8re Samsung Internet til standard nettleser.",
"samsung-internet-vr-info":"Hvis du har et Gear VR-headset som er kompatibelt med denne enheten, og du har installert Samsung Internet for VR, kan du ogs\u00e5 bruke det til \u00e5 se dette innholdet i VR, du trenger bare \u00e5 sette mobiltelefonen p\u00e5 headsettet n\u00e5.","enable-video-prompt":"Aktivere video?","giroscope-disabled-safari-request-permission":["Din enhet sin bevegelses- og orienterings tilgang, samt VR modus er deaktivert for denne nettsiden.","For \u00e5 se denne siden korrekt, vennligst klikk p\u00e5 fortsett og godta tillatelsesforesp\u00f8rselen hvis du blir bedt om dette."],
"storage-not-provided-launch-from-homescreen":"Start turen p\u00e5 nytt fra startskjermikonet for \u00e5 laste ned.","enter-fullscreen":"G\u00e5 til full skjerm","use-cardboard-v2":"Bruk Cardboard Versjon 2",unmute:"Skru p\u00e5 lyd","enter-vr":"\u00c5pne VR Modus","enable-measure":"Start measuring","use-cardboard-info":"Du kan bruke hvilke some helst Google Cardboard kompatible headsett for \u00e5 se denne visningen i VR.","refresh-downloaded":"Last inn p\u00e5 nytt","use-default-cardboard":"Bruk Standard",
"enable-audio-prompt":"Aktivere audio?"},"pl-pl":{mute:"Wycisz","cardboard-v1":"Je\u015bli nie masz pewno\u015bci, kt\u00f3rej wersji Cardboard u\u017cywasz, wybierz domy\u015blne sterowanie hotspotem. Nast\u0119pnie skieruj wzrok na hotspot i poczekaj na uruchomienie ich dzia\u0142ania.","download-tour":"Pobierz spacer do odtwarzania w trybie offline","change-to-drag-and-release":"Zmie\u0144 tryb na Przeci\u0105gnij i Upu\u015b\u0107",accept:"Zaakceptowa\u0107",cancel:"Anuluj","storage-not-provided-bookmark":"Odmowa zapisu w pami\u0119ci sta\u0142ej. Spr\u00f3buj doda\u0107 stron\u0119 do zak\u0142adek i za\u0142aduj j\u0105 ponownie.",
"dont-display-again":"Nie wy\u015bwietlaj tego ponownie","web-server-required":"Nie mo\u017cna odtworzy\u0107 tego spaceru z dysku lokalnego. Prze\u015blij go do internetu i spr\u00f3buj ponownie.\nMo\u017cesz te\u017c przeci\u0105gn\u0105\u0107 plik htm (lub ca\u0142y folder spaceru) na ikon\u0119 aplikacji TourViewer.",download:"Pobierz","change-to-click-and-move":"Zmie\u0144 tryb na to Kliknij i Przenie\u015b",yes:"tak","delete-downloaded":"Usu\u0144","use-safari-for-vr":"Zalecamy Safari, jako przegl\u0105dark\u0119 spacer\u00f3w w trybie VR",
"exit-fullscreen":"Wyjd\u017a z trybu pe\u0142nego ekranu",no:"nie","download-failed":"Pobieranie nie powiod\u0142o si\u0119","giroscope-disabled-http":"To jest dost\u0119p za po\u015brednictwem protoko\u0142u http, wi\u0119c dost\u0119p do ruchu i orientacji oraz tryb VR s\u0105 wy\u0142\u0105czone. Prze\u0142\u0105cz si\u0119\u00a0na protok\u00f3\u0142 https, aby je w\u0142\u0105czy\u0107.","cookies-notice":"Ta strona u\u017cywa plik\u00f3w cookie do zbierania statystyk u\u017cytkowania. Aby uzyska\u0107 wi\u0119cej informacji, odwied\u017a <a>Zasady dotycz\u0105ce plik\u00f3w cookie</a>.",
"use-cardboard":"U\u017cyj Cardboard","launch-default-browser":"Uruchom w domy\u015blnej przegl\u0105darce","rotate-device":"Obr\u00f3\u0107 urz\u0105dzenie","exit-vr":"Wyjd\u017a z VR","storage-not-provided-launch-from-desktop":"Aby pobra\u0107, uruchom ponownie spacer klikaj\u0105c ikon\u0119 pulpitu.","disable-measure":"Stop measuring",downloading:"Pobieranie","cardboard-v2":"Je\u015bli masz okulary Cardboard v2, kt\u00f3re maj\u0105 przycisk, mo\u017cesz spojrze\u0107 na hotspot i nacisn\u0105\u0107 przycisk, aby uruchomi\u0107 ich dzia\u0142anie.",
"enable-video-audio-prompt":"W\u0142\u0105czy\u0107 video i d\u017awi\u0119k?",reject:"Odrzuca\u0107",downloaded:"Spacer jest pobierany do odtwarzania w trybie offline.","samsung-internet-vr-app-info":"Je\u015bli masz okulary zgodne z Gear VR i zainstalowa\u0142e\u015b Samsung Internet for VR, mo\u017cesz je u\u017cy\u0107 do przegl\u0105dania zawarto\u015bci w VR. Musisz w tym przypadku ustawi\u0107 Samsung Internet jako domy\u015bln\u0105 przegl\u0105dark\u0119.","samsung-internet-vr-info":"Je\u015bli masz okulary Gear VR i zainstalowa\u0142e\u015b Samsung Internet for VR, to mo\u017cesz u\u017cy\u0107 ich do przegl\u0105dania zawarto\u015bci w VR. Umie\u015b\u0107 teraz telefon w okularach Gear VR.",
"enable-video-prompt":"W\u0142\u0105czy\u0107 video?","giroscope-disabled-safari-request-permission":["Dost\u0119p do funkcji ruchu i orientacji oraz tryb VR s\u0105 wy\u0142\u0105czone dla tej strony.","Aby poprawnie wy\u015bwietli\u0107 stron\u0119, kliknij kontynuuj i zaakceptuj wszystkie zgody."],"storage-not-provided-launch-from-homescreen":"Aby pobra\u0107, uruchom ponownie spacer klikaj\u0105c ikon\u0119 strony g\u0142\u00f3wnej.","enter-fullscreen":"Uruchom pe\u0142ny ekran","use-cardboard-v2":"U\u017cyj Cardboard v2",
unmute:"Wy\u0142\u0105cz Wycisz","enter-vr":"Wejd\u017a do VR","enable-measure":"Start measuring","use-cardboard-info":"Do wy\u015bwietlania w VR mo\u017cesz u\u017cy\u0107 oklular\u00f3w zgodnych z Google Cardboard.","refresh-downloaded":"Od\u015bwie\u017c","use-default-cardboard":"U\u017cyj Domy\u015blnych","enable-audio-prompt":"W\u0142\u0105czy\u0107 d\u017awi\u0119k?"},"pt-br":{mute:"Desativar som","cardboard-v1":"Se voc\u00ea n\u00e3o tiver certeza de qual vers\u00e3o do Cardboard est\u00e1 usando, selecione o controle de ponto de acesso padr\u00e3o. Voc\u00ea simplesmente olha para um ponto de acesso e espera at\u00e9 que a a\u00e7\u00e3o seja acionada.",
"download-tour":"Download do Tour para reprodu\u00e7\u00e3o offline","change-to-drag-and-release":"Alterar controle para arrastar e soltar",accept:"Aceitar",cancel:"Cancelar","storage-not-provided-bookmark":"Armazenamento persistente negado. Tente marcar esta p\u00e1gina da Web e recarreg\u00e1-la.","dont-display-again":"N\u00e3o exibir essas informa\u00e7\u00f5es novamente","web-server-required":"Este passeio virtual n\u00e3o pode ser reproduzido a partir de uma unidade local. Envie-o para a Internet e tente novamente.\nSe preferir, arraste o arquivo htm (ou toda a pasta do tour) para o \u00edcone do aplicativo TourViewer.",
download:"Download","change-to-click-and-move":"Alterar controle para clicar e mover",yes:"sim","delete-downloaded":"Apagar","use-safari-for-vr":"Recomendamos o Safari para ver este passeio no modo VR","exit-fullscreen":"Sair tela cheia",no:"n\u00e3o","download-failed":"Falha no Download","giroscope-disabled-http":"Voc\u00ea est\u00e1 acessando esta p\u00e1gina da Web por meio do http, para que o acesso \u00e0 orienta\u00e7\u00e3o e movimento do dispositivo e o modo VR sejam desativados, acesse-o atrav\u00e9s de https para ativ\u00e1-los.",
"cookies-notice":"Esta p\u00e1gina da web usa cookies para coletar estat\u00edsticas de uso. Para obter mais informa\u00e7\u00f5es, visite a <a>Pol\u00edtica de cookies</a>.","use-cardboard":"Use Cardboard","launch-default-browser":"Iniciar no navegador padr\u00e3o","rotate-device":"Por favor, gire seu dispositivo","exit-vr":"Sair do VR","storage-not-provided-launch-from-desktop":"Por favor, reinicie o tour no \u00edcone da \u00e1rea de trabalho para fazer o download.","disable-measure":"Stop measuring",
downloading:"Baixando","cardboard-v2":"Se voc\u00ea tiver um fone de ouvido Cardboard v2, que vem com um bot\u00e3o, poder\u00e1 observar um ponto de acesso e pressionar o bot\u00e3o para acionar sua a\u00e7\u00e3o.","enable-video-audio-prompt":"Ativar \u00e1udio e v\u00eddeo?",reject:"Rejeitar",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"Se voc\u00ea possui um fone de ouvido Gear VR compat\u00edvel com este dispositivo e instalou o Samsung Internet for VR, tamb\u00e9m pode us\u00e1-lo para visualizar esse conte\u00fado em VR. Voc\u00ea precisa tornar o Samsung Internet o seu padr\u00e3o. browser.",
"samsung-internet-vr-info":"Se voc\u00ea possui um fone de ouvido Gear VR compat\u00edvel com este dispositivo e instalou o Samsung Internet for VR, tamb\u00e9m pode us\u00e1-lo para visualizar esse conte\u00fado em VR. Basta colocar o celular no fone de ouvido agora.","enable-video-prompt":"Ativar v\u00eddeo?","giroscope-disabled-safari-request-permission":["O acesso a movimento e orienta\u00e7\u00e3o do dispositivo e o modo VR est\u00e3o desativados para este site.","Para ver corretamente esta p\u00e1gina da web, clique em continuar e aceite a solicita\u00e7\u00e3o de permiss\u00e3o, se solicitado."],
"storage-not-provided-launch-from-homescreen":"Reinicie o tour no \u00edcone da tela inicial para fazer o download.","enter-fullscreen":"Entrar tela cheia","use-cardboard-v2":"Use Cardboard v2",unmute:"Ativar som","enter-vr":"Inserir conte\u00fado VR","enable-measure":"Start measuring","use-cardboard-info":"Voc\u00ea pode usar qualquer fone de ouvido compat\u00edvel do Google Cardboard para visualizar este conte\u00fado em VR","refresh-downloaded":"Atualizar","use-default-cardboard":"Use o padr\u00e3o",
"enable-audio-prompt":"Ativar \u00e1udio?"},"pt-pt":{mute:"Desativar som","cardboard-v1":"Se voc\u00ea n\u00e3o tiver certeza de qual vers\u00e3o do Cardboard est\u00e1 usando, selecione o controle de ponto de acesso padr\u00e3o. Voc\u00ea simplesmente olha para um ponto de acesso e espera at\u00e9 que a a\u00e7\u00e3o seja acionada.","download-tour":"Download do Tour para reprodu\u00e7\u00e3o offline","change-to-drag-and-release":"Alterar controle para arrastar e soltar",accept:"Aceitar",cancel:"Cancelar",
"storage-not-provided-bookmark":"Armazenamento persistente negado. Tente marcar esta p\u00e1gina da Web e recarreg\u00e1-la.","dont-display-again":"N\u00e3o exibir essas informa\u00e7\u00f5es novamente","web-server-required":"Este passeio virtual n\u00e3o pode ser reproduzido a partir de uma unidade local. Envie-o para a Internet e tente novamente.\nSe preferir, arraste o arquivo htm (ou toda a pasta do tour) para o \u00edcone do aplicativo TourViewer.",download:"Download","change-to-click-and-move":"Alterar controle para clicar e mover",
yes:"sim","delete-downloaded":"Apagar","use-safari-for-vr":"Recomendamos o Safari para ver este passeio no modo VR","exit-fullscreen":"Sair tela cheia",no:"n\u00e3o","download-failed":"Falha no Download","giroscope-disabled-http":"Voc\u00ea est\u00e1 acessando esta p\u00e1gina da Web por meio do http, para que o acesso \u00e0 orienta\u00e7\u00e3o e movimento do dispositivo e o modo VR sejam desativados, acesse-o atrav\u00e9s de https para ativ\u00e1-los.","cookies-notice":"Esta p\u00e1gina da web usa cookies para coletar estat\u00edsticas de uso. Para obter mais informa\u00e7\u00f5es, visite a <a>Pol\u00edtica de cookies</a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Iniciar no navegador padr\u00e3o","rotate-device":"Por favor, gire seu dispositivo","exit-vr":"Sair do VR","storage-not-provided-launch-from-desktop":"Por favor, reinicie o tour no \u00edcone da \u00e1rea de trabalho para fazer o download.","disable-measure":"Stop measuring",downloading:"Baixando","cardboard-v2":"Se voc\u00ea tiver um fone de ouvido Cardboard v2, que vem com um bot\u00e3o, poder\u00e1 observar um ponto de acesso e pressionar o bot\u00e3o para acionar sua a\u00e7\u00e3o.",
"enable-video-audio-prompt":"Ativar \u00e1udio e v\u00eddeo?",reject:"Rejeitar",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"Se voc\u00ea possui um fone de ouvido Gear VR compat\u00edvel com este dispositivo e instalou o Samsung Internet for VR, tamb\u00e9m pode us\u00e1-lo para visualizar esse conte\u00fado em VR. Voc\u00ea precisa tornar o Samsung Internet o seu padr\u00e3o. browser.","samsung-internet-vr-info":"Se voc\u00ea possui um fone de ouvido Gear VR compat\u00edvel com este dispositivo e instalou o Samsung Internet for VR, tamb\u00e9m pode us\u00e1-lo para visualizar esse conte\u00fado em VR. Basta colocar o celular no fone de ouvido agora.",
"enable-video-prompt":"Ativar v\u00eddeo?","giroscope-disabled-safari-request-permission":["O acesso a movimento e orienta\u00e7\u00e3o do dispositivo e o modo VR est\u00e3o desativados para este site.","Para ver corretamente esta p\u00e1gina da web, clique em continuar e aceite a solicita\u00e7\u00e3o de permiss\u00e3o, se solicitado."],"storage-not-provided-launch-from-homescreen":"Reinicie o tour no \u00edcone da tela inicial para fazer o download.","enter-fullscreen":"Entrar tela cheia","use-cardboard-v2":"Use Cardboard v2",
unmute:"Ativar som","enter-vr":"Inserir conte\u00fado VR","enable-measure":"Start measuring","use-cardboard-info":"Voc\u00ea pode usar qualquer fone de ouvido compat\u00edvel do Google Cardboard para visualizar este conte\u00fado em VR","refresh-downloaded":"Atualizar","use-default-cardboard":"Use o padr\u00e3o","enable-audio-prompt":"Ativar \u00e1udio?"},"ru-ru":{mute:"\u0411\u0435\u0437 \u0437\u0432\u0443\u043a\u0430","cardboard-v1":"\u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u043a\u0430\u043a\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e Cardboard \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0445\u043e\u0442\u0441\u043f\u043e\u0442 \u043a\u0430\u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0417\u0430\u0442\u0435\u043c \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043d\u0430 \u0445\u043e\u0442\u0441\u043f\u043e\u0442 \u0438 \u0434\u043e\u0436\u0434\u0438\u0442\u0435\u0441\u044c, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435.",
"download-tour":"\u0421\u043a\u0430\u0447\u0430\u0442\u044c \u0442\u0443\u0440 \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f","change-to-drag-and-release":"\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0440\u0435\u0436\u0438\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u043d\u0438\u0435",
accept:"\u041f\u0440\u0438\u043d\u044f\u0442\u044c",download:"\u0421\u043a\u0430\u0447\u0430\u0442\u044c","storage-not-provided-bookmark":"\u0412 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0442\u043a\u0430\u0437\u0430\u043d\u043e. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0438 \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0435\u0435.",
"dont-display-again":"\u0411\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u044d\u0442\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e","web-server-required":"\u042d\u0442\u043e\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0443\u0440 \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0441 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430. \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u0435\u0433\u043e \u0432 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0435 \u0440\u0430\u0437.\n\u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435, \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 htm-\u0444\u0430\u0439\u043b (\u0438\u043b\u0438 \u0432\u0441\u044e \u043f\u0430\u043f\u043a\u0443 \u0442\u0443\u0440\u0430) \u043d\u0430 \u0437\u043d\u0430\u0447\u043e\u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f TourViewer.",
cancel:"\u041e\u0442\u043c\u0435\u043d\u0430","change-to-click-and-move":"\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0440\u0435\u0436\u0438\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043d\u0430\u0436\u0430\u043d\u0438\u0435 \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435",yes:"\u0434\u0430","delete-downloaded":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c","use-safari-for-vr":"\u041c\u044b \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c Safari \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u044d\u0442\u043e\u0433\u043e \u0442\u0443\u0440\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 VR.",
"exit-fullscreen":"\u0412\u044b\u0439\u0442\u0438 \u0438\u0437 \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0430",no:"\u043d\u0435\u0442","download-failed":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438","giroscope-disabled-http":"\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u044d\u0442\u043e\u0439 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0447\u0435\u0440\u0435\u0437 http, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044e \u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u0440\u0435\u0436\u0438\u043c VR \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043e\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u043d\u0435\u0433\u043e \u0447\u0435\u0440\u0435\u0437 https, \u0447\u0442\u043e\u0431\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0438\u0445.",
"cookies-notice":"\u042d\u0442\u0430 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0444\u0430\u0439\u043b\u044b cookie \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0441\u043c. <a>\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0432 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438 \u0444\u0430\u0439\u043b\u043e\u0432 cookie</a>.",
"use-cardboard":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Cardboard","launch-default-browser":"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e","rotate-device":"\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0432\u0435\u0440\u043d\u0438\u0442\u0435 \u0432\u0430\u0448\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e",
"exit-vr":"\u0412\u044b\u0439\u0442\u0438 \u0438\u0437 VR",reject:"\u041e\u0442\u043a\u043b\u043e\u043d\u0438\u0442\u044c","disable-measure":"\u041f\u0440\u0435\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f",downloading:"\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435","cardboard-v2":"\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u0430 Cardboard v2 \u0441 \u043a\u043d\u043e\u043f\u043a\u043e\u0439, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u0445\u043e\u0442\u0441\u043f\u043e\u0442 \u0438 \u043d\u0430\u0436\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435.",
"enable-video-audio-prompt":"\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0438\u0434\u0435\u043e \u0438 \u0430\u0443\u0434\u0438\u043e?","storage-not-provided-launch-from-desktop":"\u0427\u0442\u043e\u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c, \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0442\u0443\u0440 \u0441\u043e \u0437\u043d\u0430\u0447\u043a\u0430 \u043d\u0430 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u0441\u0442\u043e\u043b\u0435..",
downloaded:"\u042d\u0442\u043e\u0442 \u0442\u0443\u0440 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f.","samsung-internet-vr-app-info":"\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u0430 Gear VR, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430\u044f \u0441 \u044d\u0442\u0438\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c, \u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 Samsung Internet \u0434\u043b\u044f VR, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0432 VR, \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c Samsung Internet \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u043c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.",
"samsung-internet-vr-info":"\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u0430 Gear VR, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430\u044f \u0441 \u044d\u0442\u0438\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c, \u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 Samsung Internet \u0434\u043b\u044f VR, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0432 VR, \u0432\u0430\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0434\u0435\u0442\u044c \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043d\u0430 \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u0443 \u0441\u0435\u0439\u0447\u0430\u0441.",
"enable-video-prompt":"\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0438\u0434\u0435\u043e?","giroscope-disabled-safari-request-permission":["\u0414\u043e\u0441\u0442\u0443\u043f \u043a \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044e \u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u0436\u0438\u043c VR \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0430.",
"\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u044d\u0442\u0443 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443, \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u00ab\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\u00bb \u0438 \u043f\u0440\u0438\u043c\u0438\u0442\u0435 \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u0435\u0441\u043b\u0438 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043e."],
"storage-not-provided-launch-from-homescreen":"\u0427\u0442\u043e\u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c, \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0442\u0443\u0440 \u0441\u043e \u0437\u043d\u0430\u0447\u043a\u0430 \u043d\u0430 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u044d\u043a\u0440\u0430\u043d\u0435.","enter-fullscreen":"\u0412\u043e\u0439\u0442\u0438 \u0432 \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c",
"use-cardboard-v2":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Cardboard v2",unmute:"\u0421\u043e \u0437\u0432\u0443\u043a\u043e\u043c","enter-vr":"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c VR \u043a\u043e\u043d\u0442\u0435\u043d\u0442","enable-measure":"\u041d\u0430\u0447\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f","use-cardboard-info":"\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0443\u044e \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u0443 Google Cardboard \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0432 VR.",
"refresh-downloaded":"\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c","use-default-cardboard":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e","enable-audio-prompt":"\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0443\u0434\u0438\u043e?"},"sk-sk":{mute:"St\u00ed\u0161i\u0165","cardboard-v1":"Ak ste si nie ist\u00ed, ktor\u00fa verziu Cardboardu pou\u017e\u00edvate, vyberte si predvolen\u00e9 ovl\u00e1danie hotspotu. Potom sa jednoducho pozriete na hotspot a po\u010dkajte, k\u00fdm sa akcia nespust\u00ed.",
"download-tour":"Stiahnu\u0165 prehliadku na hranie v offline re\u017eime","change-to-drag-and-release":"Zmeni\u0165 re\u017eim ovl\u00e1dania na Presun\u00fa\u0165 a Uvo\u013eni\u0165",accept:"s\u00fahlasi\u0165",cancel:"Zru\u0161i\u0165","storage-not-provided-bookmark":"Trval\u00e9 \u00falo\u017eisko odmietnut\u00e9. Sk\u00faste si t\u00fato webov\u00fa str\u00e1nku ulo\u017ei\u0165 a na\u010d\u00edta\u0165 ju znova.","dont-display-again":"Tieto inform\u00e1cie u\u017e nezobrazova\u0165","web-server-required":"T\u00e1to virtu\u00e1lna prehliadka sa ned\u00e1 prehra\u0165 z lok\u00e1lneho disku. Nahrajte ju na internet a sk\u00faste to znova.\nAk chcete, potiahnite s\u00fabor htm (alebo cel\u00fd prie\u010dinok prehliadky) na ikonu aplik\u00e1cie TourViewer.",
download:"Stiahnu\u0165","change-to-click-and-move":"Zmeni\u0165 re\u017eim ovl\u00e1dania na Klikn\u00fa\u0165 a Presun\u00fa\u0165",yes:"\u00e1no","delete-downloaded":"Zmaza\u0165","use-safari-for-vr":"Odpor\u00fa\u010dame pou\u017e\u00edva\u0165 Safari prehliada\u010d pre t\u00fato prehliadku v re\u017eime VR","exit-fullscreen":"Ukon\u010di\u0165 cel\u00fa obrazovku",no:"nie","download-failed":"S\u0165ahovanie zlyhalo","giroscope-disabled-http":"Na t\u00fato webov\u00fa str\u00e1nku pristupujete cez http protokol, preto pr\u00edstup k pohybu a orient\u00e1cii v\u00e1\u0161ho zariadenia a re\u017eim VR s\u00fa deaktivovan\u00e9. Ak ich chcete povoli\u0165, nav\u0161t\u00edvte str\u00e1nku cez https.",
"cookies-notice":"T\u00e1to webov\u00e1 str\u00e1nka pou\u017e\u00edva s\u00fabory cookie na zhroma\u017e\u010fovanie \u0161tatist\u00edk pou\u017e\u00edvania. \u010eal\u0161ie inform\u00e1cie n\u00e1jdete v <a> pravidl\u00e1ch pou\u017e\u00edvania s\u00faborov cookie </a>.","use-cardboard":"Pou\u017eite Cardboard okuliare.","launch-default-browser":"Spusti\u0165 v predvolenom prehliada\u010di","rotate-device":"Oto\u010dte svoje zariadenie","exit-vr":"Ukon\u010denie VR","storage-not-provided-launch-from-desktop":"Znovu na\u010d\u00edtajte prehliadku pomocou desktop ikony pre jej stiahnite.",
"disable-measure":"Ukon\u010di\u0165 meranie",downloading:"S\u0165ahovanie","cardboard-v2":"Ak m\u00e1te n\u00e1hlavn\u00fa s\u00fapravu Cardboard v2, ktor\u00e1 je dod\u00e1van\u00e1 s tla\u010didlom, m\u00f4\u017eete sa pozrie\u0165 na hotspot a stla\u010den\u00edm tla\u010didla spusti\u0165 akciu.","enable-video-audio-prompt":"Povoli\u0165 video a zvuk?",reject:"Odmietnu\u0165",downloaded:"T\u00e1to prehliadka je stiahnut\u00e1 na hranie v offline re\u017eime.","samsung-internet-vr-app-info":"Ak m\u00e1te Gear VR sl\u00fachadl\u00e1\u00e1 kompatibiln\u00e9 s t\u00fdmto zariaden\u00edm a m\u00e1te nain\u0161talovan\u00fd program Samsung Internet pre VR, m\u00f4\u017eete ho tie\u017e pou\u017ei\u0165 na prezeranie tohto obsahu vo VR. Mus\u00edte si nastavi\u0165 Samsung Internet ako predvolen\u00fd prehliada\u010d.",
"samsung-internet-vr-info":"Ak m\u00e1te Gear VR sl\u00fachadl\u00e1 kompatibiln\u00e9 s t\u00fdmto zariaden\u00edm a m\u00e1te nain\u0161talovan\u00fd program Samsung Internet pre VR, m\u00f4\u017eete ho tie\u017e pou\u017ei\u0165 na prezeranie tohto obsahu vo VR. Sta\u010d\u00ed teraz vlo\u017ei\u0165 mobiln\u00fd telef\u00f3n do n\u00e1hlavnej s\u00fapravy.","enable-video-prompt":"Povoli\u0165 video?","giroscope-disabled-safari-request-permission":["Pre t\u00fato str\u00e1nku s\u00fa pr\u00edstup k pohybu a orient\u00e1cii v\u00e1\u0161ho zariadenia a re\u017eim VR deaktivovan\u00e9.",
"Aby ste korektne videli t\u00fato webov\u00fa str\u00e1nku, pros\u00edm kliknite pokra\u010dova\u0165 a akceptujte po\u017eadovan\u00e9 povolenie."],"storage-not-provided-launch-from-homescreen":"Znovu na\u010d\u00edtajte prehliadku pomocou ikony na ploche pre jej stiahnite.","enter-fullscreen":"Prejs\u0165 na cel\u00fa obrazovku","use-cardboard-v2":"Pou\u017eite Cardboard v2",unmute:"Zapn\u00fa\u0165 zvuk","enter-vr":"Vlo\u017ei\u0165 VR obsah","enable-measure":"Za\u010da\u0165 meranie","use-cardboard-info":"Na zobrazenie tohto obsahu vo VR m\u00f4\u017eete pou\u017ei\u0165 \u013eubovo\u013en\u00fa kompatibiln\u00fa n\u00e1hlavn\u00fa s\u00fapravu Google Cardboard.",
"refresh-downloaded":"Obnovi\u0165","use-default-cardboard":"Pou\u017ei\u0165 predvolen\u00e9","enable-audio-prompt":"Povoli\u0165 zvuk?"},"sv-se":{mute:"Inaktivera ljud","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing","change-to-drag-and-release":"\u00c4ndra kontrolll\u00e4ge f\u00f6r att dra och sl\u00e4ppa",
accept:"Acceptera",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",cancel:"Cancel","change-to-click-and-move":"\u00c4ndra kontrolll\u00e4ge f\u00f6r att klicka och flytta",
yes:"ja","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Avsluta fullsk\u00e4rmen",no:"Nej","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"Denna webbsida anv\u00e4nder cookies f\u00f6r att samla in anv\u00e4ndningsstatistik. F\u00f6r mer information, bes\u00f6k <a>Cookie Policy</a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"Avvisa","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Aktivera ljud och video?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",
downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Aktivera video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Ange fullsk\u00e4rm","use-cardboard-v2":"Use Cardboard v2",unmute:"Aktivera ljud","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Aktivera ljud?"},"tr-tr":{mute:"Sesi devre d\u0131s\u0131 b\u0131rakmak","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing",
"change-to-drag-and-release":"S\u00fcr\u00fckleyip b\u0131rakmak i\u00e7in kontrol modunu de\u011fi\u015ftirin",accept:"Kabul etmek",download:"Download","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",
cancel:"Cancel","change-to-click-and-move":"T\u0131klamak ve ta\u015f\u0131mak i\u00e7in kontrol modunu de\u011fi\u015ftirin",yes:"evet","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Tam ekrandan \u00e7\u0131k",no:"hay\u0131r","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.",
"cookies-notice":"Bu web sayfas\u0131, kullan\u0131m istatistiklerini toplamak i\u00e7in tan\u0131mlama bilgileri kullan\u0131r. Daha fazla bilgi i\u00e7in l\u00fctfen <a>\u00c7erez Politikas\u0131n\u0131</a> ziyaret edin.","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR",reject:"Reddet","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.",
"enable-video-audio-prompt":"Ses ve video etkinle\u015ftirilsin mi?","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Video aktif edilsin mi?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Tam ekran yap","use-cardboard-v2":"Use Cardboard v2",unmute:"Sesi etkinle\u015ftir","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Ses aktif edilsin mi?"},"uk-ua":{mute:"Mute","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"Download Tour for offline playing",
"change-to-drag-and-release":"Change control mode to Drag and Release",accept:"\u041f\u0440\u0438\u0439\u043c\u0456\u0442\u044c",cancel:"Cancel","storage-not-provided-bookmark":"Persistent storage denied. Try bookmarking this webpage and reloading it.","dont-display-again":"Don't display this info again","web-server-required":"This virtual tour cannot be played from a local drive. Please upload it to the internet and try again.\nIf you prefer, drag the htm file (or the entire folder of the tour) onto the icon of the TourViewer app.",
download:"Download","change-to-click-and-move":"Change control mode to Click and Move",yes:"yes","delete-downloaded":"Delete","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"Exit fullscreen",no:"no","download-failed":"Download failed","giroscope-disabled-http":"You are accessing this webpage through http so your device's motion and orientation access and VR mode are disabled, please access it through https to enable them.","cookies-notice":"\u0426\u044f \u0432\u0435\u0431-\u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0430 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454 \u0444\u0430\u0439\u043b\u0438 cookie \u0434\u043b\u044f \u0437\u0431\u043e\u0440\u0443 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f. \u0414\u043b\u044f \u043e\u0442\u0440\u0438\u043c\u0430\u043d\u043d\u044f \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e\u0457 \u0456\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0456\u0457 \u0432\u0456\u0434\u0432\u0456\u0434\u0430\u0439\u0442\u0435 <a> \u041f\u043e\u043b\u0456\u0442\u0438\u043a\u0443 \u0449\u043e\u0434\u043e \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f \u0444\u0430\u0439\u043b\u0456\u0432 cookie</a>.",
"use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR","storage-not-provided-launch-from-desktop":"Please relaunch the tour from the desktop icon to download.","disable-measure":"Stop measuring",downloading:"Downloading","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"Enable video and audio?",
reject:"\u0412\u0456\u0434\u0445\u0438\u043b\u0438\u0442\u0438",downloaded:"This tour is downloaded for offline playing.","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.","samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.",
"enable-video-prompt":"Enable video?","giroscope-disabled-safari-request-permission":["Your device's motion and orientation access and VR mode are disabled for this site.","To properly see this webpage, please click continue and accept the permission request if prompted."],"storage-not-provided-launch-from-homescreen":"Please relaunch the tour from the home screen icon to download.","enter-fullscreen":"Enter fullscreen","use-cardboard-v2":"Use Cardboard v2",unmute:"Unmute","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"Refresh","use-default-cardboard":"Use Default","enable-audio-prompt":"Enable audio?"},"zh-cn":{mute:"\u9759\u97f3","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"\u4e0b\u8f7d\u5168\u666f\u6f2b\u6e38\uff0c\u4ee5\u8fdb\u884c\u79bb\u7ebf\u64ad\u653e",
"change-to-drag-and-release":"\u5c06\u63a7\u5236\u6a21\u5f0f\u66f4\u6539\u4e3a\u201c\u62d6\u653e\u201d",accept:"\u63a5\u53d7",cancel:"\u53d6\u6d88","storage-not-provided-bookmark":"\u88c5\u7f6e\u5185\u6c38\u4e45\u5b58\u50a8\u88ab\u62d2\u7edd\u3002\u5c1d\u8bd5\u5c06\u6b64\u7f51\u9875\u6dfb\u52a0\u4e3a\u4e66\u7b7e\uff0c \u5e76\u91cd\u65b0\u52a0\u8f7d\u3002","dont-display-again":"\u4e0d\u518d\u663e\u793a\u6b64\u4fe1\u606f","web-server-required":"\u6b64\u5168\u666f\u6f2b\u6e38\u65e0\u6cd5\u4ece\u672c\u5730\u9a71\u52a8\u5668\u4e0a\u64ad\u653e\u3002 \u8bf7\u5c06\u5176\u4e0a\u4f20\u5230\u4e92\u8054\u7f51\u670d\u52a1\u5668\uff0c\u7136\u540e\u91cd\u8bd5\u3002\n\u5982\u679c\u9700\u8981\u672c\u5730\u9884\u89c8\uff0c\u53ef\u4ee5\u5c06htm\u6587\u4ef6\uff08\u6216\u5168\u666f\u6f2b\u6e38\u7684\u6574\u4e2a\u6587\u4ef6\u5939\uff09\u62d6\u5230TourViewer\u5e94\u7528\u7a0b\u5e8f\u7684\u56fe\u6807\u4e0a\u3002",
download:"\u4e0b\u8f7d","change-to-click-and-move":"\u5c06\u63a7\u5236\u6a21\u5f0f\u66f4\u6539\u4e3a\u201c\u5355\u51fb\u5e76\u79fb\u52a8\u201d",yes:"\u662f","delete-downloaded":"\u5220\u9664","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"\u9000\u51fa\u5168\u5c4f",no:"\u5426","download-failed":"\u4e0b\u8f7d\u5931\u8d25","giroscope-disabled-http":"\u60a8\u6b63\u5728\u901a\u8fc7http(\u672a\u52a0\u5bc6)\u8bbf\u95ee\u6b64\u7f51\u9875\uff0c\u56e0\u6b64\u8bbe\u5907\u7684\u8fd0\u52a8\u548c\u65b9\u5411\u8bbf\u95ee\u6743\u9650\u4ee5\u53caVR\u6a21\u5f0f\u5747\u5df2\u7981\u7528\uff0c\u8bf7\u901a\u8fc7https(\u52a0\u5bc6)\u5bf9\u5176\u8fdb\u884c\u542f\u7528\u3002",
"cookies-notice":"\u8be5\u7f51\u9875\u4f7f\u7528cookie\u6765\u6536\u96c6\u4f7f\u7528\u60c5\u51b5\u7edf\u8ba1\u4fe1\u606f\u3002 \u6709\u5173\u66f4\u591a\u4fe1\u606f\uff0c\u8bf7\u8bbf\u95ee<a>Cookie\u653f\u7b56</a>\u3002","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR","storage-not-provided-launch-from-desktop":"\u8bf7\u4ece\u684c\u9762\u70b9\u51fb\u56fe\u6807\uff0c\u91cd\u65b0\u542f\u52a8\u5168\u666f\u6f2b\u6e38\uff0c\u4ee5\u8fdb\u884c\u4e0b\u8f7d\u3002",
"disable-measure":"Stop measuring",downloading:"\u6b63\u5728\u4e0b\u8f7d","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"\u542f\u7528\u89c6\u9891\u548c\u97f3\u9891\uff1f",reject:"\u62d2\u7edd",downloaded:"\u6b64\u5168\u666f\u6f2b\u6e38\u5df2\u4e0b\u8f7d\uff0c\u53ef\u8fdb\u884c\u79bb\u7ebf\u64ad\u653e\u3002","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.",
"samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.","enable-video-prompt":"\u542f\u7528\u89c6\u9891\uff1f","giroscope-disabled-safari-request-permission":["\u8be5\u7ad9\u70b9\u5df2\u7981\u7528\u8bbe\u5907\u7684\u8fd0\u52a8\u548c\u65b9\u5411\u8bbf\u95ee\u6743\u9650\uff0cVR\u6a21\u5f0f\u4e5f\u88ab\u7981\u7528\u3002",
"\u8981\u6b63\u786e\u67e5\u770b\u6b64\u7f51\u9875\uff0c\u8bf7\u5355\u51fb\u7ee7\u7eed\uff0c\u5e76\u5728\u51fa\u73b0\u63d0\u793a\u65f6\u63a5\u53d7\u8bb8\u53ef\u8bf7\u6c42"],"storage-not-provided-launch-from-homescreen":"\u8bf7\u4ece\u4e3b\u5c4f\u5e55\u70b9\u51fb\u56fe\u6807\uff0c\u91cd\u65b0\u542f\u52a8\u5168\u666f\u6f2b\u6e38\uff0c\u4ee5\u8fdb\u884c\u4e0b\u8f7d\u3002","enter-fullscreen":"\u8fdb\u5165\u5168\u5c4f","use-cardboard-v2":"Use Cardboard v2",unmute:"\u53d6\u6d88\u9759\u97f3","enter-vr":"Enter VR content",
"enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"\u5237\u65b0","use-default-cardboard":"Use Default","enable-audio-prompt":"\u542f\u7528\u97f3\u9891\uff1f"},"zh-tw":{mute:"\u975c\u97f3","cardboard-v1":"If you are not sure, which Cardboard version you're using, select the default hotspot control. You'll then simply gaze at a hotspot and wait until the action is triggered.","download-tour":"\u4e0b\u8f09\u865b\u64ec\u5c0e\u89bd\uff0c\u4ee5\u9032\u884c\u96e2\u7dda\u64ad\u653e",
"change-to-drag-and-release":"\u5c07\u63a7\u5236\u6a21\u5f0f\u66f4\u6539\u70ba\u201c\u62d6\u653e\u6a21\u5f0f\u201c",accept:"\u63a5\u53d7",cancel:"\u53d6\u6d88","storage-not-provided-bookmark":"\u88dd\u7f6e\u5167\u6c38\u4e45\u5b58\u5132\u88ab\u62d2\u7d55\u3002\u8acb\u5617\u8a66\u5c07\u6b64\u7db2\u9801\u65b0\u589e\u70ba\u66f8\u7c64\uff0c\u4e26\u91cd\u65b0\u8f09\u5165\u3002","dont-display-again":"\u4e0d\u518d\u986f\u793a\u672c\u8a0a\u606f","web-server-required":"\u672c\u865b\u64ec\u5c0e\u89bd\u7121\u6cd5\u5728\u672c\u5730\u96fb\u8166\u4e0a\u64ad\u653e\u3002 \u8acb\u5c07\u5176\u4e0a\u50b3\u5230\u7db2\u969b\u7db2\u8def\u4f3a\u670d\u5668\uff0c\u7136\u5f8c\u91cd\u8a66\u3002\n\u5982\u679c\u9700\u8981\u672c\u5730\u9810\u89bd\uff0c\u8acb\u5c07htm\u6a94\u6848\uff08\u6216\u865b\u64ec\u5c0e\u89bd\u7684\u6574\u500b\u8cc7\u6599\u593e\uff09\u62d6\u653e\u5230TourViewer\u61c9\u7528\u7a0b\u793a\u7684\u5716\u793a\u4e0a\u3002",
download:"\u4e0b\u8f09","change-to-click-and-move":"\u5c07\u63a7\u5236\u6a21\u5f0f\u66f4\u6539\u70ba\u201c\u9ede\u64ca\u4e26\u79fb\u52d5\u201d",yes:"\u662f","delete-downloaded":"\u522a\u9664","use-safari-for-vr":"We recommend Safari to view this tour in VR mode","exit-fullscreen":"\u9000\u51fa\u5168\u87a2\u5e55",no:"\u5426","download-failed":"\u4e0b\u8f09\u5931\u6557","giroscope-disabled-http":"\u60a8\u6b63\u5728\u901a\u904ehttp(\u672a\u52a0\u5bc6)\u700f\u89bd\u672c\u7db2\u9801\uff0c\u56e0\u6b64\u8a2d\u5099\u7684\u904b\u52d5\u548c\u65b9\u5411\u53d6\u7528\u6b0a\u9650\uff0c\u4ee5\u53caVR\u6a21\u5f0f\u5747\u5df2\u7981\u7528\uff0c\u8acb\u53e6\u901a\u904ehttps(\u52a0\u5bc6)\u7db2\u5740\u5c0d\u5176\u9032\u884c\u555f\u7528\u3002",
"cookies-notice":"\u8a72\u7db2\u9801\u4f7f\u7528cookie\u4f86\u6536\u96c6\u4f7f\u7528\u60c5\u6cc1\u7d71\u8a08\u4fe1\u606f\u3002 \u6709\u95dc\u66f4\u591a\u4fe1\u606f\uff0c\u8acb\u8a2a\u554f<a> Cookie\u653f\u7b56</a>\u3002","use-cardboard":"Use Cardboard","launch-default-browser":"Launch in default browser","rotate-device":"Please, rotate your device","exit-vr":"Exit VR","storage-not-provided-launch-from-desktop":"\u8acb\u5f9e\u684c\u9762\u9ede\u64ca\u5716\u793a\uff0c\u91cd\u65b0\u555f\u52d5\u865b\u64ec\u5c0e\u89bd\uff0c\u4ee5\u9032\u884c\u4e0b\u8f09\u3002",
"disable-measure":"Stop measuring",downloading:"\u6b63\u5728\u4e0b\u8f09","cardboard-v2":"If you have a Cardboard v2 headset, which comes with a button, you can gaze at a hotspot and press the button to trigger its action.","enable-video-audio-prompt":"\u5141\u8a31\u5f71\u7247\u53ca\u8072\u97f3\u64ad\u653e?",reject:"\u62d2\u7d55",downloaded:"\u865b\u64ec\u5c0e\u89bd\u5df2\u4e0b\u8f09\uff0c\u53ef\u9032\u884c\u96e2\u7dda\u64ad\u653e\u3002","samsung-internet-vr-app-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you need to make Samsung Internet your default browser.",
"samsung-internet-vr-info":"If you have a Gear VR headset compatible with this device and you have installed Samsung Internet for VR you can also use it to view this content in VR, you just need to put the mobile phone on the headset now.","enable-video-prompt":"\u5141\u8a31\u5f71\u7247\u64ad\u653e?","giroscope-disabled-safari-request-permission":["\u8a72\u7db2\u7ad9\u5df2\u7981\u7528\u60a8\u8a2d\u5099\u7684\u904b\u52d5\u548c\u65b9\u5411\u53d6\u7528\u6b0a\u9650\uff0cVR\u6a21\u5f0f\u4e5f\u88ab\u7981\u7528\u3002",
"\u8981\u6b63\u78ba\u67e5\u770b\u672c\u7db2\u9801\uff0c\u8acb\u55ae\u64ca\u7e7c\u7e8c\uff0c\u4e26\u5728\u51fa\u73fe\u63d0\u793a\u6642\u63a5\u53d7\u8a31\u53ef\u8acb\u6c42\u3002"],"storage-not-provided-launch-from-homescreen":"\u8acb\u4e3b\u9801\u9762\u87a2\u5e55\u9ede\u64ca\u5716\u793a\uff0c\u91cd\u65b0\u555f\u52d5\u865b\u64ec\u5c0e\u89bd\uff0c\u4ee5\u9032\u884c\u4e0b\u8f09\u3002","enter-fullscreen":"\u9032\u5165\u5168\u87a2\u5e55","use-cardboard-v2":"Use Cardboard v2",unmute:"\u53d6\u6d88\u975c\u97f3",
"enter-vr":"Enter VR content","enable-measure":"Start measuring","use-cardboard-info":"You can use any compatible Google Cardboard headset to view this content in VR.","refresh-downloaded":"\u91cd\u65b0\u6574\u7406","use-default-cardboard":"Use Default","enable-audio-prompt":"\u5141\u8a31\u8072\u97f3\u64ad\u653e?"}}});
define("lk",["require","fg","gt","jt"],function(a){function b(a){return d[i][a]||d.en[a]||a}var c=a("fg"),d=a("gt"),f=a("jt"),e;for(e in d)d[e.substr(0,2)]=d[e];d.en["giroscope-disabled-safari-toggle-on"]='<div>Your device\'s motion and orientation access and VR mode are disabled for this site.</div>\n<div>To properly see this webpage, please enable it:</div>\n<ul style="display:inline-block; text-align:left;">\n<li>Access you device\'s settings: "Settings > Safari > Privacy & Security" and toggle on: "Motion & Orientation Access".</li>\n<li>Refresh the browser.</li>\n</ul>';
d["zh-hk"]=d["zh-mo"]=d["zh-tw"];d.no=d.nn;var g=function(){var a=window.navigator,b=["language","browserLanguage","systemLanguage","userLanguage"],c,e,d=[];(c=f.Fn("language"))&&d.push(c.toLowerCase());var i=a.languages;if(Array.isArray(i))for(c=0;c<i.length;c++)if((e=i[c])&&e.length)e=e.toLowerCase(),-1==d.indexOf(e)&&d.push(e);for(c=0;c<b.length;c++)if((e=a[b[c]])&&e.length)e=e.toLowerCase(),-1==d.indexOf(e)&&d.push(e);return d}(),k=Object.keys(d),i=function(){for(var a=0;a<g.length;a++){var b=
g[a];if(0<=k.indexOf(b))return b;b=b.substr(0,2);if(0<=k.indexOf(b))return b}return"en"}();b.log=function(){c.log("translation lang: "+i);c.log("browser lang: "+g.join(", "))};return b});
define("lw",["require"],function(){var a={};a.src=a.nBa="data:video/mp4;base64,AAAAHGZ0eXBpc29tAAACAGlzb21pc28ybXA0MQAAAAhmcmVlAAAC721kYXQhEAUgpBv/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3pwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcCEQBSCkG//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADengAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAsJtb292AAAAbG12aGQAAAAAAAAAAAAAAAAAAAPoAAAALwABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAB7HRyYWsAAABcdGtoZAAAAAMAAAAAAAAAAAAAAAIAAAAAAAAALwAAAAAAAAAAAAAAAQEAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAAC8AAAAAAAEAAAAAAWRtZGlhAAAAIG1kaGQAAAAAAAAAAAAAAAAAAKxEAAAIAFXEAAAAAAAtaGRscgAAAAAAAAAAc291bgAAAAAAAAAAAAAAAFNvdW5kSGFuZGxlcgAAAAEPbWluZgAAABBzbWhkAAAAAAAAAAAAAAAkZGluZgAAABxkcmVmAAAAAAAAAAEAAAAMdXJsIAAAAAEAAADTc3RibAAAAGdzdHNkAAAAAAAAAAEAAABXbXA0YQAAAAAAAAABAAAAAAAAAAAAAgAQAAAAAKxEAAAAAAAzZXNkcwAAAAADgICAIgACAASAgIAUQBUAAAAAAfQAAAHz+QWAgIACEhAGgICAAQIAAAAYc3R0cwAAAAAAAAABAAAAAgAABAAAAAAcc3RzYwAAAAAAAAABAAAAAQAAAAIAAAABAAAAHHN0c3oAAAAAAAAAAAAAAAIAAAFzAAABdAAAABRzdGNvAAAAAAAAAAEAAAAsAAAAYnVkdGEAAABabWV0YQAAAAAAAAAhaGRscgAAAAAAAAAAbWRpcmFwcGwAAAAAAAAAAAAAAAAtaWxzdAAAACWpdG9vAAAAHWRhdGEAAAABAAAAAExhdmY1Ni40MC4xMDE=";return a});
define("dj",["require","lw","r"],function(a){function b(a){var b=document.createElement("video");b.setAttribute("webkit-playsinline","true");b.setAttribute("playsinline","true");b.src=g.src;var c=b.play();if(c){var e=y;c.then(function(){e=n;b.pause();a(y)})["catch"](function(){e||a(n)})}else b.pause(),a(y)}function c(a){var b=y,c=document.createElement("video");c.setAttribute("webkit-playsinline","true");c.setAttribute("playsinline","true");c.src="";(c=c.play())?c["catch"](function(a){b="NotAllowedError"!==
a.name}).then(function(){a(!b)}):a(n)}function d(a){l=a;p=n;f()}function f(){for(;j.length;)j.shift().call(window,l)}function e(){i||(i=n,k.browser()==k.Ei&&11<=k.CF()?d(n):k.browser()==k.Df?b(d):c(function(a){a?b(d):d(y)}))}var g=a("lw"),k=a("r"),i=y,p=y,j=[],l;return{test:function(a){!p&&!i&&e();j.push(a);p&&f()}}});
define("bp",["require","lk","jg","dj"],function(a){function b(a,b){this.Cv=a;this.Bp=b;this.Ll=this.Ll.bind(this);this.Ml=y}function c(){this.Ll=this.Ll.bind(this);this.pX=this.pX.bind(this);this.m="not tested";this.Q1=[];this.Dt=[];this.aK=y;f.Vz(this.pX)}var d=a("lk"),f=a("jg"),e=a("dj");c.prototype.uza=function(){"not tested"==this.m&&(this.m="testing",e.test(function(a){this.m=a?"requires action":"allowed";this.una()}.bind(this)))};c.prototype.una=function(){"allowed"==this.m?this.Ll(n):this.aK&&
(this.aK=y,this.Dt.forEach(function(a){a.zg()}))};c.prototype.p_=function(a){"allowed"==this.m?a.call(this,n):this.Q1.push(a)};c.prototype.zg=function(a){this.Xr(a)};c.prototype.cancel=function(a){this.lQ(a)};c.prototype.NX=function(){return"allowed"==this.m};c.prototype.Nya=function(){"allowed"==this.m&&(this.m="requires action")};c.prototype.pX=function(){this.ym(n)};c.prototype.Xr=function(a){"testing"==this.m||"not tested"==this.m?(this.DP(a),this.aK=n):"requires action"==this.m&&this.DP(a).zg()};
c.prototype.lQ=function(a){"testing"==this.m||"not tested"==this.m?this.aK=y:"requires action"==this.m&&this.DP(a).cancel()};c.prototype.Ll=function(a){var b=this.Dt;this.Dt=[];b.forEach(function(b){a||b.Cv.set("mute",n);b.cancel()});this.ym(a)};c.prototype.ym=function(a){this.m="allowed";this.Q1.forEach(function(b){b.call(window,a)})};c.prototype.DP=function(a){for(var c=r,e=0;e<this.Dt.length&&!c;e++)this.Dt[e].Cv==a&&(c=this.Dt[e]);c||(c=new b(a,this.Ll),this.Dt.push(c));return c};b.prototype.zg=
function(){this.Ml||(this.Ml=n,"button"==this.Cv.get("mediaActivationMode")?this.Cv.Wy.yxa(this.Ll):this.Cv.$x.show(d("enable-audio-prompt"),this.Ll))};b.prototype.cancel=function(){this.Cv.Wy.cua(this.Ll);this.Cv.$x.hide(this.Ll)};b.prototype.Ll=function(a){this.Bp(a!==y);this.Ml=y};return new c});
define("fx",["require","ll","bZ","eO"],function(a){function b(){var a;a=f?!e:!document[k];g.visible!=a&&(g.visible=a,g.trigger(new d(c.aa)))}var c=a("ll"),d=a("bZ"),f=y,e=y,g=new (a("eO"));g.visible=n;for(var k,i,a=["hidden","msHidden","webkitHidden"],p=["visibilitychange","msvisibilitychange","webkitvisibilitychange"],j=0;j<a.length;j++)"undefined"!==typeof document[a[j]]&&(k=a[j],i=p[j]);k===m||"undefined"===typeof document[k]?(k="hidden",document[k]=y,i=function(){document[k]=y;b()},a=function(){document[k]=
n;b()},document.addEventListener?(window.addEventListener("focus",i,n),window.addEventListener("blur",a,n)):(document.attachEvent("onfocusin",i),document.attachEvent("onfocusout",a))):document.addEventListener(i,b,y);g.qN=function(a){(f=a)&&(e=y);b()};g.$Z=function(a){e=a;b()};return g});
define("gg",["require","ll","jE","bp","fx"],function(a){var b=a("ll"),c=a("jE"),d=a("bp"),f=a("fx");if(!c.t_||"AudioContext"in window===y)return r;var e=new AudioContext;d.p_(function(){"running"!==e.state&&e.resume()});f.bind(b.aa,function(){f.visible&&"interrupted"==e.state&&e.resume()});return e});
define("dn","require,gg,ll,r,jt,jE,fx".split(","),function(a){function b(a){this.Sf=this.Sf.bind(this);this.Pm=this.Pm.bind(this);this.t=r;this.rd=y;this.$l=this.iI=1;this.uI=n;this.Zq=this.ax=r;this.t=a;this.t.addEventListener("play",this.Sf,n);this.t.addEventListener("playing",this.Pm,n);this.a$();this.tv()}var c=a("gg");a("ll");var d=a("r"),f=a("jt"),e=a("jE");a("fx");var g;b.prototype.clear=function(){if(this.t){this.Sra();this.t.removeEventListener("play",this.Sf,n);this.t.removeEventListener("playing",
this.Pm,n);this.t=r}};b.prototype.a$=function(){if(e.t_&&d.browser()==d.Df&&c&&!this.ax&&this.cr()){if(!g){g=c.createDelay();g.delayTime.value=0.3;g.connect(c.destination)}this.ax=c.createMediaElementSource(this.t);this.Zq=c.createGain();this.ax.connect(this.Zq);this.Zq.connect(g)}};b.prototype.Sra=function(){if(this.ax){this.ax.disconnect();this.ax=r}if(this.Zq){this.Zq.disconnect();this.Zq=r}};b.prototype.$xa=function(a){if(this.uI!=a){this.t.log("AudioController","set hasAudio: "+a);this.uI=a;
this.tv()}};b.prototype.Jd=function(a){if(this.rd!=a){this.t.log("AudioController","set muted: "+a);this.rd=a;this.tv()}};b.prototype.bq=function(a){if(this.$l!=a){this.t.log("AudioController","set volume: "+a);this.$l=a;this.tv()}};b.prototype.FF=function(a){if(this.iI!=a){this.t.log("AudioController","set gain: "+a);this.iI=Math.max(0,Math.min(1,a));this.tv()}};b.prototype.Sf=function(){this.tv()};b.prototype.Pm=function(){this.tv()};b.prototype.tv=function(){this.t.log("AudioController","updateVolume paused: "+
this.t.paused+" outputVolume: "+(!this.uI||this.rd?0:this.$l*this.iI));if(!this.t.paused){var a=!this.uI||this.rd?0:this.$l*this.iI;a>0&&a<1&&this.a$();if(this.Zq){this.Zq.gain.value=a;this.t.volume=1}else this.t.volume=a;this.t.muted=a==0}};b.prototype.cr=function(){var a=this.t.currentSrc||this.t.children.length&&this.t.children[0].src||"";f.Zv(a)&&(a=m);return a};return b});define("ga",["require"],function(){return{Ki:"video",efa:"audio"}});
define("kg","require,fg,ll,fu,ge,bZ,eO,r,jt,gx,fx".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("fu"),f=a("ge"),e=a("bZ"),g=a("eO"),k=a("r"),i=a("jt"),p=a("gx"),j=a("fx"),l=b.extend(g,function(a){g.call(this);this.t=a;this.Eu=this.Eu.bind(this);this.Uo=this.Uo.bind(this);this.ci=this.ci.bind(this);this.Iu=this.Iu.bind(this);this.Og=this.Og.bind(this);this.di=this.di.bind(this);this.Sf=this.Sf.bind(this);this.Pm=this.Pm.bind(this);this.nE=this.nE.bind(this);this.t.addEventListener("ended",this.ci,
n);this.t.addEventListener("pause",this.di,y);this.t.addEventListener("stalled",this.di,y);this.t.addEventListener("waiting",this.di,y);this.t.addEventListener("canplay",this.Eu,n);this.t.addEventListener("canplaythrough",this.Uo,y);this.t.addEventListener("loadedmetadata",this.Og,n);this.t.addEventListener("play",this.Sf,y);this.t.addEventListener("playing",this.Pm,y);this.t.addEventListener("error",this.Iu,y);this.AR=y;this.m=d.I;this.my=this.Af=r;j.bind(c.aa,this.wta,this)});l.prototype.clear=
function(){if(this.t){this.t.removeEventListener("ended",this.ci,n);this.t.removeEventListener("pause",this.di,y);this.t.removeEventListener("stalled",this.di,y);this.t.removeEventListener("waiting",this.di,y);this.t.removeEventListener("canplay",this.Eu,n);this.t.removeEventListener("canplaythrough",this.Uo,y);this.t.removeEventListener("loadedmetadata",this.Og,n);this.t.removeEventListener("play",this.Sf,y);this.t.removeEventListener("error",this.Iu,y);this.t=r}};l.prototype.play=function(){this.t.log("PlaybackController",
"play");this.my=d.O;this.jD()};l.prototype.stop=function(){this.t.log("PlaybackController","stop");this.my=d.I;this.jD()};l.prototype.Pe=function(){return this.Af||this.m};l.prototype.Wv=function(){return this.t.readyState==this.t.HAVE_NOTHING||this.t.readyState==this.t.HAVE_METADATA||this.t.currentTime===0?y:n};l.prototype.jD=function(){if(!this.Af&&this.my){this.Af=this.my;this.my=r;this.Af==d.O?this.gW():this.fW()}};l.prototype.wta=function(){if(j.visible){this.t.log("PlaybackController","visibile changed to true, setting state to "+
this.m);this.Af=this.m;this.Af==d.O?this.gW():this.fW()}else if(!this.t.paused){this.t.log("PlaybackController","paused by visibile changed to false");var a=this.t.pause();a&&a["catch"](this.Iu)}};l.prototype.cr=function(){return this.t.currentSrc||this.t.children.length&&this.t.children[0].src||""};l.prototype.gW=function(){var a=this.cr();this.QK(a&&!i.Zv(a));this.XG=k.browser()==k.Df;if(this.t.paused){this.t.log("PlaybackController","startPlaying calling play");this.t.muted=n;this.t.log("PlaybackController",
"this._media.play()");(a=this.t.play())&&a["catch"](this.Iu)}else{this.t.log("PlaybackController","startPlaying already playing");this.Sf()}};l.prototype.Pm=function(){this.t.log("PlaybackController","onPlaying event received. Visible: "+j.visible)};l.prototype.Sf=function(){if(this.Af==d.O){this.t.log("PlaybackController","onPlay event received when waiting to play");this.Af=r;this.m=d.O;this.trigger(new e(l.yO));this.jD()}else this.t.log("PlaybackController","onPlay event received. Visible: "+j.visible)};
l.prototype.fW=function(){this.QK(y);this.XG=y;if(this.t.paused){this.t.log("PlaybackController","startPausing already paused");this.di()}else{this.t.log("PlaybackController","startPausing calling pause");var a=this.t.pause();a&&a["catch"](this.Iu)}};l.prototype.di=function(){if(this.Af==d.I){this.t.log("PlaybackController","onPause event received when waiting to stop");this.Af=r;this.m=d.I;this.jD()}else if(j.visible){this.t.log("PlaybackController","onPause event received without calling to pause");
(this.m==d.O&&!this.Af||this.Af==d.O)&&!this.t.hasAttribute("loop")&&!isNaN(this.t.duration)&&this.t.currentTime==this.t.duration&&this.t.duration>0&&this.ci();this.nE()}else this.t.log("PlaybackController","onPause event received when not visible")};l.prototype.Eu=function(){this.t.log("PlaybackController","on can play");this.nE()};l.prototype.Uo=function(){this.t.log("PlaybackController","can play through");this.nE();this.QK(y)};l.prototype.nE=function(){if(this.e$()){if(this.XG&&this.t.currentTime==
0){this.t.log("PlaybackController","updatePlaying applying ios hack");this.XG=y;try{this.t.currentTime=0.3}catch(a){}}k.browser()!=k.zw&&this.j9()}};l.prototype.e$=function(){return this.m==d.O&&j.visible&&this.t.paused&&this.t.readyState>=3};l.prototype.j9=function(a){if(!this.k9)if(a){if(this.e$()){this.t.log("PlaybackController","updatePlaying retrying play");this.Af=d.O;this.gW()}}else this.k9=setTimeout(function(){this.k9=r;this.j9(n)}.bind(this),500)};l.prototype.Iu=function(){if(this.Af==d.O){this.t.log("PlaybackController",
"onError waiting to play");this.Af=r;this.my?this.jD():k.browser()==k.Df?this.trigger(new e(l.eO)):this.Af=d.O}};l.prototype.Og=function(){this.t.log("PlaybackController","on loaded metadata");!isNaN(this.t.duration)&&this.t.currentTime==this.t.duration&&this.t.duration>0&&this.ci()};l.prototype.ci=function(){this.t.log("PlaybackController","onEnded");this.XG=y;if(this.m==d.O&&!this.Af||this.Af==d.I){this.t.log("PlaybackController","onEnded finalizing video");this.QK(y);this.Af=d.I;this.fW();this.trigger(new e(l.Mj))}};
l.prototype.QK=function(a){if(this.AR!=a){this.t.log("PlaybackController","downloading changed to: "+a);(this.AR=a)?p.lza(f.c0):p.kza(f.c0)}};l.eO="deactivated";l.Mj="end";l.yO="play";return l});
define("x",["require","fg","ll","bZ","eO"],function(a){var b=a("fg"),c=a("ll");a("bZ");var d=a("eO"),a=b.extend(d,function(a){d.call(this);this.Og=this.Og.bind(this);this.ZT=this.ZT.bind(this);this.Qf=this.Qf.bind(this);this.t=a;this.Ah=r;this.Oc=[];this.t.addEventListener("loadedmetadata",this.Og,n);this.t.textTracks.addEventListener("addtrack",this.ZT,y)});a.prototype.set=function(a){a&&this.bha(a)};a.prototype.clear=function(){this.Fpa()};a.prototype.XE=function(){var a=this.Ah&&this.Ah.track.activeCues;
a&&(a=Array.prototype.slice.call(a,0));return a||[]};a.prototype.Og=function(){this.Daa()};a.prototype.ZT=function(){this.Daa()};a.prototype.Qf=function(){this.A9(this.Ah.track.activeCues)};a.prototype.A9=function(a){a||(a=[]);0==this.Oc.length&&0==a.length||(this.Oc=Array.prototype.slice.call(a),this.trigger(c.Ef,this.Oc))};a.prototype.bha=function(a){this.t.log("TextTracksController","add text track src: "+a);this.Ah=document.createElement("track");this.Ah.kind="subtitles";this.Ah.src=a;this.t.appendChild(this.Ah)};
a.prototype.Fpa=function(){this.Ah&&(this.t.log("TextTracksController","remove text track"),this.Ah.track.removeEventListener("cuechange",this.Qf),this.Ah.track.mode="disabled",this.Ah.src="",this.t.removeChild(this.Ah),this.Ah=r,this.A9([]))};a.prototype.Daa=function(){for(var a=0;a<this.t.textTracks.length;a++){var b=this.t.textTracks[a];b.removeEventListener("cuechange",this.Qf);b.mode=this.Ah&&b==this.Ah.track?"hidden":"disabled";"hidden"==b.mode&&b.addEventListener("cuechange",this.Qf)}};return a});
define("gl",["require","do","jt"],function(a){var b=a("do"),c=a("jt"),a={is:function(a,f){var e=c.parse(a).Gua;return b(f).contains(e)},Zv:function(a,c){return a&&b(c).any(function(b){return 0===a.indexOf(b)})},NO:[".mp4",".m4v",".m4p"],yfa:[".hevc"],f0:[".mov"],g1:[".webm"],x0:[".ogv",".ogg"],Qfa:[".mpg",".mpeg"],Dfa:[".jpg",".jpeg"],Pj:[".m3u8"],w0:[".mpd"],Xfa:[".png"],xfa:[".gif"],ffa:[".bmp"]};a.Afa=[].concat(a.Dfa,a.Xfa,a.xfa,a.ffa);a.cfa=[].concat(a.Pj,a.w0);a.Ki=[].concat(a.cfa,a.NO,a.g1,
a.x0,a.Qfa,a.Pj,a.w0);a.Bfa=["data:image/"];return a});
define("dB","require,fg,ll,bZ,eO,r,gl".split(","),function(a){var b=a("fg");a("ll");var c=a("bZ"),d=a("eO"),f=a("r"),e=a("gl"),g=b.extend(d,function(a){d.call(this);this.t=a;this.Uo=this.Uo.bind(this);this.di=this.di.bind(this);this.Sf=this.Sf.bind(this);this.Og=this.Og.bind(this);this.ci=this.ci.bind(this);this.LJ=this.LJ.bind(this);this.hd=this.hd.bind(this);this.zT=this.by=this.lv=m;this.wW=0;this.t.addEventListener("ended",this.ci,n);this.t.addEventListener("pause",this.di,y);this.t.addEventListener("canplaythrough",
this.Uo,y);this.t.addEventListener("timeupdate",this.LJ,y);this.t.addEventListener("play",this.Sf,y);this.t.addEventListener("playing",this.Pm,y)});g.prototype.clear=function(){if(this.t){this.t.removeEventListener("ended",this.ci,n);this.t.removeEventListener("pause",this.di,y);this.t.removeEventListener("canplaythrough",this.Uo,y);this.t.removeEventListener("timeupdate",this.LJ,y);this.t.removeEventListener("play",this.Sf,y);this.t.removeEventListener("playing",this.Pm,y);this.t=r;this.lv&&clearInterval(this.lv)}};
g.prototype.setTime=function(a){this.wW=0;this.XI=m;this.t.log("TimeController","setTime: "+a);this.WG=f.ZX()&&!e.is(this.cr(),e.Pj)?a||0:m;try{this.t.currentTime=a}catch(b){}if(f.browser()!=f.iq&&f.browser()!=f.zw&&(f.Jc()!=f.bA||a!=0)){this.by=a;this.oaa()}};g.prototype.getTime=function(){return this.by||this.t.currentTime||0};g.prototype.Aj=function(){return this.t.duration||0};g.prototype.Sf=function(){this.RV(n)};g.prototype.di=function(){this.RV(y);this.XI=m};g.prototype.Uo=function(){this.t.log("TimeController",
"on can play through");this.oaa()};g.prototype.ci=function(){this.WG=m;this.RV(y)};g.prototype.Og=function(){this.trigger(new c(g.cg))};g.prototype.oaa=function(){if(this.t.readyState>=this.t.HAVE_ENOUGH_DATA&&this.by!==m){this.t.log("TimeController","updateCurrentTime when can play through set time to: "+this.by);try{this.t.currentTime=this.by}catch(a){}this.by=m}};g.prototype.hd=function(){this.trigger(new c(g.Ld))};g.prototype.LJ=function(){if(f.ZX()&&!f.Bca()&&!this.t.paused&&this.t.readyState>=
this.t.HAVE_ENOUGH_DATA){var a=(new Date).getTime();this.XI||(this.XI=a);if(this.zT&&a-this.zT>500){this.wW++;this.wW/((a-this.XI)*0.001)>0.4&&f.Oya()}this.zT=a}if(this.WG!==m&&this.t.currentTime>this.WG){this.WG=m;try{this.t.currentTime=this.t.currentTime-0.01}catch(b){}}this.hd()};g.prototype.RV=function(a){if(!!this.lv!=a)if(this.lv){clearInterval(this.lv);this.lv=r}else this.lv=setInterval(this.hd,16)};g.prototype.cr=function(){return this.t.currentSrc||this.t.children.length&&this.t.children[0].src||
""};g.Ld="time update";g.cg="duration update";return g});
define("iX","require,jquery.mod,fg,gg,r,jt".split(","),function(a){function b(){}a("jquery.mod");var c=a("fg"),d=a("gg"),f=a("r"),a=a("jt");b.$la=function(){window.MediaSource=window.MediaSource||window.WebKitMediaSource;return window.MediaSource&&typeof window.MediaSource.isTypeSupported==="function"&&window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')};b.jma=function(){if(f.browser()==f.Df){var a=f.Yv();if(a>=10&&a<11||a>=11.3)return n}return y};b.ama=function(){return f.browser()==
f.Ei||f.browser()==f.Df?n:y};var e;b.kba=function(a){try{e||(e=document.createElement("audio"));return!!e.canPlayType(a).replace(/^no$/,"")}catch(b){}return y};var g;b.fz=function(a){try{if(!g){g=document.createElement("video");g.setAttribute("webkit-playsinline","true");g.setAttribute("playsinline","true")}return!!g.canPlayType(a).replace(/^no$/,"")}catch(b){}return y};b.Yta=function(){return f.browser()==f.Df?f.Yv()>=15||d?n:y:n};b.bma=function(){try{if(document.createElement("canvas").getContext("webgl"))return n}catch(a){}try{if(document.createElement("canvas").getContext("experimental-webgl"))return n}catch(b){}return y};
b.Jea=function(a,b,c){if(f.Zd()==f.Qj)if(!c||c>30){if(a<=3168&&b<=1584)return n}else{if(a<=4096&&b<=2048)return n}else if(f.cda())if(!c||c>30){if(a<=4096&&b<=4096||a<=5760&&b<=5760||a<=5760&&b<=2880||a<=8192&&b<=4096)return n}else{if(a<=5760&&b<=5760||a<=8192&&b<=4096)return n}else if(f.bda())if(!c||c>30){if(a<=2880&&b<=2880||a<=4096&&b<=2048)return n}else{if(a<=3840&&b<=3840||a<=4096&&b<=4096||a<=5760&&b<=2880||a<=2880&&b<=5760)return n}else if(f.Xa()){if(a<=3840&&b<=2160)return n}else if(a<=4096&&
b<=2048)return n;return y};b.tza=function(a,c){return b.Jea(a,c,30)};b.log=function(){c.log("webgl: "+b.r_);c.log("html5 audio: "+b.Kca);c.log("html5 video: "+b.Nca)};b.Nra=function(){return["webgl:"+b.r_,"html5audio:"+b.Kca,"html5video:"+b.Nca].join(" ")};b.Mca=b.kba('audio/ogg; codecs="vorbis"');b.Lca=b.kba("audio/mpeg");b.Kca=b.Mca||b.Lca;b.KY=b.fz('video/ogg; codecs="theora"');b.$Aa=b.fz('video/mp4; codecs="avc1.42E01E"');b.LY=b.fz('video/webm; codecs="vp8, vorbis"');b.Xva=b.fz('video/mp4; codecs="hev1"');
b.OM=b.fz("video/mp4");b.Yva=b.fz("video/quicktime");b.Oca=b.jma();b.vca=b.ama();b.Ova=b.vca||b.OM&&b.$la();b.Nca=b.KY||b.OM||b.LY;b.r_=b.bma();a.ag("debug")&&a.ag("capabilities")&&b.log();b.summary=b.Nra();return b});
define("bW",["require","jt"],function(a){function b(){this.$I=this.BT=r;this.mo=[];this.Km=y;this.sr=m}var c=a("jt");b.prototype.im=function(a,b){this.BT=c.Ss(a);this.$I=b;this.L()};b.prototype.load=function(a,b){var c={};c.call=a;c.context=b||window;this.mo.push(c);this.sr||(this.sr=this.S4());this.L()};b.prototype.Mp=function(){return this.sr!==m};b.prototype.L=function(){0<this.mo.length&&(this.sr!==m?this.Mja():this.BT&&this.TB())};b.prototype.TB=function(){if(!(this.Km||this.sr!==m)){this.Km=
n;var a=document.createElement("script");a.type="text/javascript";a.src=this.BT;document.getElementsByTagName("head")[0].appendChild(a);this.Xaa()}};b.prototype.Xaa=function(){var a=this.S4();if(a===m){var b=this;setTimeout(function(){b.Xaa()},250)}else this.sr=a,this.Km=y,this.L()};b.prototype.S4=function(){if(this.$I){for(var a=window,b=0;b<this.$I.length&&a!==m;b++)a=a[this.$I[b]];return a}};b.prototype.Mja=function(){for(;0<this.mo.length;){var a=this.mo.pop();a.call.call(a.context,this.sr)}};
return{h1:new b,Pj:new b,im:function(a){this.Pj.im(a.get(TDV.PlayerSettings.HLS_URL),["Hls"]);this.h1.im(a.get(TDV.PlayerSettings.WEBVR_POLYFILL_URL),["WebVRConfig","FORCE_ENABLE_VR"])}}});
define("dR",["require"],function(){var a={rda:"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU2LjM2LjEwMAAAAAAAAAAAAAAA//OEAAAAAAAAAAAAAAAAAAAAAAAASW5mbwAAAA8AAAAEAAABIADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV6urq6urq6urq6urq6urq6urq6urq6urq6v////////////////////////////////8AAAAATGF2YzU2LjQxAAAAAAAAAAAAAAAAJAAAAAAAAAAAASDs90hvAAAAAAAAAAAAAAAAAAAA//MUZAAAAAGkAAAAAAAAA0gAAAAATEFN//MUZAMAAAGkAAAAAAAAA0gAAAAARTMu//MUZAYAAAGkAAAAAAAAA0gAAAAAOTku//MUZAkAAAGkAAAAAAAAA0gAAAAANVVV"};a.src=
a.rda;return a});
define("cS","require,fg,ll,bZ,eO,iX,jt,jE,gl,bW,dR".split(","),function(a){function b(a,b,c){this.src=a||"";this.Lj=b||"";this.startTime=c||0}var c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("iX"),k=a("jt"),i=a("jE"),p=a("gl"),j=a("bW"),l=a("dR"),a=c.extend(e,function(a,b){e.call(this);this.t=a;this.vj=b;this.GT=y;this.aL=[];this.qd=this.jd=this.cB=r});a.prototype.set=function(a,c,e){this.t.log("SrcSetter","set: "+a+" subtitles: "+c+" startTime: "+e);a=new b(a,c,e);if(!this.jd||!this.jd.isEqual(a))if(!this.jd&&this.cB&&
this.cB.isEqual(a))this.IW();else{this.jd=a;this.Yma()}};a.prototype.clear=function(){if(this.qd){this.qd.destroy();this.qd=r}this.cB=r;this.Epa();this.vj.clear()};a.prototype.Qva=function(){return!!this.jd};a.prototype.Yma=function(){this.GT=n;if(this.g9(this.jd.src)&&!j.Pj.Mp()){this.t.log("SrcSetter","hls lib required");j.Pj.load(this.T5,this)}else this.T5()};a.prototype.T5=function(){if(this.GT){this.GT=y;this.Aha()}};a.prototype.Aha=function(){this.clear();this.tqa(!!this.jd.src&&k.Vca(this.jd.src));
this.g9(this.jd.src)?this.pha():this.Bha()};a.prototype.pha=function(){var a=j.Pj.sr,b=(navigator.connection?Math.max(navigator.connection.downlink,2):2)*1048576,c=b*0.66;this.qd=new a({debug:i.A_,startPosition:this.jd.startTime===0?-1:this.jd.startTime,levelLoadingTimeOut:6E4,startLevel:-1,autoStartLoad:y,abrEwmaDefaultEstimate:b});this.qd.loadSource(this.jd.src);this.qd.attachMedia(this.t);var e=function(){this.qd.off(a.Events.MANIFEST_PARSED,e);if(navigator.connection){var d=this.qd.levels.filter(function(a){return a.bitrate<=
b});if(d.length){d.sort(function(a,b){return b.width-a.width});var k=this.qd.levels.indexOf(d[0]);this.qd.startLevel=k}d=this.qd.levels.filter(function(a){return a.bitrate<=c});if(d.length){d.sort(function(a,b){return b.width-a.width});this.qd.config.minAutoBitrate=d[0].bitrate-1}d=this.qd.levels.filter(function(a){return g.tza(a.width,a.height)});if(i.zfa){d.sort(function(a,b){return b.width-a.width});k=this.qd.levels.indexOf(d[0]);this.qd.startLevel=k}if(d.length&&d.length<this.qd.levels.length){d.sort(function(a,
b){return b.width-a.width});this.qd.autoLevelCapping=this.qd.levels.indexOf(d[0])}this.t.log("SrcSetter","bandwidth: "+b+" lowBandwidth: "+c);this.t.log("SrcSetter","levels: "+this.qd.levels);this.t.log("SrcSetter","startLevel: "+this.qd.levels[this.qd.startLevel]);this.t.log("SrcSetter","minLevel: "+this.qd.levels[this.qd.minAutoLevel])}this.qd.startLoad(this.jd.startTime===0?-1:this.jd.startTime);this.jd.startTime!=0&&this.Z9(this.jd.startTime);this.jd.Lj&&this.vj.set(this.jd.Lj);this.cB=this.jd;
this.jd=r;this.IW()}.bind(this);this.qd.on(a.Events.MANIFEST_PARSED,e);this.qd.on(a.Events.Sza,function(b,c){c.fatal&&c.type==a.ErrorTypes.Wza&&this.qd.recoverMediaError()}.bind(this))};a.prototype.Bha=function(){this.jd.src?this.c2(this.jd.src):this.c2(l.rda,"audio/mpeg");this.jd.Lj&&this.vj.set(this.jd.Lj);this.t.load();this.jd.startTime!=0&&this.Z9(this.jd.startTime);this.cB=this.jd;this.jd=r;this.IW()};a.prototype.IW=function(){this.t.log("SrcSetter","src ready");this.trigger(new f(d.Ib))};a.prototype.g9=
function(a){return a&&p.is(a,p.Pj)&&!g.vca};a.prototype.tqa=function(a){a&&!this.t.hasAttribute("crossorigin")?this.t.setAttribute("crossorigin","anonymous"):!a&&this.t.hasAttribute("crossorigin")&&this.t.removeAttribute("crossorigin")};a.prototype.Z9=function(a){try{this.t.currentTime=a}catch(b){}};a.prototype.c2=function(a,b){var c=document.createElement("source");b||(b=this.Wla(a));if(b)c.type=b;k.Zv(a)||(a=k.Dv(a,"swbypass=true"));c.src=a;this.t.appendChild(c);this.aL.push(c)};a.prototype.Epa=
function(){for(;this.aL&&this.aL.length;){var a=this.aL.shift();a.src="";this.t.removeChild(a)}};a.prototype.Wla=function(a){switch(k.getExtension(a).toLowerCase()){case ".mp3":return"audio/mpeg";case ".ogg":return"audio/ogg";case ".m4v":case ".mp4":return"video/mp4";case ".webm":return"video/webm";case ".ogv":return"video/ogg";case ".m3u8":return"application/x-mpegURL";case ".mov":return"video/quicktime"}};b.prototype.isEqual=function(a){return this.src==a.src&&this.Lj==a.Lj};return a});
define("kQ","require,fg,ll,bZ,eO,r,jE,d,bp,jg,dn,ga,kg,x,dB,cS".split(","),function(a){function b(a){setTimeout(a,0)}var c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("r"),k=a("jE"),i=a("d"),p=a("bp"),j=a("jg"),l=a("dn"),q=a("ga"),o=a("kg"),t=a("x"),s=a("dB"),u=a("cS"),v=0,w=c.extend(e,function(a,b){e.call(this);this.Xd=a;this.xta=b;this.Og=this.Og.bind(this);this.ym=this.ym.bind(this);this.kU=this.kU.bind(this);this.Fl=this.vx=r;this.bK=m;this.cb=this.ra=r;this.Li="inactive";this.zk=this.ca=this.kc=
this.op=this.vj=r;this.rd=y;this.b$(document.createElement(this.Xd));b&&j.Vz(this.ym)});w.prototype.b$=function(a){this.G$();this.cb=a;for(this.cb.parentNode&&this.cb.parentNode.removeChild(this.cb);this.cb.children.length;)this.cb.removeChild(this.cb.children[0]);this.gra();this.cb.autoplay=y;this.cb.autobuffer="autobuffer";this.cb.Iz=g.browser()==g.Df?"metadata":"none";this.cb.setAttribute("preload",g.browser()==g.Df?"metadata":"none");this.cb.setAttribute("webkit-playsinline","true");this.cb.setAttribute("playsinline",
"true");this.cb.addEventListener("loadedmetadata",this.Og,n);this.vj=new t(this.cb);this.vj.bind(d.Ef,this.Qf,this,n);this.op=new u(this.cb,this.vj);this.op.bind(d.Ib,this.T7,this,n);this.kc=new l(this.cb);this.ca=new o(this.cb);this.ca.bind(o.eO,this.P6,this,n);this.ca.bind(o.Mj,this.ci,this,n);this.ca.bind(o.yO,this.Sf,this,n);this.zk=new s(this.cb);this.zk.bind(s.Ld,this.hd,this,n);this.zk.bind(s.cg,this.ej,this,n)};w.prototype.gra=function(){if(k.A_){var a="["+this.Xd+" "+v++ +"]";this.cb.log=
function(b,c){console.log(a+"["+(new Date).toISOString().split("T")[1]+"] "+b+" "+c)}}else this.cb.log=C()};w.prototype.G$=function(){if(this.cb){this.cb.removeEventListener("loadedmetadata",this.Og,n);if(this.op){this.op.unbind(d.Ib,this.T7,this,n);this.op.clear();this.op=r}if(this.vj){this.vj.unbind(d.Ef,this.Qf,this,n);this.vj.clear();this.vj=r}if(this.kc){this.kc.clear();this.kc=r}if(this.ca){this.ca.unbind(o.eO,this.P6,this,n);this.ca.unbind(o.Mj,this.ci,this,n);this.ca.unbind(o.yO,this.Sf,this,
n);this.ca.clear();this.ca=r}if(this.zk){this.zk.unbind(s.Ld,this.hd,this,n);this.zk.unbind(s.cg,this.ej,this,n);this.zk.clear();this.zk=r}this.cb=r}};w.prototype.clear=function(){this.G$()};w.prototype.iz=function(a,b,c){if(this.Hh()&&this.Wv())try{a.drawImage(this.cb,0,0,b,c);return n}catch(e){}a.fillRect(0,0,b,c);return y};w.prototype.play=function(a,b,c){this.cb.log("HTMLMediaPlayer","play src: "+b.src+" subtitlesSrc: "+b.Lj+" hasAudio: "+b.Lp+" gain: "+b.gain);this.ra=a;this.vx=r;this.Fl=b.clone();
this.bK=c||0;this.lha()};w.prototype.UM=function(){return this.Li=="activated"};w.prototype.HN=Q("xta");w.prototype.stop=function(){this.cb.log("HTMLMediaPlayer","stop");this.ca.stop();this.Fl=r};w.prototype.Pe=function(){return this.ca.Pe()};w.prototype.Wv=function(){return this.op.Qva()?y:this.ca.Wv()};w.prototype.Jd=function(a){this.kc.Jd(a);this.rd=a;this.ra&&this.Li=="requested"&&(this.rd?p.cancel(this.ra):p.zg(this.ra))};w.prototype.bq=function(a){this.kc.bq(a)};w.prototype.FF=function(a){this.kc.FF(a)};
w.prototype.ow=function(a){this.wha(a)};w.prototype.zj=function(){return this.zk.getTime()};w.prototype.Zp=function(a){return this.zk.setTime(a)};w.prototype.Aj=function(){return this.zk.Aj()};w.prototype.Hh=function(){return this.Xd==q.Ki};w.prototype.Qd=Q("Xd");w.prototype.ad=function(){return this.cb&&this.Hh()&&this.cb.videoWidth||0};w.prototype.Od=function(){return this.cb&&this.Hh()&&this.cb.videoHeight||0};w.prototype.XE=function(){return this.vj.XE()};w.prototype.lha=function(){this.cb.log("HTMLMediaPlayer",
"assert can play");if(this.Li=="activated"||!this.Fl.Lp){this.cb.log("HTMLMediaPlayer","can play activationState: "+this.Li+" pending media has audio: "+this.Fl.Lp);this.Eu()}else if(this.Li=="inactive"){this.cb.log("HTMLMediaPlayer","needs activation");this.ra&&this.Xd==q.Ki&&this.Zla()?this.Jga():this.ra&&i.lF()?this.ym():this.ra&&this.kha()}};w.prototype.Zla=function(){var a=this.t4();return a&&(!a.currentSrc||a.paused)&&!a.muted?n:y};w.prototype.t4=function(){return this.ra.get("settings").get(TDV.PlayerSettings.ACTIVE_VIDEO_ELEMENT)};
w.prototype.Jga=function(){this.cb.log("HTMLMediaPlayer","activate with application parameter");this.b$(this.t4());this.ym()};w.prototype.kha=function(){this.cb.log("HTMLMediaPlayer","ask for activation");this.Li="requested";p.p_(this.ym);this.ra&&!this.rd&&p.zg(this.ra)};w.prototype.ym=function(){if(this.Li=="inactive"||this.Li=="requested"){this.cb.log("HTMLMediaPlayer","activate received when state: "+this.Li+" and has media: "+!!this.vx);if(this.vx)b(function(){j.Vz(this.ym)}.bind(this));else{this.Li=
"activating";this.op.set("","",0)}}};w.prototype.Eu=function(){this.cb.log("HTMLMediaPlayer","media can play. Has pending properties: "+!!this.Fl);this.Fl&&this.op.set(this.Fl.src,this.Fl.Lj,this.bK)};w.prototype.T7=function(){this.Li=="activating"?this.moa():this.Fl&&this.Xna()};w.prototype.moa=function(){this.cb.log("HTMLMediaPlayer","on src ready activating");this.ca.play()};w.prototype.Sf=function(){if(this.Li=="activating"){this.cb.log("HTMLMediaPlayer","on play activating");this.ca.stop();this.Li=
"activated";this.Eu()}};w.prototype.Xna=function(){this.cb.log("HTMLMediaPlayer","on pending src ready");this.vx=this.Fl;this.Fl=r;this.qha(this.vx.Lp);this.oha(this.vx.gain);this.zk.setTime(this.bK);this.bK=m;this.ca.play()};w.prototype.qha=function(a){this.kc.$xa(a)};w.prototype.oha=function(a){this.kc.FF(a)};w.prototype.wha=function(a){a&&!this.cb.hasAttribute("loop")?this.cb.setAttribute("loop",""):!a&&this.cb.hasAttribute("loop")&&this.cb.removeAttribute("loop")};w.prototype.P6=function(){this.cb.log("HTMLMediaPlayer",
"on deactivated");p.Nya();j.Vz(this.kU);this.ra&&b(function(){p.zg(this.ra)}.bind(this))};w.prototype.kU=function(){this.cb.log("HTMLMediaPlayer","on reactivated");this.ca.play()};w.prototype.Qf=function(){this.trigger(d.Ef,this.vj.XE())};w.prototype.Og=function(){this.trigger(new f(w.ofa))};w.prototype.hd=function(){this.trigger(new f(w.Ld))};w.prototype.ej=function(){this.trigger(new f(w.cg))};w.prototype.ci=function(){this.trigger(new f(w.Mj))};w.Ld="time update";w.cg="duration update";w.ofa="size update";
w.Mj="end";return w});define("cQ",["require"],function(){return function(a){this.cue=a;this.text=a.text}});define("ka",["require"],function(){function a(){this.Lj=this.src=m;this.Lp=y;this.gain=1}a.prototype.clone=function(){var b=new a;b.src=this.src;b.Lj=this.Lj;b.Lp=this.Lp;b.gain=this.gain;return b};return a});
define("bD","require,fg,do,ll,fu,bZ,eO,iX,r,jt,kQ,ga".split(","),function(a){function b(a){this.CA=a;this.Y=r;this.tu=(new Date).getTime()}var c=a("fg"),d=a("do"),f=a("ll"),e=a("fu"),g=a("bZ"),k=a("eO"),i=a("iX"),p=a("r"),j=a("jt"),l=a("kQ"),q=a("ga");b.prototype.TY=function(){return this.Y==r};b.prototype.UM=function(){return this.CA.UM()};b.prototype.HN=function(){return this.CA.HN()};b.prototype.item=Q("Y");b.prototype.Qua=function(){this.Y.bZ(this.CA);this.Y=r};b.prototype.Eza=function(a){this.Y=
a;this.Y.gY(this.CA);this.tu=(new Date).getTime()};var o=c.extend(k,function(){k.call(this);this.$m=[];for(var a=j.Sba("avs",10),c=j.Sba("avpas",i.Yta()?4:1),d=0;d<a;d++)this.$m.push(new b(new l(q.Ki,d<c)));this.Xf=[];this.m=e.I});o.prototype.Az=function(){return this.c5().length>0};o.prototype.hN=function(a){this.Xf=[a].concat(d(this.Xf).without(a));this.FU()};o.prototype.RX=function(a){this.Xf.push(a);this.FU()};o.prototype.Gz=function(a){this.Xf=d(this.Xf).without(a);this.FU()};o.prototype.FU=
function(){var a=this.Dla();if(o.Eca())for(;this.$m.length<a.length;)this.$m.push(new b(new l(q.Ki,y)));this.c5().forEach(function(b){a.indexOf(b.item())<0&&b.Qua()});this.Xb(a.length>0?e.O:e.I);a.forEach(function(a){if(!this.jla(a)){var c=this.$ka(a.kN());!c&&!a.kN()&&this.$m.push(c=new b(new l(q.Ki,y)));c&&c.Eza(a)}}.bind(this));this.ala().forEach(function(a){a.CA.stop()})};o.prototype.Dla=function(){return this.Xf.map(function(a,b){var c={};c.index=b;c.Sd=a.EY();c.item=a;return c}).sort(function(a,
b){return a.Sd-b.Sd||a.index-b.index}).map(function(a){return a.item})};o.prototype.Xb=function(a){if(this.m!=a){this.m=a;this.trigger(new g(this.m==e.I?f.oe:f.Ji))}};o.prototype.$ka=function(a){var b=this.$m.filter(function(a){return a.TY()});if(b.length){if(a){a=b.filter(function(a){return a.UM()});a.length||(a=b.filter(function(a){return a.HN()}))}else{a=b.filter(function(a){return!a.HN()});a.length||(a=b.filter(function(a){return!a.UM()}))}a.length&&(b=a);if(p.browser()==p.Ei){b.sort(function(a,
b){return b.tu-a.tu});return b[Math.min(2,b.length-1)]}return b[0]}return r};o.prototype.ala=function(){return this.$m.filter(function(a){return a.TY()})};o.prototype.c5=function(){return this.$m.filter(function(a){return!a.TY()})};o.prototype.jla=function(a){for(var b=0;b<this.$m.length;b++)if(this.$m[b].item()==a)return this.$m[b];return r};o.aT=r;o.bind=function(){var a=o.Kf();a.bind.apply(a,arguments)};o.unbind=function(){var a=o.Kf();a.unbind.apply(a,arguments)};var t=[p.Zz,p.Ws].indexOf(p.Jc())>=
0;o.Eca=function(){return t};o.Az=function(){return o.Kf().Az()};o.RX=function(a){o.Kf().RX(a)};o.hN=function(a){o.Kf().hN(a)};o.Gz=function(a){o.Kf().Gz(a)};o.po=function(){if(o.aT===r)o.aT=new o;return o.aT};o.Kf=o.po;o.po();return o});
define("z","require,fg,bZ,eO,ll,fu,kQ,cQ,ka,ga,bD,V,iX".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("eO"),f=a("ll"),e=a("fu"),g=a("kQ"),k=a("cQ"),i=a("ka"),p=a("ga"),j=a("bD"),l=a("V"),q=a("iX"),o=b.extend(d,function(a,b,c){d.call(this);this.ra=a;this.j=b;this.iD=c;this.V=r;this.DD();this.wJ=this.wJ.bind(this);this.j.bind(f.D("gain"),this.qC,this,n);this.j.bind(f.D("mp3Url"),this.Al,this,n);this.j.bind(f.D("oggUrl"),this.Al,this,n);this.m=e.I;this.WB=y;this.Te=this.pb=0;this.rd=y;this.$l=1;
this.kB=y;this.Fx=1;this.Yb=r;this.zm=[]});o.prototype.Ra=Q("ra");o.prototype.jc=function(a){if(this.m!=a&&!(a==e.uc&&this.m!=e.O)){this.m=a;if(this.m==e.O){this.mia();j.hN(this)}else this.sra();this.JW()}};o.prototype.sra=function(){if(!this.kB){this.kB=n;this.e4=this.j.get("fadeOutTime");this.e4==0?this.z$():this.wJ(0)}};o.prototype.wJ=function(a){if(!this.Yb||this.Fx==0||!this.kB||this.Ema())this.z$();else{this.Fx=Math.max(0,this.Fx-a/this.e4);this.YG();l.La(this.wJ)}};o.prototype.mia=function(){this.kB=
y;this.Fx=1;this.YG()};o.prototype.z$=function(){this.kB=y;this.Fx=1;if(this.Yb){j.Gz(this);this.m==e.I&&this.QV()}};o.prototype.Pe=Q("m");o.prototype.Aj=Q("pb");o.prototype.Zp=function(a){this.Te=a;this.Yb&&this.Yb.play(this.ra,this.V,this.Te)};o.prototype.zj=Q("Te");o.prototype.bq=function(a){this.$l=a;this.YG()};o.prototype.YG=function(){this.Yb&&this.Yb.bq(this.$l*this.Fx)};o.prototype.Jd=function(a){this.rd=a;this.Yb&&this.Yb.Jd(a)};o.prototype.ow=function(a){this.WB=a;this.Yb&&this.Yb.ow(a)};
o.prototype.kN=function(){return!this.rd};o.prototype.Qd=function(){return p.efa};o.prototype.EY=Q("iD");o.prototype.gY=function(a){this.Yb=a;setTimeout(function(){this.Yb&&this.Yb.bind(g.Mj,this.pC,this,n)}.bind(this),0);this.DD();this.Yb.bind(g.Ld,this.hd,this,n);this.Yb.bind(g.cg,this.ej,this,n);this.Yb.bind(f.Ef,this.Qf,this,n);this.Yb.Jd(this.rd);this.YG();this.Yb.ow(this.WB);this.Yb.play(this.ra,this.V,this.Te)};o.prototype.bZ=function(){this.Te=this.Yb.zj();this.Yb.unbind(g.Mj,this.pC,this,
n);this.Yb.unbind(g.Ld,this.hd,this,n);this.Yb.unbind(g.cg,this.ej,this,n);this.Yb.unbind(f.Ef,this.Qf,this,n);this.Yb=r};o.prototype.clear=function(){this.jc(e.I);if(this.j){this.j.unbind(f.D("gain"),this.qC,this,n);this.j.unbind(f.D("mp3Url"),this.Al,this,n);this.j.unbind(f.D("oggUrl"),this.Al,this,n);this.j=r}};o.prototype.Al=function(){this.Xu&&clearTimeout(this.Xu);this.Xu=setTimeout(function(){this.Xu=r;if(this.Yb){this.V.src=this.cr(this.j);this.Yb.play(this.ra,this.V,this.Te)}}.bind(this),
10)};o.prototype.qC=function(){if(this.Yb){var a=this.j.get("gain");if(this.V.gain!=a){this.V.gain=a;this.Yb.FF(this.V.gain)}}};o.prototype.DD=function(){this.V=new i;this.V.src=this.cr(this.j);this.V.Lp=n;this.V.gain=this.j.get("gain")};o.prototype.cr=function(a){var b=a.get("mp3Url");if(b&&q.Lca)return b;return(a=a.get("oggUrl"))&&q.Mca?a:b||a};o.prototype.ej=function(){this.pb=this.Yb.Aj();this.GW()};o.prototype.hd=function(){this.pb!=this.Yb.Aj()&&this.ej();this.Te=this.Yb.zj();this.eE()};o.prototype.Qf=
function(){this.zm=this.Yb.XE().map(function(a){for(var b=r,c=0;c<this.zm.length&&!b;c++)this.zm[c].cue==a&&(b=this.zm[c]);b||(b=new k(a));return b}.bind(this));this.trigger(new c(f.Ef))};o.prototype.pC=function(){this.jc(e.I);this.HW()};o.prototype.Ema=function(){return this.Yb&&this.Yb.zj()&&this.Yb.zj()==this.Yb.Aj()};o.prototype.QV=function(){this.Te=0;this.eE()};o.prototype.eE=function(){this.trigger(new c(o.Ld))};o.prototype.GW=function(){this.trigger(new c(o.cg))};o.prototype.HW=function(){this.trigger(new c(f.Ba))};
o.prototype.JW=function(){this.trigger(new c(f.xc))};o.Ld="time update";o.cg="duration update";return o});
define("kn","require,fg,ll,ge,fu,jd,bZ,dW,z".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("ge"),f=a("fu"),e=a("jd"),g=a("bZ"),k=a("dW"),i=a("z"),a=b.extend(e,function(a){e.call(this);this.set("state",f.I);this.iD=a||d.iga;this.cl=m});k.A("Audio",a).B("Object").K({audio:"AudioResource",loop:"bool",state:"enum[stopped, playing, paused]"}).Ag({play:function(){this.Pg()},pause:function(){this.pk()},stop:function(){this.sj()}}).Vb([c.Ba,c.xc]);a.prototype.Ov=function(){if(this.cl==m){var a=this.get("audio");
if(a){this.cl=new i(this.get("application"),a,this.iD);a=function(){this.cl.ow(this.get("loop",y))};a.call(this);this.bind(c.D("loop"),a,this);a=function(){this.cl.Jd(this.get("application").get("mute",y))};a.call(this);this.get("application").bind(c.D("mute"),a,this,n);a=function(){this.set("state",this.cl.Pe())};a.call(this);this.cl.bind(c.xc,a,this,n);this.cl.bind(c.Ba,this.tna,this,n)}else this.cl=r}return this.cl};a.prototype.set=function(a,b){if(a=="state"){var d=this.get("state"),i=this.cl?
this.cl.Pe():f.I;i!=d&&this.trigger(new g(c.xc,{oldState:d,state:i}))}e.prototype.set.call(this,a,b)};a.prototype.En=function(){return[]};a.prototype.tna=function(){this.trigger(new g(c.Ba))};a.prototype.Pg=function(){var a=this.Ov();a&&a.jc(f.O)};a.prototype.sj=function(){var a=this.Ov();a&&a.jc(f.I)};a.prototype.pk=function(){var a=this.Ov();a&&a.jc(f.uc)};return a});
define("gN",["fg","dW","kn"],function(a,b,c){a=a.extend(c,function(a){c.call(this,a)});b.A("MediaAudio",a).B("Audio").K({autoplay:"bool"});return a});define("lE","require,fg,ge,dW,gN,z".split(","),function(a){var b=a("fg"),c=a("ge"),d=a("dW"),f=a("gN");a("z");a=b.extend(f,function(){f.call(this,c.Sfa)});d.A("PanoramaAudio",a).B("MediaAudio");return a});
define("fB",["fg","lE","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("DirectionalPanoramaAudio",a).B("PanoramaAudio").K({yaw:"number",pitch:"number",maximumAngle:"number"});return a});define("gh",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("DistancePanoramaCameraMovement",b).B("DistanceRotationalCameraMovement");return b});
define("fo",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("DistanceRotationalCameraMovement",b).B("RotationalCameraMovement").K({hfovDelta:"number",pitchDelta:"number",yawDelta:"number"});return b});
define("u","require,do,ll,fg,bZ,eO".split(","),function(a){function b(a,b,c,i,f){this.Yi=r;this.VT=a;this.ae=d.D(this.VT);this.AS=b;this.ka=c||window;this.YS=i;this.t6=f;this.gT=y}var c=a("do"),d=a("ll"),f=a("fg");a("bZ");a("eO");b.prototype.unwatch=function(){this.sV(r)};b.prototype.sV=function(a){c(this.P4()).each(function(a){a&&a.unbind(this.ae,this.O2,this)},this);this.Yi=a;c(this.P4()).each(function(a){a&&a.bind(this.ae,this.O2,this,this.YS)},this);this.h9()};b.prototype.P4=function(){return this.Yi?
c(this.Yi).isArray()?this.Yi:[this.Yi]:[]};b.prototype.h9=function(){this.t6&&this.t6.sV(this.ela())};b.prototype.ela=function(){return this.Yi==r?r:c(this.Yi).isArray()?c(this.Yi).map(function(a){return a?a.get(this.VT):r},this):this.Yi.get(this.VT)};b.prototype.O2=function(a){if(!this.gT){try{this.gT=n;this.h9();this.AS.call(this.ka,a)}catch(b){f.XM("ChangeWatcher._changeHandler",b)}this.gT=y}};b.watch=function(a,d,k,i,f){c.isString(d)&&(d=d.split("."));typeof f=="undefined"&&(f=y);if(d.length>
0){d=new b(d[0],k,i,f,b.watch(r,d.slice(1),k,i,f));d.sV(a);return d}return r};return b});
define("lB",["jquery.mod","fg","ll","d"],function(a,b,c,d){var f=b.extend(d,function(){d.call(this);this.Uc("DropDownArrow");this.v=r;this.oo=n;this.bind(c.vb,this.bka,this)});f.prototype.za=function(){d.prototype.za.call(this);this.f("color","#000000");this.f("direction",f.YN)};f.prototype.bka=function(){this.oo=n;this.Dc()};f.prototype.Fa=function(){d.prototype.Fa.call(this);this.v||(this.v=a("<canvas/>"),this.v.css({position:"absolute",left:0,top:0}),this.Pa().append(this.v))};f.prototype.ja=function(){var a=
y;this.n("color")&&(a=n,this.q("color"));this.n("direction")&&(a=n,this.q("direction"));this.oo&&(a=n,this.oo=y);if(a){var a=this.Hd(),b=this.Gd(),c=this.k("color"),i=this.k("direction"),p=[0.5*a,0,a],i=i==f.YN?[b,0,0]:[0,b,b],j=this.v.get(0);j.width=a;j.height=b;j=j.getContext("2d");j.clearRect(0,0,a,b);j.beginPath();j.moveTo(p[0],i[0]);j.lineTo(p[1],i[1]);j.lineTo(p[2],i[2]);j.fillStyle=c;j.fill()}d.prototype.ja.call(this)};f.YN="down";f.Qza="up";return f});
define("fQ","fg,bZ,jY,R,ll,c,fm,kS,lB,gP".split(","),function(a,b,c,d,f,e,g,k,i,p){a=a.extend(k,function(){k.call(this);this.Uc("DropDownButton");this.xq=this.sa=r;this.vT=n;this.set("autoRolledOver",n);this.set("autoPressed",n);this.set("childrenInteractionEnabled",y);this.set("contentOpaque",n);this.set("cursor",d.me);this.bind(f.U,this.ER,this)});a.prototype.za=function(){k.prototype.za.call(this);this.f("arrowColor","#000000");this.f("arrowBeforeLabel");this.f("arrowWidth",9);this.f("arrowHeight",
5);this.f("arrowGap",5);this.f("shadow",y);this.f("layout",e.Be);this.f("verticalAlign",c.tc);this.f("borderRadius",5);this.f("borderColor","#AAAAAA");this.f("borderSize",1);this.f("backgroundColor",["#FAFAFA","#E5E5E5"]);this.f("backgroundColorRatios",[0,1]);this.f("backgroundColorDirection","vertical");this.f("paddingLeft",5);this.f("paddingTop",5);this.f("paddingRight",5);this.f("paddingBottom",5);this.f("fontFamily");this.f("fontSize");this.f("fontColor","#555555");this.f("fontWeight");this.f("fontStyle");
this.f("textDecoration");this.f("textShadowColor");this.f("textShadowHorizontalLength");this.f("textShadowVerticalLength");this.f("textShadowBlurRadius");this.f("textShadowOpacity");this.h("rollOverBorderColor",g.u,"borderColor");this.h("rollOverArrowColor",g.u,"arrowColor");this.h("rollOverBackgroundColor",g.u,"backgroundColor");this.h("rollOverBackgroundColorRatios",g.u,"backgroundColorRatios");this.h("rollOverShadow",g.u,"shadow");this.h("pressedBorderColor",g.Ca,"borderColor");this.h("pressedArrowColor",
g.Ca,"arrowColor");this.h("pressedBackgroundColor",g.Ca,"backgroundColor");this.h("pressedBackgroundColorRatios",g.Ca,"backgroundColorRatios");this.h("pressedShadow",g.Ca,"shadow");this.h("pressedRollOverBorderColor",g.$a,"borderColor");this.h("pressedRollOverArrowColor",g.$a,"arrowColor");this.h("pressedRollOverBackgroundColor",g.$a,"backgroundColor");this.h("pressedRollOverBackgroundColorRatios",g.$a,"backgroundColorRatios");this.h("pressedRollOverShadow",g.$a,"shadow");this.h("pressedBorderColor",
g.G,"borderColor");this.h("pressedArrowColor",g.G,"arrowColor");this.h("pressedBackgroundColor",g.G,"backgroundColor");this.h("pressedBackgroundColorRatios",g.G,"backgroundColorRatios");this.h("pressedShadow",g.G,"shadow")};a.prototype.set=function(a,b){if(a=="label"&&this.get("label")!=b){this.vT=n;this.Dc()}k.prototype.set.call(this,a,b)};a.prototype.Fa=function(){k.prototype.Fa.call(this);if(!this.sa){this.sa=new p;this.sa.set("width","100%");this.la(this.sa)}if(!this.xq){this.xq=new i;this.xq.set("direction",
i.YN);this.la(this.xq)}};a.prototype.ER=function(){this.open();this.trigger(new b(f.OPEN))};a.prototype.open=function(){this.unbind(f.U,this.ER,this);this.zD(n)};a.prototype.close=function(){this.bind(f.U,this.ER,this);this.zD(y)};a.prototype.ja=function(){if(this.vT){this.sa.set("text",this.get("label"));this.vT=y}this.hb(["horizontalAlign","fontFamily","fontSize","fontColor","fontWeight","fontStyle","textDecoration","textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius",
"textShadowOpacity"],{},[this.sa],n,n);if(this.n("arrowGap")){this.set("gap",this.k("arrowGap"));this.q("arrowGap")}if(this.n("arrowColor")){this.xq.set("color",this.k("arrowColor"));this.q("arrowColor")}if(this.n("arrowBeforeLabel")){this.k("arrowBeforeLabel")==n?this.Fj(this.xq,0):this.Fj(this.sa,0);this.q("arrowBeforeLabel")}if(this.n("arrowWidth")){this.xq.set("width",this.k("arrowWidth"));this.q("arrowWidth")}if(this.n("arrowHeight")){this.xq.set("height",this.k("arrowHeight"));this.q("arrowHeight")}k.prototype.ja.call(this)};
return a});define("fG",["do","fg","kS","c"],function(a,b,c,d){var f=b.extend(c,function(){c.call(this)});f.nb={layout:d.kf};a.defaults(f.nb,c.nb);f.prototype.za=function(){this.$j(f.nb)};return f});
define("iQ","require,fg,bZ,jY,R,fV,ll,kS,fG,gP".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("jY"),f=a("R"),e=a("fV"),g=a("ll"),k=a("kS"),i=a("fG"),p=a("gP"),a=b.extend(k,function(){k.call(this);this.Uc("DropDownPopup");this.yc=r;this.eH=y;this.Qa=r;this.PB=[];this.gs=n});a.prototype.open=function(a){this.yc=a;this.eH=n;this.Ra().Fj(this,this.Ra().Oa().length-1);this.set("overIndex",-1);this.set("visible",n);this.bind(g.Eb,this.mc,this);this.Ra().bind(g.ec,this.k6,this);this.Ra().bind(g.vb,
this.jb,this)};a.prototype.close=function(){this.yc=r;this.eH=n;this.set("visible",y);this.Qa.set("overflow",e.tt);this.Qa.set("contentOpaque",n);this.unbind(g.Eb,this.mc,this);this.Ra().unbind(g.ec,this.k6,this);this.Ra().bind(g.vb,this.jb,this)};a.prototype.Fa=function(){k.prototype.Fa.call(this);if(!this.Qa){this.Qa=new i;this.Qa.set("overflow",e.tt);this.Qa.bind(g.vb,this.jb,this);this.Qa.bind(g.vm,this.Zr,this);this.la(this.Qa)}};a.prototype.jb=function(){this.xaa()};a.prototype.mc=function(){this.yV=
y};a.prototype.Zr=function(){this.yV=n};a.prototype.k6=function(){this.get("overIndex")==-1&&(!this.yV||!this.gk)&&this.trigger(new c(g.Xs));this.yV=y};a.prototype.Mna=function(a){this.set("overIndex",this.nS(a.source))};a.prototype.Nna=function(a){a=this.nS(a.source);this.get("overIndex")==a&&this.set("overIndex",-1)};a.prototype.Lna=function(a){a=this.nS(a.source);this.set("overIndex",a);this.set("selectedIndex",a);this.trigger(new c(g.Ii))};a.prototype.nS=function(a){for(var b=0;b<this.PB.length;b++)if(this.PB[b]==
a)return b;return-1};a.prototype.za=function(){k.prototype.za.call(this);this.f("visible",y);this.f("width","100%");this.f("height","100%");this.f("includeInLayout",y);this.f("items",[]);this.f("selectedIndex",-1);this.f("overIndex",-1);this.f("popUpGap",0);this.f("popUpBackgroundColor");this.f("popUpBackgroundOpacity");this.f("rollOverPopUpBackgroundColor");this.f("selectedPopUpBackgroundColor");this.f("popUpFontColor");this.f("rollOverPopUpFontColor");this.f("selectedPopUpFontColor");this.f("popUpShadow",
n);this.f("popUpShadowBlurRadius");this.f("popUpShadowColor");this.f("popUpShadowHorizontalLength");this.f("popUpShadowOpacity");this.f("popUpShadowSpread");this.f("popUpShadowVerticalLength");this.f("fontFamily");this.f("fontSize");this.f("fontWeight");this.f("fontStyle");this.f("textDecoration");this.f("textShadowColor");this.f("textShadowHorizontalLength");this.f("textShadowVerticalLength");this.f("textShadowBlurRadius");this.f("textShadowOpacity");this.f("buttonWidth")};a.prototype.ja=function(){var a=
y,b=y;if(this.n("items")){for(var a=this.k("items")||[],c=this.PB.length;c<a.length;c++){var e=new p;e.M({width:"100%",paddingLeft:5,paddingRight:5,paddingBottom:2,paddingTop:2,cursor:f.me});e.bind(g.Jh,this.Mna,this);e.bind(g.Ff,this.Nna,this);e.bind(g.U,this.Lna,this);this.PB.push(e)}e=this.Qa.Oa();for(c=a.length;c<e.length;c++)this.Qa.removeChild(e[c]);for(c=e.length;c<a.length;c++)this.Qa.la(this.PB[c]);for(c=0;c<a.length;c++)e[c].set("text",a[c]);this.q("items");b=a=n}if(this.n("selectedIndex")){this.q("selectedIndex");
a=n}for(var d=["horizontalAlign","popUpBackgroundOpacity","popUpPaddingBottom","popUpPaddingLeft","popUpPaddingRight","popUpPaddingTop","fontFamily","fontSize","fontWeight","fontStyle","textDecoration","textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"],c=0;c<d.length;c++){e=d[c];if(this.n(e)){this.q(e);b=n}}if(b){d={fontFamily:this.k("fontFamily"),fontSize:this.k("fontSize"),fontWeight:this.k("fontWeight"),fontStyle:this.k("fontStyle"),
horizontalAlign:this.k("horizontalAlign"),textDecoration:this.k("textDecoration"),textShadowColor:this.k("textShadowColor"),textShadowHorizontalLength:this.k("textShadowHorizontalLength"),textShadowVerticalLength:this.k("textShadowVerticalLength"),textShadowBlurRadius:this.k("textShadowBlurRadius"),textShadowOpacity:this.k("textShadowOpacity"),paddingBottom:this.k("popUpPaddingBottom"),paddingLeft:this.k("popUpPaddingLeft"),paddingRight:this.k("popUpPaddingRight"),paddingTop:this.k("popUpPaddingTop"),
backgroundOpacity:this.k("popUpBackgroundOpacity")};e=this.Qa.Oa();for(c=0;c<e.length;c++)e[c].M(d)}d=["selectedIndex","overIndex","popUpBackgroundColor","rollOverPopUpBackgroundColor","selectedPopUpBackgroundColor","popUpFontColor","rollOverPopUpFontColor","selectedPopUpFontColor"];for(c=0;c<d.length;c++){e=d[c];if(this.n(e)){this.q(e);a=n}}if(a)for(var a=this.k("popUpBackgroundColor"),d=this.k("rollOverPopUpBackgroundColor")||a,b=this.k("selectedPopUpBackgroundColor")||a,i=this.k("popUpFontColor"),
u=this.k("rollOverPopUpFontColor")||i,v=this.k("selectedPopUpFontColor")||i,w=this.k("selectedIndex"),x=this.k("overIndex"),e=this.Qa.Oa(),c=0;c<e.length;c++)c==w?e[c].M({fontColor:v,backgroundColor:b}):c==x?e[c].M({fontColor:u,backgroundColor:d}):e[c].M({fontColor:i,backgroundColor:a});if(this.eH||this.n("popUpGap")||this.n("buttonWidth")){this.yc&&this.Qa.set("minWidth",this.yc.Aa());this.q("popUpGap");this.xaa();this.eH=y}this.hb(["popUpShadow","popUpShadowBlurRadius","popUpShadowColor","popUpShadowHorizontalLength",
"popUpShadowOpacity","popUpShadowSpread","popUpShadowVerticalLength"],{popUpShadow:"shadow",popUpShadowBlurRadius:"shadowBlurRadius",popUpShadowColor:"shadowColor",popUpShadowHorizontalLength:"shadowHorizontalLength",popUpShadowOpacity:"shadowOpacity",popUpShadowSpread:"shadowSpread",popUpShadowVerticalLength:"shadowVerticalLength"},[this.Qa],n,n);this.laa();k.prototype.ja.call(this)};a.prototype.xaa=function(){if(this.yc){var a=this.Ra(),b=this.yc.Ava(a),c=this.yc.Aa(),i=this.yc.eb(),g=this.k("popUpGap"),
k=this.Qa.Na,f=this.Qa.Ya,p=a.eb()-(b.top+i+g)-5,w=b.top-5-g,x=this.k("horizontalAlign");if(f<=p){this.gs=n;this.Qa.set("top",b.top+i+g);this.Qa.set("maxHeight",m);this.Qa.set("overflow",e.tt)}else if(f<=w){this.gs=y;this.Qa.set("top",b.top-f-g);this.Qa.set("maxHeight",m);this.Qa.set("overflow",e.tt)}else{if(p>=w){this.gs=n;this.Qa.set("top",b.top+i+g);this.Qa.set("maxHeight",p)}else{this.gs=y;this.Qa.set("top",b.top-w+g);this.Qa.set("maxHeight",w)}this.Qa.set("overflow",e.vm)}i=x==d.Mc?b.left+Math.round((c-
k)*0.5):x==d.Ma?b.left+c-k:b.left;i<0?i=b.left:b.left+k>a.Aa()&&(i=b.left+c-k);this.Qa.set("left",i);this.laa()}};a.prototype.laa=function(){var a=this.k("popUpBorderRadius");this.Qa.M({borderTopRadius:this.gs?0:a,borderBottomRadius:this.gs?a:0});for(var b=this.Qa.Oa(),c=0;c<b.length;c++){var e=c==0,d=c==b.length-1;b[c].M({borderTopRadius:!this.gs&&e?a:0,borderBottomRadius:this.gs&&d?a:0})}};return a});
define("lv","require,fg,bZ,ll,kS,fQ,iQ".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("ll"),f=a("kS"),e=a("fQ"),g=a("iQ"),a=b.extend(f,function(){f.call(this);this.Uc("DropDown");this.HB=y;this.yc=this.Qg=r;this.j$=n;this.td=-1;this.Ak=y});a.prototype.za=function(){f.prototype.za.call(this);this.f("prompt","");this.f("label","");this.f("items",[]);this.f("selectedIndex",-1);this.f("arrowBeforeLabel");this.f("arrowWidth",9);this.f("arrowHeight",5);this.f("arrowGap",5);this.f("borderRadius",5);
this.f("borderSize",1);this.f("backgroundColorDirection","vertical");this.f("horizontalAlign","left");this.f("paddingLeft",5);this.f("paddingTop",5);this.f("paddingRight",5);this.f("paddingBottom",5);this.f("fontFamily");this.f("fontSize");this.f("fontColor","#555555");this.f("fontWeight");this.f("fontStyle");this.f("textDecoration");this.f("textShadowColor");this.f("textShadowHorizontalLength");this.f("textShadowVerticalLength");this.f("textShadowBlurRadius");this.f("textShadowOpacity");this.f("popUpGap",
0);this.f("popUpBorderRadius");this.f("popUpPaddingBottom",2);this.f("popUpPaddingLeft",5);this.f("popUpPaddingRight",5);this.f("popUpPaddingTop",2);this.f("popUpShadow",n);this.f("popUpShadowBlurRadius");this.f("popUpShadowColor");this.f("popUpShadowHorizontalLength");this.f("popUpShadowOpacity");this.f("popUpShadowSpread");this.f("popUpShadowVerticalLength");this.f("popUpBackgroundColor","#FFFFFF");this.f("popUpBackgroundOpacity");this.f("rollOverPopUpBackgroundColor");this.f("selectedPopUpBackgroundColor");
this.f("popUpFontColor","#555555");this.f("rollOverPopUpFontColor");this.f("selectedPopUpFontColor");this.f("borderColor","#AAAAAA");this.f("arrowColor","#000000");this.f("backgroundColor",["#FAFAFA","#E5E5E5"]);this.f("backgroundColorRatios",[0,1]);this.f("shadow",y);this.f("rollOverBorderColor");this.f("rollOverArrowColor");this.f("rollOverBackgroundColor");this.f("rollOverBackgroundColorRatios");this.f("rollOverShadow");this.f("pressedBorderColor");this.f("pressedArrowColor");this.f("pressedBackgroundColor");
this.f("pressedBackgroundColorRatios");this.f("pressedShadow");this.f("pressedRollOverBorderColor");this.f("pressedRollOverArrowColor");this.f("pressedRollOverBackgroundColor");this.f("pressedRollOverBackgroundColorRatios");this.f("pressedRollOverShadow")};a.prototype.Fa=function(){f.prototype.Fa.call(this);if(!this.yc){this.yc=new e;this.yc.bind(d.vb,this.yna,this);this.yc.bind(d.OPEN,this.Vna,this);this.yc.bind(d.Xs,this.aU,this);this.yc.bind(d.zd,this.xna,this);this.yc.set("width","100%");this.yc.set("height",
"100%");this.la(this.yc)}if(!this.Qg){this.Qg=new g;this.Qg.bind(d.Xs,this.aU,this);this.Qg.bind(d.Ii,this.joa,this);this.Ra().la(this.Qg)}};a.prototype.yna=function(){this.j$=n;this.Dc()};a.prototype.Vna=function(){this.yc.open();this.Qg.set("selectedIndex",this.get("selectedIndex"));this.Qg.open(this.yc)};a.prototype.aU=function(){this.yc.close();this.Qg.close()};a.prototype.xna=function(){this.yc.close();this.Qg.close()};a.prototype.joa=function(){this.set("selectedIndex",this.Qg.get("selectedIndex"));
this.aU();this.Ak=n};a.prototype.ja=function(){var a=y;if(this.n("prompt")||this.n("label")){a=n;this.q("label");this.q("prompt")}if(this.n("selectedIndex")||this.n("items")){var a=n,b=this.k("selectedIndex"),e=this.k("items");b>=0&&b>=e.length&&(b=-1);this.set("selectedIndex",b);this.Qg.set("items",this.k("items"));this.Qg.set("selectedIndex",this.k("selectedIndex"));this.q("items");this.q("selectedIndex");if(this.Ak){this.Ak=y;this.trigger(new c(d.aa))}}if(a){a=this.k("label");if(!a){b=this.k("selectedIndex");
a=b<0?this.k("prompt"):this.k("items")[b]}this.yc.set("label",a)}if(this.j$){this.Qg.set("minWidth",this.yc.Aa());this.Qg.set("buttonWidth",this.yc.Aa())}this.hb(["fontFamily","fontSize","fontColor","fontWeight","fontStyle","textDecoration","horizontalAlign","textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"],{},[this.yc,this.Qg],n,n);this.hb(["popUpBorderRadius","popUpGap","popUpPaddingBottom","popUpPaddingLeft","popUpPaddingRight",
"popUpPaddingTop","popUpBackgroundColor","popUpBackgroundOpacity","rollOverPopUpBackgroundColor","selectedPopUpBackgroundColor","popUpFontColor","rollOverPopUpFontColor","selectedPopUpFontColor","popUpShadow","popUpShadowBlurRadius","popUpShadowColor","popUpShadowHorizontalLength","popUpShadowOpacity","popUpShadowSpread","popUpShadowVerticalLength"],{},[this.Qg],n,n);this.hb(["arrowBeforeLabel","arrowWidth","arrowHeight","arrowColor","rollOverArrowColor","pressedArrowColor","pressedRollOverArrowColor",
"arrowGap","shadow","shadowBlurRadius","shadowColor","shadowHorizontalLength","shadowOpacity","shadowSpread","shadowVerticalLength","borderRadius","borderTopRadius","borderBottomRadius","borderLeftRadius","borderRightRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderSize","borderLeftSize","borderTopSize","borderRightSize","borderBottomSize","borderColor","borderLeftColor","borderTopColor","borderRightColor","borderBottomColor","rollOverBorderColor",
"pressedBorderColor","pressedRollOverBorderColor","backgroundColor","backgroundColorRatios","backgroundColorDirection","backgroundOpacity","rollOverBackgroundColor","rollOverBackgroundColorRatios","rollOverShadow","pressedBackgroundColor","pressedBackgroundColorRatios","pressedShadow","pressedRollOverBackgroundColor","pressedRollOverBackgroundColorRatios","pressedRollOverShadow","paddingLeft","paddingTop","paddingRight","paddingBottom"],{},[this.yc],n,n);f.prototype.ja.call(this)};return a});
define("es","require,fg,u,ll,lv,dW,do".split(","),function(a){var b=a("fg"),c=a("u"),d=a("ll"),f=a("lv"),e=a("dW"),g=a("do"),a=b.extend(f,function(){f.call(this);this.Wb=r;this.O5=[];this.bind(d.aa,this.Bna,this)});e.A("DropDown",a).B("UIComponent").K({arrowBeforeLabel:"bool",arrowColor:"color",arrowHeight:"number",arrowWidth:"number",arrowGap:"number",fontFamily:"string",fontSize:"or[number, size]",fontColor:"color",fontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",
fontStyle:"enum[italic, normal]",gap:"number",horizontalAlign:"enum[left, center, right]",label:"string",playList:"PlayList",popUpGap:"number",popUpBackgroundColor:"color",popUpBackgroundOpacity:"number",popUpBorderRadius:"number",popUpFontColor:"color",popUpPaddingBottom:"number",popUpPaddingLeft:"number",popUpPaddingRight:"number",popUpPaddingTop:"number",popUpShadow:"bool",popUpShadowBlurRadius:"number",popUpShadowColor:"color",popUpShadowHorizontalLength:"number",popUpShadowOpacity:"number",popUpShadowSpread:"number",
popUpShadowVerticalLength:"number",pressedArrowColor:"color",pressedShadow:"bool",pressedBackgroundColor:"or[array[color], color]",pressedBackgroundColorRatios:"array[number]",pressedRollOverArrowColor:"color",pressedRollOverShadow:"bool",pressedRollOverBackgroundColor:"or[array[color], color]",pressedRollOverBackgroundColorRatios:"array[number]",prompt:"string",rollOverArrowColor:"color",rollOverBackgroundColor:"or[array[color], color]",rollOverBackgroundColorRatios:"array[number]",rollOverPopUpBackgroundColor:"color",
rollOverPopUpFontColor:"color",rollOverShadow:"bool",selectedPopUpBackgroundColor:"color",selectedPopUpFontColor:"color",textDecoration:"enum[underline, overline, line-through, none]",textShadowBlurRadius:"number",textShadowColor:"color",textShadowHorizontalLength:"number",textShadowOpacity:"number",textShadowVerticalLength:"number"}).aq(["fontSize"]).Vb([d.aa]);a.prototype.set=function(a,b){if(a=="playList"){if(this.Wb)for(this.Wb.unbind("change",this.$o,this);this.O5.length;)this.O5.shift().unwatch();
if(this.Wb=b){c.watch(this.Wb,"items.label",this.zL,this);c.watch(this.Wb,"items.media.label",this.zL,this);this.zL();this.Wb.bind("change",this.$o,this);this.$o()}else this.zL()}f.prototype.set.call(this,a,b)};a.prototype.zL=function(){this.Wb?this.set("items",g(this.Wb.get("items")).map(function(a){return a.get("label")||a.get("media")&&a.get("media").get("label")})):this.set("items",[])};a.prototype.$o=function(){this.set("selectedIndex",this.Wb.get("selectedIndex"))};a.prototype.Bna=function(){this.Wb&&
this.Wb.set("selectedIndex",this.get("selectedIndex"))};return a});
define("cH",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("initialState","playing");this.set("distance",0.5);this.set("intensity",0.1);this.set("speed",0.2);this.set("opacity",0.1);this.set("color","#ffffff");this.set("state","playing");this.set("startDuration",2E4);this.set("stopDuration",2E4)});a.A("DustPanoramaOverlay",b).B("PanoramaOverlay").K({intensity:"number",speed:"number",color:"color",opacity:"number",distance:"number",
startDuration:"number",initialState:"enum[playing, stopped]",state:"enum[playing, stopped]",stopDuration:"number",startState:"enum[playing, stopped]"});b.prototype.get=function(a,b){"startState"==a&&b===m&&(b=this.get("initialState"));return c.prototype.get.call(this,a,b)};return b});
define("dy","fg,jd,ll,bZ,V,kX,bq".split(","),function(a,b,c,d,f,e,g){var k={},i=a.extend(b,function(){b.call(this);this.pb=m;this.Sl=[];this.m="stopped";this.set("easing","linear");this.set("duration",1E3);this.set("loop",y);this.set("animationDirection","normal")});i.prototype.play=function(a){a||(a=k);if(!this.Az(a))if(this.m=="stopped"||this.Sl.indexOf(a)<0){this.m="playing";this.Sl.push(a);this.pe=0;this.pb=Math.max(this.get("duration",1E3),1);this.Ee=new e(this.get("easing","linear"),[new g("pos",
0,1)],this.pb);this.Ee.setTime(this.pe);this.Jy();this.mp();this.dD()}else this.m="playing"};i.prototype.reverse=function(a){a||(a=k);if(!this.vwa(a))if(this.m=="stopped"||this.Sl.indexOf(a)<0){this.m="playingReverse";this.Sl.push(a);this.pe=this.pb=Math.max(this.get("duration",1E3),0);this.Ee=new e(this.get("easing","linear"),[new g("pos",0,1)],this.pb);this.Ee.setTime(this.pe);this.Jy();this.mp();this.dD()}else this.m="playingReverse"};i.prototype.stop=function(){this.m="stopped";if(this.pe!==0){this.pe=
0;this.mp();this.dD()}};i.prototype.end=function(){if(this.m!="stopped"){this.pe=this.pb;this.mp();this.dD()}};i.prototype.Az=function(a){return this.m=="playing"&&this.Sl.indexOf(a)>=0};i.prototype.vwa=function(a){return this.m=="playingReverse"&&this.Sl.indexOf(a)>=0};i.prototype.Ng=function(a){if(this.m!="stopped"){this.pe=this.m=="playing"?Math.min(this.pb,this.pe+a):Math.max(0,this.pe-a);this.Ee.setTime(this.pe);this.mp();this.dD()}};i.prototype.Ds=function(){return this.Ee&&this.Ee.Bb("pos")||
0};i.prototype.Vq=function(a){if(this.Sl)for(var b=0;b<this.Sl.length;b++)a.call(this,this.Sl[b],b)};i.prototype.Jy=function(){this.trigger(new d(i.Q_))};i.prototype.mp=function(){this.trigger(new d(i.L_))};i.prototype.Hy=function(){this.trigger(new d(i.Mj))};i.prototype.Iy=function(){this.trigger(new d(i.Dw))};i.prototype.dD=function(){if(this.m=="playingReverse"&&this.pe<=0){this.Iy();this.Sl=[];if(this.m!="stopped"){this.stop();this.get("loop")&&this.play()}}else if(this.m=="playing"&&this.pe>=
this.pb){this.Hy();this.Sl=[];if(this.m!="stopped"){this.stop();this.get("animationDirection")=="alternate"?this.reverse():this.get("loop")&&this.play()}}else this.m!="stopped"&&f.La(this.Ng,this)};i.Q_="start";i.L_="frame";i.Mj="end";i.Dw="reverseEnd";return i});
define("bm",["require","fg","dW","dy"],function(a){var b=a("fg"),c=a("dW"),d=a("dy"),a=b.extend(d,function(){d.call(this)});c.A("Effect",a).B("Object").K({duration:"number",easing:"enum[linear, quad_in, quad_out, quad_in_out, cubic_in, cubic_out, cubic_in_out, quart_in, quart_out, quart_in_out, quint_in, quint_out, quint_in_out]",animationDirection:"enum[normal, alternate]",loop:"bool"}).Cf([d.Q_,d.L_,d.Mj,d.Dw]).Ag({play:function(){return d.prototype.play.apply(this,arguments)},reverse:function(){return d.prototype.reverse.apply(this,
arguments)},getPosition:function(){return d.prototype.Ds.apply(this,arguments)}});return a});
define("bb",["fg","dy"],function(a,b){var c=a.extend(b,function(){b.call(this);this.GP=this.FP=r});c.prototype.Jy=function(){b.prototype.Jy.call(this);this.FP=[];this.GP=[];this.Vq(function(a){this.FP.push(this.get("alphaFrom",a.Fh()));this.GP.push(this.get("alphaTo",a.Fh()))});this.wK()};c.prototype.mp=function(){b.prototype.mp.call(this);this.wK()};c.prototype.wK=function(){this.Vq(function(a,b){var c=this.FP[b],c=c+(this.GP[b]-c)*this.Ds(),g=0<a.Fh()&&a.Ic;!g&&0<c?(a.Hj(0),a.xe(n),a.Hj(c)):0==
c?(a.xe(y),a.Hj(1)):a.Hj(c)})};c.prototype.Hy=function(){this.wK();b.prototype.Hy.call(this)};c.prototype.Iy=function(){this.wK();b.prototype.Iy.call(this)};return c});define("ks",["fg","bb"],function(a,b){return a.extend(b,function(){b.call(this);this.set("alphaFrom",0);this.set("alphaTo",1)})});define("kC",["fg","ks","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("FadeInEffect",a).B("Effect");return a});
define("kF",["fg","bb"],function(a,b){return a.extend(b,function(){b.call(this);this.set("alphaFrom",1);this.set("alphaTo",0)})});define("ht",["fg","kF","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("FadeOutEffect",a).B("Effect");return a});
define("cj","require,fg,jd,ll,dW,dy".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("dy"),a=b.extend(c,function(){c.call(this);this.set("enabled",n);this.set("interactionEnabled",n);this.set("enabledInCardboard",y);this.set("enabledInStandard",n);this.set("enabledInSurfaceSelection",n);this.set("items",[]);this.set("rollOverItems",[]);this.set("maps",[]);this.set("rollOverMaps",[]);this.set("areas",[]);this.set("fadeInDuration",200);this.set("fadeOutDuration",200);this.set("projected",
y);this.bind(d.od,this.th,this,n);this.bind(d.zd,this.qh,this,n);this.Hf=[];this.Ic=y});f.A("HotspotPanoramaOverlay",a).B("PanoramaOverlay").K({centerOverDisplay:"bool",rollOverDisplay:"bool",useHandCursor:"bool",enabled:"bool",enabledInSurfaceSelection:"bool",enabledInCardboard:"bool",enabledInVR:"bool",enabledInStandard:"bool",fadeInDuration:"number",fadeOutDuration:"number",interactionEnabled:"bool",projected:"bool",effect:"Effect",rollOverEffect:"Effect",items:"array[or[FlatHotspotPanoramaOverlayImage, HotspotPanoramaOverlayImage, QuadHotspotPanoramaOverlayImage]]",
rollOverItems:"array[or[FlatHotspotPanoramaOverlayImage, HotspotPanoramaOverlayImage, QuadHotspotPanoramaOverlayImage]]",maps:"array[or[FlatHotspotPanoramaOverlayMap, HotspotPanoramaOverlayMap, QuadHotspotPanoramaOverlayMap]]",rollOverMaps:"array[or[FlatHotspotPanoramaOverlayMap, HotspotPanoramaOverlayMap, QuadHotspotPanoramaOverlayMap]]",areas:"array[or[FlatHotspotPanoramaOverlayArea, HotspotPanoramaOverlayArea, QuadHotspotPanoramaOverlayArea]]"});a.prototype.set=function(a,b){switch(a){case "enabledInCardboard":this.set("enabledInVR",
b);break;case "effect":case "rollOverEffect":case "areas":this.rpa();this.Hf=[]}c.prototype.set.call(this,a,b);switch(a){case "enabledInCardboard":this.set("enabledInVR",b);break;case "effect":case "rollOverEffect":case "areas":this.Pga()}};a.prototype.Pga=function(){this.get("effect")&&this.get("effect").bind(e.Dw,this.Q6,this,n);this.get("rollOverEffect")&&this.get("rollOverEffect").bind(e.Dw,this.O7,this,n);this.get("areas",[]).forEach(function(a){a.bind(d.wc,this.G6,this,n);a.bind(d.Mb,this.F6,
this,n)}.bind(this))};a.prototype.rpa=function(){this.get("effect")&&this.get("effect").unbind(e.Dw,this.Q6,this,n);this.get("rollOverEffect")&&this.get("rollOverEffect").unbind(e.Dw,this.O7,this,n);this.get("areas",[]).forEach(function(a){a.unbind(d.wc,this.G6,this,n);a.unbind(d.Mb,this.F6,this,n)}.bind(this))};a.prototype.G6=function(a){if(this.Hf.indexOf(a.source)<0){this.Hf.push(a.source);this.Hf.length==1&&this.hoa()}};a.prototype.F6=function(a){a=this.Hf.indexOf(a.source);if(a>=0){this.Hf.splice(a,
1);this.Hf.length==0&&this.goa()}};a.prototype.hoa=function(){var a=this.get("effect"),b=this.get("rollOverEffect");b&&(a&&a.Ds()>0?a.reverse():b.play())};a.prototype.goa=function(){var a=this.get("rollOverEffect");if(a){var b=this.get("effect");a.Ds()>0?a.reverse():b&&b.get("loop")&&b.play()}};a.prototype.Q6=function(){if(this.Hf.length>0){var a=this.get("rollOverEffect");if(a){this.get("effect").stop();a.play()}}};a.prototype.O7=function(){if(this.Hf.length==0){this.get("rollOverEffect").stop();
var a=this.get("effect");a&&a.get("loop")&&a.play()}};a.prototype.th=function(){var a=this.get("effect");a&&a.play()};a.prototype.qh=function(){var a=this.get("effect");a&&a.stop();(a=this.get("rollOverEffect"))&&a.stop()};return a});define("jG",["require","fg","dW","cj"],function(a){var b=a("fg"),c=a("dW"),d=a("cj"),a=b.extend(d,function(){d.call(this)});c.A("FlatHotspotPanoramaOverlay",a).B("HotspotPanoramaOverlay");return a});
define("q",["fg","jd","dW","ll"],function(a,b,c,d){a=a.extend(b,function(){b.call(this);this.set("displayTooltipInTouchScreens",n)});c.A("HotspotPanoramaOverlayArea",a).B("Object").K({mapColor:"or[color,enum[image,transparent,any]]",toolTip:"string",displayTooltipInTouchScreens:"bool",useHandCursor:"bool"}).Vb([d.wc,d.Mb,d.Jh,d.Ff]).Cf([d.U]);return a});define("en",["dW","q"],function(a,b){a.A("FlatHotspotPanoramaOverlayArea",b).B("HotspotPanoramaOverlayArea");return b});
define("bc",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b,e){c.call(this);a!==m&&this.set("vertices",a);this.set("opacity",b!==m?b:1);e!==m&&this.set("timestamp",e)});a.A("QuadPanoramaOverlayPlaybackPosition",b).B("Object").K({opacity:"number",timestamp:"number",vertices:"array[PanoramaPoint]"});return b});
define("gy",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b,e,g,k){c.call(this);a!==m&&this.set("yaw",a);b!==m&&this.set("pitch",b);e!==m&&this.set("roll",e);this.set("opacity",g!==m?g:1);k!==m&&this.set("timestamp",k)});a.A("FlatPanoramaOverlayPlaybackPosition",b).B("Object").K({opacity:"number",pitch:"number",roll:"number",timestamp:"number",yaw:"number"});return b});
define("eN",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b,e,g,k,i,p,j,l){c.call(this);a!==m&&this.set("yaw",a);b!==m&&this.set("pitch",b);e!==m&&this.set("rotationX",e);g!==m&&this.set("rotationY",g);k!==m&&this.set("roll",k);i!==m&&this.set("hfov",i);p!==m&&this.set("vfov",p);this.set("opacity",j!==m?j:1);l!==m&&this.set("timestamp",l)});a.A("PanoramaOverlayPlaybackPosition",b).B("Object").K({opacity:"number",yaw:"number",pitch:"number",rotationX:"number",
rotationY:"number",roll:"number",hfov:"number",vfov:"number",timestamp:"number"});return b});define("cc",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b){c.call(this);this.set("yaw",a);this.set("pitch",b)});a.A("PanoramaPoint",b).B("Object").K({pitch:"number",yaw:"number"});return b});
define("L",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b,e,g,k,i,p){c.call(this);a!==m&&this.set("yaw",a);b!==m&&this.set("pitch",b);e!==m&&this.set("rotationX",e);g!==m&&this.set("rotationY",g);k!==m&&this.set("rotationZ",k);i!==m&&this.set("hfov",i);p!==m&&this.set("timestamp",p)});a.A("PopupPanoramaOverlayPlaybackPosition",b).B("Object").K({yaw:"number",pitch:"number",rotationX:"number",rotationY:"number",rotationZ:"number",hfov:"number",timestamp:"number"});
return b});
define("hW","require,jd,bc,gy,eN,cc,L".split(","),function(a){var b=a("jd"),c=a("bc"),d=a("gy"),f=a("eN"),e=a("cc"),g=a("L");return{fva:function(a){return this.qI(a,this.ska)},DY:function(a){return this.qI(a,this.Poa)},xva:function(a){return this.qI(a,this.Woa)},FY:function(a){return this.qI(a,this.dpa)},ska:function(a){return new d(b.prototype.get.call(a,"yaw",0),b.prototype.get.call(a,"pitch",0),b.prototype.get.call(a,"roll",0),b.prototype.get.call(a,"opacity",1),0)},dpa:function(a){var d=b.prototype.get.call(a,
"vertices",[r,r,r,r]);return new c([d[0]||new e(0,0),d[1]||new e(0,0),d[2]||new e(0,0),d[3]||new e(0,0)],b.prototype.get.call(a,"opacity",1),0)},Poa:function(a){function c(e,d){return b.prototype.get.call(a,e,d)}return new f(c("yaw",0),c("pitch",0),c("rotationX",0),c("rotationY",0),c("roll",0),c("hfov",c("vfov")===m?45:m),c("vfov"),c("opacity",1),0)},Woa:function(a){function c(e,d){return b.prototype.get.call(a,e,d)}return new g(c("yaw",0),c("pitch",0),c("rotationX",0),c("rotationY",0),c("rotationZ",
0),c("hfov",45),0)},qI:function(a,c){var e=b.prototype.get.call(a,"playbackPositions")||[];return e.length>0?e.slice().sort(function(a,b){return a.get("timestamp")-b.get("timestamp")||e.indexOf(a)-e.indexOf(b)}):[c(a)]}}});
define("gZ","require,fg,jd,ll,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("hW"),a=b.extend(c,function(){c.call(this);this.set("opacity",1);this.set("scale",1);this.Ob=m});f.A("FlatHotspotPanoramaOverlayImageBase",a).B("Object").K({distance:"number",height:"number",horizontalAlign:"enum[center, left, right]",image:"ImageResource",offsetX:"number",offsetY:"number",opacity:"number",pitch:"number",playbackPositions:"array[FlatPanoramaOverlayPlaybackPosition]",roll:"number",
scale:"number",scaleMode:"enum[fill, fit_inside, fit_outside, fit_to_width, fit_to_height, none]",verticalAlign:"enum[bottom, middle, top]",width:"number",yaw:"number"}).Vb([d.od,d.zd]);a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=e.fva(this);return this.Ob}return c.prototype.get.call(this,a,b)};a.prototype.set=function(a,b){var e=y;switch(a){case "opacity":case "distance":case "pitch":case "roll":case "yaw":case "playbackPositions":this.Ob=m;e=n}c.prototype.set.call(this,
a,b);e&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};return a});define("n",["require","fg","dW","gZ"],function(a){var b=a("fg"),c=a("dW"),d=a("gZ"),a=b.extend(d,function(){d.call(this)});c.A("FlatHotspotPanoramaOverlayImage",a).B("FlatHotspotPanoramaOverlayImageBase");return a});
define("df",["require","fg","dW","gZ"],function(a){var b=a("fg"),c=a("dW"),d=a("gZ"),a=b.extend(d,function(){d.call(this)});c.A("FlatHotspotPanoramaOverlayMap",a).B("FlatHotspotPanoramaOverlayImageBase");return a});
define("jU","require,fg,jd,ll,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("hW"),a=b.extend(c,function(){c.call(this);this.Ob=m;this.set("enabled",n);this.set("interactionEnabled",n);this.set("contentInteractive",y);this.set("transparent",y)});f.A("FramePanoramaOverlay",a).B("PanoramaOverlay").K({contentInteractive:"bool",displayTooltipInTouchScreens:"bool",enabled:"bool",hfov:"number",height:"number",image:"ImageResource",interactionEnabled:"bool",pitch:"number",
roll:"number",rotationX:"number",rotationY:"number",toolTip:"string",transparent:"bool",url:"string",useHandCursor:"bool",playbackPositions:"array[PanoramaOverlayPlaybackPosition]",vfov:"number",width:"number",yaw:"number"}).Vb([d.zd,d.Jh,d.Ff,d.wc,d.Mb,d.od]).Cf([d.U]).fh(["url"]);a.prototype.set=function(a,b){var e=y;switch(a){case "hfov":case "pitch":case "rotationX":case "rotationY":case "roll":case "vfov":case "yaw":case "playbackPositions":this.Ob=m;e=n}c.prototype.set.call(this,a,b);e&&a!=
"playbackPositions"&&this.trigger(d.D("playbackPositions"))};a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=e.DY(this);return this.Ob}return c.prototype.get.call(this,a,b)};return a});define("cE",["do","fg","kS","c"],function(a,b,c,d){var f=b.extend(c,function(){c.call(this)});f.nb={layout:d.kq};a.defaults(f.nb,c.nb);f.prototype.za=function(){this.$j(f.nb)};return f});
define("hx",["do","fg","cE","dW"],function(a,b,c,d){a=b.extend(c,function(){c.call(this)});d.A("GridContainer",a).B("UIComponent").K({children:"array[UIComponent]",contentOpaque:"bool",childrenInteractionEnabled:"bool",creationPolicy:"enum[inAdvance, delayed]",gap:"number",horizontalAlign:"enum[center, left, right]",itemHeight:"or[number, percent]",itemMaxHeight:"number",itemMaxWidth:"number",itemMinHeight:"number",itemMinWidth:"number",itemWidth:"or[number, percent]",overflow:"enum[scroll, hidden, visible]",
scrollBarColor:"color",scrollBarWidth:"number",scrollBarMargin:"number",scrollBarHorizontalMargin:"number",scrollBarVerticalMargin:"number",scrollBarOpacity:"number",scrollBarVisible:"enum[rollOver, always]",verticalAlign:"enum[bottom, middle, top]"});return a});
define("hi","require,do,jquery.mod,bZ,eO,ll,ge,jt,id,gx,fg".split(","),function(a){function b(){}function c(a){this.kxa=a;this.Ik=[];this.Sd=0}var d=a("do");a("jquery.mod");var f=a("bZ"),e=a("eO"),g=a("ll"),k=a("ge"),i=a("jt"),p=a("id"),j=a("gx"),l=a("fg").extend(e,function(a){e.call(this);this.url=a;this.vZ=this.Sd=0;this.status=l.aP;this.gq=r});l.prototype.jZ=function(a){this.vZ=this.vZ+a};l.prototype.Cz=function(a){this.Sd=this.Sd+a};l.prototype.start=function(){this.status=l.HG;p.f_(this.url)?
this.tr():this.jk=j.add(this.url,k.cG,this.Upa.bind(this),this.K2.bind(this))};l.prototype.Upa=function(){this.gq=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");this.gq.open("GET",this.url);this.gq.onreadystatechange=function(){this.gq.readyState>3&&this.tr()}.bind(this);this.gq.send()};l.prototype.K2=function(){if(this.gq){this.gq.abort();this.gq=r}};l.prototype.stop=function(){if(this.status==l.HG){this.status=l.aP;this.K2();this.jk&&this.jk.cancel()}};l.prototype.tr=
function(){this.gq=r;if(this.jk){this.jk.loaded();this.jk=r}this.status=l.cga;this.trigger(new f(g.T))};l.aP="not loaded";l.HG="loading";l.cga="loaded";c.prototype.Ota=function(a){a.forEach(function(a){if(this.Ik.indexOf(a)<0){this.Ik.push(a);a.Cz(this.Sd);a.jZ(1)}}.bind(this))};c.prototype.txa=function(a){var b=this.Ik;this.Ik=[];b.forEach(function(b){if(a.indexOf(b)<0)this.Ik.push(b);else{b.Cz(-this.Sd);b.jZ(-1)}}.bind(this))};c.prototype.mxa=function(){this.Ik.forEach(function(a){a.Cz(-this.Sd);
a.jZ(-1)}.bind(this));this.Ik=[];this.Sd=0};c.prototype.Cz=function(a){this.Sd=this.Sd+a;this.Ik.forEach(function(b){b.Cz(a)})};b.Qc=[];b.T8=[];b.Bka=0;b.cba=function(a,b){this.sK(a).Ota(b.map(function(a){return this.Y(a)}.bind(this)));this.$K();this.L()};b.wxa=function(a,b){this.sK(a).txa(b.map(function(a){return this.Y(a)}.bind(this)));this.$K();this.L()};b.nxa=function(a){this.sK(a).mxa();this.$K();this.L()};b.$M=function(a,b){this.sK(a).Cz(b);this.$K();this.L()};b.$K=function(){this.Qc.sort(function(a,
b){return b.Sd-a.Sd})};b.L=function(a){if(this.enabled()&&(a||!this.hn))if(a){this.hn&&clearTimeout(this.hn);this.hn=r;var a=this.lla(),b=this.mla();d(a).difference(b).forEach(function(a){a.stop()});d(b).difference(a).forEach(function(a){a.start()})}else this.hn=setTimeout(function(){this.hn=r;this.L(n)}.bind(this),1E3)};b.hn=r;b.lla=function(){return this.Qc.filter(function(a){return a.status==l.HG})};b.mla=function(){for(var a=this.nla(),b=[],c=0;c<this.Qc.length&&b.length<a;c++){var e=this.Qc[c];
e.vZ>0&&(e.status==l.aP||e.status==l.HG)&&b.push(e)}return b};b.nla=function(){return this.Bka>0?0:1};b.sK=function(a){var b=d(this.T8).find(function(b){return b.kxa==a});if(!b){b=new c(a);this.T8.push(b)}return b};b.Y=function(a){var b=d(this.Qc).find(function(b){return b.url==a});if(!b){b=new l(a);b.bind(g.T,this.L,this);this.Qc.push(b)}return b};b.enabled=function(a){if(a===m)return b.Kja||b.Lja?y:b.IR!==m?b.IR:b.W;b.W=a};b.W=n;b.XZ=function(a){b.IR=a.get(TDV.PlayerSettings.BACKGROUND_PRELOAD_ENABLED)};
b.IR=m;b.Lja=i.Yg("disable-background-preload",y);b.Kja=y;return b});define("du",["fg","jd","dW","hi"],function(a,b,c,d){var f=a.extend(b,function(){b.call(this);this.bX=a.jm(this.bX,this)});c.A("Media",f).B("Object").K({label:"string",thumbnailUrl:"string"}).fh(["thumbnailUrl"]);f.prototype.bX=function(){d.cba(this,this.En())};f.prototype.En=function(){return[]};f.prototype.vxa=function(){d.nxa(this)};f.prototype.set=function(a,c){b.prototype.set.call(this,a,c);this.bX()};return f});
define("gC",["require","do","fg","dW","du"],function(a){a("do");var b=a("fg"),c=a("dW"),d=a("du"),a=b.extend(d,function(){d.call(this);this.WI=this.Ky=m;this.set("distanceToFloor",1.7)});c.A("Panorama",a).B("Media").K({adjacentPanoramas:"array[AdjacentPanorama]",audios:"array[PanoramaAudio]",cardboardMenu:"Menu",flipImageHorizontally:"bool",frames:"array[PanoramaFrame]",distanceToFloor:"number",hfov:"number",hfovMax:"number",hfovMin:"or[number,percent]",mapLocations:"array[PanoramaMapLocation]",overlays:"array[PanoramaOverlay]",
partial:"bool",pitch:"number",vfov:"number",vrMenu:"Menu"});a.prototype.get=function(a,b){switch(a){case "overlays":return this.qS();case "frames":return this.O4()}return d.prototype.get.call(this,a,b)};a.prototype.set=function(a,b){switch(a){case "cardboardMenu":this.set("vrMenu",b)}d.prototype.set.call(this,a,b)};a.prototype.qS=function(){var a=d.prototype.get.call(this,"overlays");a||(a=[]);return this.$V(a)};a.prototype.$V=function(a){if(this.Ky===m||this.WI!=a){var b=function(a){return c.qb("PopupPanoramaOverlay",
a)},d=function(a){return c.qb("LensFlarePanoramaOverlay",a)};this.WI=a;this.Ky=[].concat(a.filter(function(a){return!(b(a)||d(a))}),a.filter(d),a.filter(b))}return this.Ky};a.prototype.Dca=function(){return 0<this.get("overlays").filter(function(a){return c.qb("TripodCapPanoramaOverlay",a)}).length};a.prototype.rca=function(){return 0<this.get("overlays").filter(function(a){return c.qb("CeilingCapPanoramaOverlay",a)}).length};a.prototype.Tca=function(){if(!this.Sca())return y;var a=this.get("pitch",
0),b=this.get("vfov",180);if(179.9<=b)return n;var c=this.rca()?90:a+0.5*b,a=this.Dca()?-90:a-0.5*b;return 179.9<=c-a?n:y};a.prototype.Sca=function(){return 359.9<=this.get("hfov")&&!this.get("partial")};a.prototype.Hh=function(){var a=this.O4();return 0<a.length&&a[0].Hh()};a.prototype.xM=R(0);a.prototype.O4=function(){var a=d.prototype.get.call(this,"frames",[]);a.forEach(function(a){a.Uta(this)}.bind(this));return a};return a});
define("kl",["require","fg","dW","gC"],function(a){var b=a("fg"),c=a("dW"),d=a("gC"),a=b.extend(d,function(){d.call(this)});c.A("HDRPanorama",a).B("Panorama").K({minimumLuminance:"number",maximumLuminance:"number",luminanceChangeTime:"number",maxLuminanceChangeSpeed:"number"});a.prototype.xM=function(){var a=this.get("frames")||[];return Math.floor((a.length-1)/2)};return a});
define("jh",["fg","jd","dW","ll"],function(a,b,c,d){a=a.extend(b,function(){b.call(this)});c.A("HotspotMapOverlayArea",a).B("Object").K({mapColor:"or[color,enum[image,transparent,any]]",toolTip:"string",useHandCursor:"bool"}).Vb([d.wc,d.Mb]).Cf([d.U]);return a});
define("jj",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),d=b.extend(c,function(){c.call(this)});a.A("ImageResourceLevel",d).B("Object").K({url:"string",width:"number",height:"number",grayscale:"bool",premultipliedAlpha:"bool",tags:"or[array[enum[preload,mobile,ipadpro,oculusgo,mobilevr,mobilevr2gen,ondemand]], enum[preload,mobile,ipadpro,oculusgo,mobilevr,mobilevr2gen,ondemand]]"}).fh(["url"]);d.prototype.get=function(a,b){switch(a){case "tags":var g=c.prototype.get.call(this,
a);g||(g=[]);Array.isArray(g)||(g=[g]);0>g.indexOf(d.xm)&&c.prototype.get.call(this,"grayscale")&&(g=g.concat([d.xm]));return g}return c.prototype.get.call(this,a,b)};d.prototype.Cca=function(a){return 0<=this.get("tags").indexOf(a)};d.xm="preload";d.S0="mobile";d.R0="ipadpro";d.dP="mobilevr";d.T0="mobilevr2gen";d.eP="ondemand";return d});
define("eH",["require","jj","r","jt"],function(a){var b=a("jj"),c=a("r"),d=a("jt");return{fm:function(a){return this.Zg(a,"load")},Rv:function(a){return this.Zg(a,"preload")},vz:function(a){return this.fm(a)!=this.Rv(a)},Zg:function(a,b){var c=a.get("levels")||[],d=this.Jka(c),d=this.Bla(b,d),c=this.pka(c,b),i=this.W4(c,d[0],d[1],this.zla(b));i||(i=this.W4(c,d[0],d[1],m));return i},pka:function(a,e){"preload"==e?a=this.lB(a,b.xm):"load"==e&&(a=this.oka(a,b.xm));c.Np()&&(a=this.lB(a,b.R0));c.XY()&&
(a=this.lB(a,b.T0));c.we()&&(a=this.lB(a,b.dP));c.Xa()&&(a=this.lB(a,b.S0));return a},Jka:function(a){if(0==a.length)return 1;a.sort(function(a,b){return b.get("width")-a.get("width")});return a[0].get("width")/a[0].get("height")},Bla:function(a,b){if("preload"==a)return[0,0];var d=1E4;this.uka()||(c.we()?d=2048:c.Np()?d=1280:c.Xa()&&(d=1024));return 1>b?[d*b,d]:[d,d/b]},zla:function(a){if("load"==a)return y},uka:function(){return c.Np()&&d.Yg("recent_ipad_use_max_res",y)},lB:function(a,b){var c=
a.filter(function(a){return a.Cca(b)});0==c.length&&(c=a);return c},oka:function(a,b){var c=a.filter(function(a){return!a.Cca(b)});0==c.length&&(c=a);return c},W4:function(a,b,c,d){function i(a){return Math.abs(a.get("width")*a.get("height")-b*c)}a=a.filter(function(a){return d!==m&&d!=a.get("grayscale",y)?y:n});if(0==a.length)return r;a.sort(function(a,b){return i(a)-i(b)});return a[0]}}});
define("C","require,fg,jd,dW,eH,jY,jn".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("dW"),f=a("eH"),e=a("jY"),g=a("jn"),a=b.extend(c,function(){c.call(this);this.set("x",0);this.set("y",0);this.set("offsetX",0);this.set("offsetY",0);this.set("width",0);this.set("height",0);this.set("scaleMode",g.Vn);this.set("horizontalAlign",e.Mc);this.set("verticalAlign",e.tc)});d.A("HotspotMapOverlayImageBase",a).B("Object").K({height:"number",horizontalAlign:"enum[center, left, right]",image:"ImageResource",
offsetX:"number",offsetY:"number",scaleMode:"enum[none, fill, fit_inside, fit_outside, fit_to_width, fit_to_height]",verticalAlign:"enum[bottom, middle, top]",width:"number",x:"number",y:"number"});a.prototype.fm=function(){return this.get("image")?f.fm(this.get("image")):r};a.prototype.Rv=function(){return this.get("image")?f.Rv(this.get("image")):r};return a});define("iL",["fg","bZ"],function(a,b){return a.extend(b,function(a,d){b.call(this,a);this.Ih=d})});
define("bS",["require","fg","jd","ll","iL"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("iL"),a=b.extend(c,function(){c.call(this);this.sE=[];this.Wd=m;this.m="initial"});a.prototype.Gn=Q("sE");a.prototype.ZZ=function(a){this.sE!=a&&(this.sE=a,this.tr=this.Wd=m)};a.prototype.uya=function(a){this.Wd!==a&&(this.m="loading",this.Wd=a,this.trigger(new f(d.vc,this.Wd)))};a.prototype.OZ=function(){"loaded"!==this.m&&(this.m="loaded",this.trigger(d.T))};a.prototype.Wxa=function(){"loaded"!==this.m&&
(this.m="error",this.trigger(d.ne))};return a});define("cD",["fg","bS"],function(a,b){var c=a.extend(b,function(a){b.call(this);this.Xd=a;this.j=m});c.prototype.Qd=Q("Xd");c.prototype.Rva=function(a){return this.j!==m&&this.j===a.j};c.a1="map";c.b1="overlay";return c});define("hC",["fg","cD"],function(a,b){var c=a.extend(b,function(a,c,e){b.call(this,b.b1);this.Eoa=a;this.da=c;this.fa=e});c.prototype.getX=Q("da");c.prototype.getY=Q("fa");c.$0="image";c.Z0="fov";return c});
define("jf",["fg","hC"],function(a,b){var c=a.extend(b,function(a,c,e,g,k,i,p,j,l,q,o,t){b.call(this,b.$0,e,g);this.j=a;this.Nd=c;this.o9=k;this.Bu=i;this.Cu=p;this.X=j;this.ha=l;this.Ed=q;this.Vh=o;this.pi=t;this.sE=[c]});c.prototype.Bj=Q("Nd");c.prototype.ad=Q("X");c.prototype.Od=Q("ha");return c});
define("fy","require,fg,dW,C,eH,jf".split(","),function(a){var b=a("fg"),c=a("dW"),d=a("C"),f=a("eH"),e=a("jf"),a=b.extend(d,function(){d.call(this);this.Qo=m});c.A("HotspotMapOverlayImage",a).B("HotspotMapOverlayImageBase");a.prototype.getItem=function(){return this.$g()};a.prototype.$g=function(a){if(this.Qo===m)this.Qo=this.gM(a);return this.Qo};a.prototype.gM=function(a){var b=this.get("image");if(b){b=f.fm(b);return new e(this,b.get("url"),this.get("x"),this.get("y"),a,this.get("offsetX"),this.get("offsetY"),
this.get("width"),this.get("height"),this.get("scaleMode"),this.get("horizontalAlign"),this.get("verticalAlign"))}return r};return a});define("F",["require","fg","dW","C"],function(a){var b=a("fg"),c=a("dW"),d=a("C"),a=b.extend(d,function(){d.call(this)});c.A("HotspotMapOverlayMap",a).B("HotspotMapOverlayImageBase");return a});
define("eM","require,fg,jd,ll,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("hW"),a=b.extend(c,function(){c.call(this);this.set("opacity",1);this.set("scale",1);this.Ob=m});f.A("HotspotPanoramaOverlayImageBase",a).B("Object").K({yaw:"number",pitch:"number",roll:"number",rotationX:"number",rotationY:"number",hfov:"number",vfov:"number",distance:"number",horizontalAlign:"enum[center, left, right]",verticalAlign:"enum[bottom, middle, top]",scaleMode:"enum[fill, fit_inside, fit_outside, fit_to_width, fit_to_height, none]",
opacity:"number",scale:"number",image:"ImageResource",playbackPositions:"array[PanoramaOverlayPlaybackPosition]"}).Vb([d.od,d.zd]);a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=e.DY(this);return this.Ob}return c.prototype.get.call(this,a,b)};a.prototype.set=function(a,b){var e=y;switch(a){case "distance":case "hfov":case "vfov":case "pitch":case "rotationX":case "rotationY":case "roll":case "yaw":case "opacity":case "playbackPositions":this.Ob=m;e=n}c.prototype.set.call(this,
a,b);e&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};return a});define("iW",["require","fg","dW","eM"],function(a){var b=a("fg"),c=a("dW"),d=a("eM"),a=b.extend(d,function(){d.call(this)});c.A("HotspotPanoramaOverlayImage",a).B("HotspotPanoramaOverlayImageBase");return a});define("P",["require","fg","dW","eM"],function(a){var b=a("fg"),c=a("dW"),d=a("eM"),a=b.extend(d,function(){d.call(this)});c.A("HotspotPanoramaOverlayMap",a).B("HotspotPanoramaOverlayImageBase");return a});
define("iM",[],function(){function a(a){for(var b={},a=a.split(","),c=0;c<a.length;c++)b[a[c]]=n;return b}var b=/^<([-A-Za-z0-9_]+\:?[-A-Za-z0-9_]*)((?:\s+[-A-Za-z0-9_]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,c=/^<\/([-A-Za-z0-9_]+\:?[-A-Za-z0-9_]*)[^>]*>/,d=/([-A-Za-z0-9_]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g,f=a("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed"),e=a("address,applet,blockquote,button,center,dd,del,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul"),
g=a("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var"),k=a("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr"),i=a("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected"),p=a("script,style");return function(a,l){function q(a,b,c,j){b=b.toLowerCase();if(e[b])for(;u.last()&&g[u.last()];)o(0,u.last());k[b]&&
u.last()==b&&o(0,b);(j=f[b]||!!j)||u.push(b);if(l.start){var p=[];c.replace(d,function(a,b,c,e,d){a=c?c:e?e:d?d:i[b]?b:"";p.push({name:b,value:a,hY:a.replace(/(^|[^\\])"/g,'$1\\"')})});l.start&&l.start(b,p,j)}}function o(a,b){if(b){b=b.toLowerCase();for(c=u.length-1;0<=c&&u[c]!=b;c--);}else var c=0;if(0<=c){for(var e=u.length-1;e>=c;e--)l.end&&l.end(u[e]);u.length=c}}var t,s,u=[],v=a;for(u.last=function(){return this[this.length-1]};a;){s=n;if(!u.last()||!p[u.last()]){if(0==a.indexOf("<\!--"))t=a.indexOf("--\>"),
0<=t&&(l.lua&&l.lua(a.substring(4,t)),a=a.substring(t+3),s=y);else if(0==a.indexOf("</")){if(t=a.match(c))a=a.substring(t[0].length),t[0].replace(c,o),s=y}else if(0==a.indexOf("<")&&(t=a.match(b)))a=a.substring(t[0].length),t[0].replace(b,q),s=y;s&&(t=a.indexOf("<"),s=0>t?a:a.substring(0,t),a=0>t?"":a.substring(t),l.ME&&l.ME(s))}else a=a.replace(RegExp("(.*?)</"+u.last()+"[^>]*>"),function(a,b){b=b.replace(/<\!--(.*?)--\>/g,"$1").replace(/<!\[CDATA\[(.*?)]]\>/g,"$1");l.ME&&l.ME(b);return""}),o(0,
u.last());a==v&&h("Parse Error: "+a);v=a}o()}});
define("ej","require,jquery.mod,do,fg,ll,bZ,eO,r,iM".split(","),function(a){var b=a("jquery.mod");a("do");var c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("r"),k=a("iM"),i=c.extend(e,function(a){e.call(this);this.Bd=b(a);this.tD=[];this.Rq=r});i.prototype.fwa=function(a){a&&a.toLowerCase().indexOf("<script")>=0?g.bz()==g.cA?this.sma(a):this.rma(a):this.qma(a)};i.prototype.qma=function(a){this.Bd.empty();a&&this.Bd.append(a);this.X$()};i.prototype.sma=function(a){this.Bd.empty();var c=this.Bd,e=r,d=
[],i=r;new k(a,{start:function(a,d,g){if(a=="script"){for(var g=m,k=0;k<d.length&&g===m;k++){var f=d[k];if(f.name=="src")g=f.value}i={parent:c,previousSibling:e,src:g,content:""}}else{for(var p={},k=0;k<d.length;k++){f=d[k];p[f.name]=f.value}d=b("<"+a+"/>");d.attr(p);c.append(d);if(g)e=d;else{c=d;e=r}}},ME:function(a){i?i.content=i.content+a:c.append(a)},end:function(a){if(a=="script"){d.push(i);i=r}else{e=c;c=c.parent()}}});this.tD=d;this.aJ()};i.prototype.rma=function(a){function e(){i++;return d+
i}this.Bd.empty();var d="fragment_"+c.Jda(6)+"_",i=0,g=e(),f=[g],s=m,u=[],v=r,w="";new k(a,{start:function(a,b,c){if(a=="script"){c=m;for(a=0;a<b.length&&c===m;a++){var d=b[a];if(d.name=="src")c=d.value}v={parentClsName:f[f.length-1],previousSiblingClsName:s,src:c,content:""}}else{w=w+("<"+a);for(var i=e(),g=y,a=0;a<b.length;a++){d=b[a];if(d.name=="class"){d.hY=d.hY+(" "+i);g=n}w=w+(" "+d.name+'="'+d.hY+'"')}g||(w=w+(' class="'+i+'"'));if(c){w=w+"/>";s=i}else{w=w+">";f.push(i);s=m}}},ME:function(a){v?
v.content=v.content+a:w=w+a},end:function(a){if(a=="script"){u.push(v);v=r}else{s=f[f.length-1];f.pop()}}});this.Bd.get(0).innerHTML=w;this.Bd.addClass(g);for(a=0;a<u.length;a++){var x=u[a],z=x.parentClsName;delete x.parentClsName;s=x.previousSiblingClsName;delete x.previousSiblingClsName;x.parent=b("."+z);x.previousSibling=s?b("."+s):r}this.Bd.removeClass(g);this.tD=u;this.aJ()};i.prototype.aJ=function(){if(!this.Rq)if(this.tD.length>0){this.Rq=this.tD[0];this.tD.splice(0,1);var a=this.Rq.src;if(a){var c=
this;i.Vma(a,function(){c.Y5()},function(){c.ana()})}else{var e=this.Rq.parent,a=this.Rq.previousSibling,d;d=a?a.next():e.children(":first");a=document.write;document.write=d.length?function(a){d.before(a)}:function(a){e.append(a)};b.globalEval(this.Rq.content);document.write=a;this.Y5()}}else this.X$()};i.prototype.ana=function(){this.Rq=r;this.aJ()};i.prototype.Y5=function(){this.Rq=r;this.aJ()};i.prototype.X$=function(){this.trigger(new f(d.Ba))};i.W5={};i.Vma=function(a,c,e){i.W5[a]?c.call(window):
b.ajax({url:a,async:y,dataType:"script",error:e,success:function(){i.W5[a]=n;c.call(window)}})};return i});
define("jM",["fg","ll","bZ","eO"],function(a,b,c,d){a=a.extend(d,function(a,b){d.call(this);this.Ama=a;this.W=b;this.tg=r});a.prototype.bind=function(){var a=d.prototype.bind.apply(this,arguments);this.oE();return a};a.prototype.unbind=function(){var a=d.prototype.unbind.apply(this,arguments);this.oE();return a};a.prototype.start=function(){this.W=n;this.oE()};a.prototype.stop=function(){this.W=y;this.oE()};a.prototype.IC=function(){this.trigger(new c(b.dd))};a.prototype.oE=function(){if(this.W&&
this.qca(b.dd)){if(this.tg==r){var a=this;this.tg=setTimeout(function(){a.tg=r;a.IC();a.oE()},this.Ama)}}else this.tg!=r&&(clearTimeout(this.tg),this.tg=r)};return a});
define("iI","require,jquery.mod,do,fg,ll,gr,jY,d,ej,dK,jM".split(","),function(a){var b=a("jquery.mod"),c=a("do"),d=a("fg"),f=a("ll"),e=a("gr"),g=a("jY"),k=a("d"),i=a("ej"),p=a("dK"),a=a("jM"),j=d.extend(k,function(){k.call(this);this.Uc("HTML");this.Nt=j.LG;this.C8=this.D8=0;this.k$=(new Date).getTime();this.PH=this.Fg=r;this.Xw=this.Xw.bind(this);this.LP=[]});j.prototype.za=function(){k.prototype.za.call(this);this.f("content");this.f("horizontalAlign",g.qa);this.f("verticalAlign",g.tc);this.f("fontFamily");
this.f("fontSize");this.f("fontColor");this.f("fontWeight");this.f("fontStyle");this.f("textAlign");this.f("textDecoration");this.f("textShadowBlurRadius",3);this.f("textShadowColor","#000000");this.f("textShadowHorizontalLength",0);this.f("textShadowOpacity",0);this.f("textShadowVerticalLength",0)};j.prototype.Zm=function(a){this.ra&&e.get(this.ra).pxa(this.Xw);k.prototype.Zm.call(this,a);if(this.ra){e.get(this.ra).Kta(this.Xw);e.get(this.ra).ez(this.Xw)}};j.prototype.Fa=function(){k.prototype.Fa.call(this);
if(!this.PH){this.Fg=document.createElement("div");this.PH=b(this.Fg);this.uR({position:"absolute",display:"inline",left:0,top:0,"box-sizing":"border-box"});var a=this.Pa();a.Pz(y);a.append(this.PH);this.q5=new i(this.PH);this.q5.bind(f.Ba,this.gma,this,n);this.bind(f.vb,this.r5,this)}};j.prototype.ja=function(){var a={},b=y;this.n("visible")&&(b=n);if(this.n("content")){this.q5.fwa(this.k("content"));this.q("content");b=n}if(this.n("fontFamily")){b=this.k("fontFamily");c(b).isString()||(b="");a.fontFamily=
p.ys(b);this.q("fontFamily");b=n}if(this.n("fontSize")){b=this.k("fontSize");c(b).isNumber()?b=b+"px":c(b).isString()||(b="");a.fontSize=b;this.q("fontSize");b=n}if(this.n("fontColor")){b=this.k("fontColor");c(b).isString()||(b="");a.color=b;this.q("fontColor");b=n}if(this.n("fontWeight")){b=this.k("fontWeight");switch(b){case "bold":case "bolder":case "lighter":case "100":case "200":case "300":case "400":case "500":case "600":case "700":case "800":case "900":case "normal":break;default:b="normal"}a.fontWeight=
b;this.q("fontWeight");b=n}if(this.n("fontStyle")){b=this.k("fontStyle");switch(b){case "italic":case "normal":break;default:b="normal"}a.fontStyle=b;this.q("fontStyle");b=n}if(this.n("textDecoration")){b=this.k("textDecoration");switch(b){case "underline":case "overline":case "line-through":case "none":break;default:b="none"}a.textDecoration=b;this.q("textDecoration");b=n}if(this.n("textAlign")){b=this.k("textAlign");switch(b){case "left":case "right":case "center":case "justify":break;default:b=
""}a["text-align"]=b;this.q("textAlign");b=n}var e=["textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"];if(c(e).any(function(a){return this.n(a)},this)){var d={};c(e).each(function(a){d[a]=this.k(a);this.q(a)},this);a["-moz-text-shadow"]=a["-webkit-text-shadow"]=a["text-shadow"]=[d.textShadowHorizontalLength+"px",d.textShadowVerticalLength+"px",d.textShadowBlurRadius+"px","rgba("+parseInt("0x"+d.textShadowColor.substr(1,2))+", "+parseInt("0x"+
d.textShadowColor.substr(3,2))+", "+parseInt("0x"+d.textShadowColor.substr(5,2))+", "+d.textShadowOpacity+")"].join(" ");e=d.textShadowVerticalLength==0&&this.k("textShadowHorizontalLength")==0?135:Math.round(4*Math.atan2(d.textShadowHorizontalLength,-d.textShadowVerticalLength)/Math.PI)*45;a.filter="progid:DXImageTransform.Microsoft.Shadow(color=#"+("00"+(255*d.textShadowOpacity).toString(16)).slice(-2)+d.textShadowColor.substr(1,6)+",direction="+e+")"}c(["paddingTop","paddingRight","paddingBottom",
"paddingLeft"]).any(function(a){return this.n(a)},this)&&(b=n);this.uR(a);b&&this.s6();k.prototype.ja.call(this)};j.prototype.s6=function(){this.r5();this.Wa();this.k("visible")&&this.k("content")?this.wD(j.m1):this.wD(j.LG)};j.prototype.hs=function(a){for(var b=a.target;b&&b.tagName!="A"&&b.tagName!="BUTTON";)b=b.parentElement;k.prototype.hs.call(this,a,!b)};j.prototype.To=function(){k.prototype.To.call(this);var a=this.Pa();this.$h=this.Fg.clientWidth+a.qz()+a.sz();this.Zh=this.Fg.clientHeight+
a.tz()+a.mz()};j.prototype.S9=function(a){if(this.sS()!=a){this.Fg.style.paddingLeft=a+"px";this.Wa()}};j.prototype.sS=function(){return parseInt(this.Fg.style.paddingLeft)||0};j.prototype.U9=function(a){if(this.uS()!=a){this.Fg.style.paddingTop=a+"px";this.Wa()}};j.prototype.uS=function(){return parseInt(this.Fg.style.paddingTop)||0};j.prototype.T9=function(a){if(this.tS!=a){this.Fg.style.paddingRight=a+"px";this.Wa()}};j.prototype.tS=function(){return parseInt(this.Fg.style.paddingRight)||0};j.prototype.R9=
function(a){if(this.rS()!=a){this.Fg.style.paddingBottom=a+"px";this.Wa()}};j.prototype.rS=function(){return parseInt(this.Fg.style.paddingBottom)||0};j.prototype.gma=function(){this.LP=Array.prototype.slice.call(this.Fg.querySelectorAll("*[style]")).map(function(a){var b={};b.Cua=a;b.style=a.getAttribute("style");return b}).filter(function(a){return l.test(a.style)}).map(function(a){for(var b=a.style,c=[];;){var e=l.exec(b);if(e){c.push(function(a){return function(){return a}}(b.substr(0,e.index+
1)));c.push(function(a,b){switch(b){case "vw":return function(b){return Math.round(b*a)+"px"};case "vh":return function(b,c){return Math.round(c*a)+"px"};case "vmin":return function(b,c,e){return Math.round(e*a)+"px"};case "vmax":return function(b,c,e){return Math.round(e*a)+"px"}}}(parseFloat(e[1]),e[3].toLowerCase()));b=b.substr(e.index+e[0].length)}else{c.push(function(a){return function(){return a}}(b));a.functions=c;return a}}});this.ra&&e.get(this.ra).ez(this.Xw)};j.prototype.Xw=function(a,
b,c,e){if(this.LP.length!=0){this.LP.forEach(function(d){var i=d.functions.map(function(d){return d(a,b,c,e)}).join("");d.Cua.setAttribute("style",i)});this.s6()}};j.prototype.r5=function(){var a={width:"auto",height:"auto"},b=this.Pa();if(!this.DS()){this.$h!=this.X&&this.Wa();var c=this.X-(b.qz()+b.sz());c>0&&(a.width=c+"px")}if(!this.l5()){this.Zh!=this.ha&&this.Wa();b=this.ha-(b.tz()+b.mz());b>0&&(a.height=b+"px")}this.uR(a)};j.prototype.L6=function(){var a=this.Fg.clientWidth,b=this.Fg.clientHeight;
if(this.D8!=a||this.C8!=b){this.D8=a;this.C8=b;this.Wa();this.wD(j.m1)}else{a=(new Date).getTime()-this.k$;a>j.Fga?this.wD(j.uga):a>j.Ega&&this.wD(j.tga)}};j.prototype.Jpa=function(){this.k$=(new Date).getTime()};j.prototype.wD=function(a){this.Nt==j.Oza&&this.Jpa();if(this.Nt!=a){this.Nt!=j.LG&&j.R2[this.Nt].unbind(f.dd,this.L6,this);this.Nt=a;this.Nt!=j.LG&&j.R2[this.Nt].bind(f.dd,this.L6,this,n)}};j.prototype.uR=function(a){var b=this.Fg.style,c;for(c in a)b[c]=a[c]};var l=/[^\d]((\d*\.)?\d+)\s*(vmin|vmax|vw|vh)/i;
j.LG="stopped";j.uga="slow";j.tga="normal";j.m1="fast";j.Fga=3E4;j.Ega=5E3;j.R2={slow:new a(2E3,n),normal:new a(500,n),fast:new a(100,n)};return j});
define("hR",["fg","iI","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("HTML",a).B("UIComponent").K({content:"string",fontColor:"color",fontFamily:"string",fontSize:"or[number, size]",fontStyle:"enum[italic, normal]",fontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",textAlign:"enum[center, justify, left, right]",textDecoration:"enum[underline, overline, line-through, none]",textShadowBlurRadius:"number",textShadowColor:"color",textShadowHorizontalLength:"number",
textShadowOpacity:"number",textShadowVerticalLength:"number"}).aq(["fontSize"]);return a});define("b",["do","fg","kS","c"],function(a,b,c,d){var f=b.extend(c,function(){c.call(this)});f.nb={layout:d.bG};a.defaults(f.nb,c.nb);f.prototype.za=function(){this.$j(f.nb)};return f});
define("gJ",["fg","fV","b","iI"],function(a,b,c,d){a=a.extend(c,function(){c.call(this);this.ir=r;this.set("contentOpaque",n)});a.prototype.za=function(){c.prototype.za.call(this);this.f("overflow",b.vm);this.f("html")};a.prototype.Fa=function(){c.prototype.Fa.call(this);this.ir==r&&(this.ir=new d,this.ir.M({left:0}),this.la(this.ir))};a.prototype.ja=function(){this.ir.set("width",this.DS()?m:"100%");this.n("html")&&(this.ir.set("content",this.k("html")),this.q("html"));this.hb(["paddingLeft","paddingTop",
"paddingRight","paddingBottom"],{},[this.ir],n,n);this.hb(["cursor"],{},[this.ir],n,y);c.prototype.ja.call(this)};return a});
define("bk",["require","fg","gJ","dW"],function(a){var b=a("fg"),c=a("gJ"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("HTMLText",b).B("UIComponent").K({html:"string",overflow:"enum[scroll, hidden, visible]",scrollBarColor:"color",scrollBarWidth:"number",scrollBarMargin:"number",scrollBarHorizontalMargin:"number",scrollBarVerticalMargin:"number",scrollBarOpacity:"number",scrollBarVisible:"enum[rollOver, always]"});return b});
define("hO","require,jquery.mod,fg,ll,bZ,jt,fF,R,jn,fm,dm,jF".split(","),function(a){function b(a,b,c){return function(e){var d;d=b=="mouse"?this.iu(e):this.vB(e);this.H5(d)?a.call(this,e):c=="release"?a.call(this,e):this.Cka(d,e)}}var c=a("jquery.mod"),d=a("fg"),f=a("ll"),e=a("bZ"),g=a("jt"),k=a("fF"),i=a("R"),p=a("jn"),j=a("fm"),l=a("dm"),q=a("jF"),o=g.ag("debug"),a=d.extend(q,function(){this.Uc("Button");q.call(this,3);this.set("autoRolledOver",n);this.set("autoPressed",n);this.set("cursor",i.me);
this.set("scaleMode",p.Se);this.CQ=document.createElement("canvas");this.CQ.width=1;this.CQ.height=1;this.DQ=this.CQ.getContext("2d");this.DQ.globalCompositeOperation="copy";this.QR=y;this.bind(f.Mb,this.kma,this)});a.prototype.za=function(){q.prototype.za.call(this);this.f("buttonGroup");this.f("mode",l.Wc);this.f("pressed");this.f("iconURL");this.f("transparencyActive");this.h("rollOverOpacity",j.u,"opacity");this.h("rollOverIconURL",j.u,"iconURL");this.h("pressedOpacity",j.Ca,"opacity");this.h("pressedIconURL",
j.Ca,"iconURL");this.h("pressedRollOverOpacity",j.$a,"opacity");this.h("pressedRollOverIconURL",j.$a,"iconURL")};a.prototype.ZR=b(q.prototype.ZR,"touch","capture");a.prototype.p4=b(q.prototype.Gka,"touch");a.prototype.r4=b(q.prototype.Gka,"touch","release");a.prototype.DW=b(q.prototype.DW,"touch","capture");a.prototype.BW=b(q.prototype.BW,"touch");a.prototype.hs=b(q.prototype.hs,"touch","release");a.prototype.RT=b(q.prototype.RT,"mouse","capture");a.prototype.ST=function(a){var b=this.iu(a);if(this.H5(b)||
this.QR){q.prototype.ST.call(this,a);this.set("cursor",i.me)}else{this.QR=n;if(b=this.N4(b)){c(b).trigger(this.f3(a));a.preventDefault();a.stopImmediatePropagation()}this.I4(b)=="pointer"?this.set("cursor",i.me):this.set("cursor",i.dd);this.QR=y}};a.prototype.kma=function(){this.set("cursor",i.me)};a.prototype.nJ=b(q.prototype.nJ,"mouse","release");a.prototype.H5=function(a){if(!this.yb)return y;if(this.get("transparencyActive"))return n;var b=this.yb.offset(),c=a.wda-b.left,e=this.yb.width(),a=a.xda-
b.top,b=this.yb.height();if(c>=0&&a>=0&&c<e&&a<b){if(o)return n;c=c*this.gy/e;e=a*this.fy/b;this.DQ.drawImage(this.yb.get(0),c,e,1,1,0,0,1,1);if(this.DQ.getImageData(0,0,1,1).data[3]>0)return n}return y};a.prototype.Cka=function(a,b){var e=this.N4(a);if(e){c(e).trigger(this.f3(b));b.preventDefault();b.stopImmediatePropagation()}};a.prototype.N4=function(a){var b=this.Co(),c=b.style.pointerEvents;b.style.pointerEvents="none";a=document.elementFromPoint(a.wda,a.xda);setTimeout(function(){b.style.pointerEvents=
c},0);return a};a.prototype.f3=function(a){return c.extend(c.Event(a.type),{originalEvent:a.originalEvent,wheelDelta:a.wheelDelta,detail:a.detail,which:1,clientX:a.clientX,clientY:a.clientY,pageX:a.pageX,pageY:a.pageY,screenX:a.screenX,screenY:a.screenY})};a.prototype.I4=function(a){if(a){var b=a.style.cursor;b=="inherit"&&(b=this.I4(a.parentElement))}else b="default";return b};a.prototype.JA=function(){if(this.get("pressed")){this.set("pressed",y);this.trigger(new e(f.Lh))}else{this.set("pressed",
n);this.trigger(new e(f.Bg))}};a.prototype.ja=function(){var a=y;if(this.n("backgroundOpacityy")||this.n("backgroundColor"))a=n;if(this.n("iconURL")){this.set("url",this.k("iconURL"));this.q("iconURL")}var b=y;if(this.n("mode")){if(this.k("mode")==l.Wc){this.unbind(f.U,this.JA,this,n);this.set("autoPressed",n)}else{this.bind(f.U,this.JA,this,n);this.set("autoPressed",y)}this.q("mode");b=n}if(b||this.n("pressed"))this.k("mode")==l.Mh?this.Fy(this.k("pressed")==n):b&&this.Fy(y);if(this.n("buttonGroup")){(b=
this.k("buttonGroup"))?k.register(this,b):k.ZF(this);this.q("buttonGroup")}q.prototype.ja.call(this);if(a){a=this.Gb();if(a.Fh()==0||a.Rt.length==0){a.Hj(0.001);a.jea(["#000000"])}}};return a});
define("Z",["fg","hO","dW","ll"],function(a,b,c,d){a=a.extend(b,function(){b.call(this)});c.A("IconButton",a).B("UIComponent").K({buttonGroup:"string",iconURL:"string",mode:"enum[push, toggle]",horizontalAlign:"enum[left, center, right]",verticalAlign:"enum[bottom, middle, top]",rollOverIconURL:"string",rollOverOpacity:"number",pressed:"bool",pressedIconURL:"string",pressedOpacity:"number",pressedRollOverIconURL:"string",pressedRollOverOpacity:"number",transparencyActive:"bool"}).fh(["iconURL","rollOverIconURL",
"pressedIconURL"]).Vb([d.Bg,d.Lh]).Cf([d.U]);return a});define("kk",["fg","dW","gs"],function(a,b,c){a=a.extend(c,function(){c.call(this,y)});b.A("IconHotspotMapOverlay",a).B("HotspotMapOverlay");return a});
define("kR",["require","fg","ll","jF","dW"],function(a){var b=a("fg"),c=a("ll"),d=a("jF"),a=a("dW"),b=b.extend(d,function(){d.call(this)});a.A("Image",b).B("UIComponent").K({horizontalAlign:"enum[center, left, right]",scaleMode:"enum[none, fill, fit_inside, fit_outside, fit_to_width, fit_to_height]",url:"string",verticalAlign:"enum[bottom, middle, top]"}).fh(["url"]).Cf([c.U]);return b});
define("gX",["fg","gP","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("Label",a).B("UIComponent").K({fontFamily:"string",fontSize:"or[number, size]",fontColor:"color",fontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",fontStyle:"enum[italic, normal]",horizontalAlign:"enum[left, center, right]",verticalAlign:"enum[top, middle, bottom]",text:"string",textDecoration:"enum[underline, overline, line-through, none]",textShadowBlurRadius:"number",
textShadowColor:"color",textShadowHorizontalLength:"number",textShadowOpacity:"number",textShadowVerticalLength:"number"}).aq(["fontSize"]);return a});define("bu",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("bleaching",0);this.set("bleachingDistance",0.4)});a.A("LensFlarePanoramaOverlay",b).B("PanoramaOverlay").K({yaw:"number",pitch:"number",bleaching:"number",bleachingDistance:"number"});return b});
define("kV",["require","fg","dW","gC"],function(a){var b=a("fg"),c=a("dW"),d=a("gC"),a=b.extend(d,function(){d.call(this)});c.A("LivePanorama",a).B("Panorama").K({frameDisplayTime:"number",frameTransitionTime:"number",initialFrameIndex:"number"});a.prototype.xM=function(){return this.get("initialFrameIndex",0)};return a});
define("ih",["require","do","fg","u"],function(a){var b=a("do"),c=a("fg"),d=a("u");return{cx:[],Rb:function(a,b,c,d){this.T1(a,b,c,d,y)},Jta:function(a,b,c,d){this.T1(a,b,c,d,n)},T1:function(a,e,g,k,i){function p(){for(var b=[],d=0;d<e.length;d++)try{b.push(a.get(e[d]))}catch(i){b.push(m),c.XM("BindingsHandler._addBinding",i)}g.apply(this,b)}b.isArray(e)||(e=[e]);var p=i?c.jm(p,this.ka):p.bind(this.ka),j=[];b.forEach(e,function(b){j.push(d.watch(a,b,p))},this);this.cx.push({Jza:j,host:a,Rp:e,pca:g});
k&&p()},$b:function(a,c,d){var k=b(this.cx).select(function(i){return i.pca==d&&i.host==a&&b.isEqual(i.Rp,c)});b(k).forEach(function(a){b(a.Jza).forEach(function(a){a.unwatch()})});this.cx=b.difference(this.cx,k)},uBa:function(){for(;0<this.cx.length;){var a=b.first(this.cx);this.$b(a.host,a.Rp,a.pca)}}}});
define("cp",["fg","cD"],function(a,b){var c=a.extend(b,function(a,c,e,g,k,i,p){b.call(this,b.a1);this.j=a;this.Nd=c;this.X=e;this.ha=g;this.Ed=k;this.PR=i;this.nk=p.slice()});c.prototype.Gn=function(){for(var a=[this.Nd],b=0;b<this.nk.length;b++)a=a.concat(this.nk[b].Gn());return a};c.prototype.Bj=Q("Nd");c.prototype.ad=Q("X");c.prototype.Od=Q("ha");return c});
define("kh","require,do,fg,ih,dW,jn,du,eH,cp".split(","),function(a){var b=a("do"),c=a("fg");a("ih");var d=a("dW"),f=a("jn"),e=a("du"),g=a("eH"),k=a("cp"),a=c.extend(e,function(){e.call(this);this.Qo=this.oK=m});d.A("Map",a).B("Media").K({fieldOfViewOverlayInsideColor:"color",fieldOfViewOverlayInsideOpacity:"number",fieldOfViewOverlayOutsideColor:"color",fieldOfViewOverlayOutsideOpacity:"number",fieldOfViewOverlayRadiusScale:"number",flipImageHorizontally:"bool",height:"number",image:"ImageResource",
initialZoomFactor:"number",maximumZoomFactor:"number",minimumZoomFactor:"number",overlays:"array[MapOverlay]",scaleMode:"enum[none, fit_inside, fit_outside, fit_to_width, fit_to_height]",width:"number"});a.prototype.Bxa=function(){this.Qo=this.oK=m};a.prototype.vz=function(){return!(!this.get("image")||!g.vz(this.get("image")))};a.prototype.Rv=function(){return this.get("image")&&g.Rv(this.get("image"))};a.prototype.fm=function(){return this.get("image")&&g.fm(this.get("image"))};a.prototype.cca=
function(){if(this.oK==m)this.oK=this.vz()?new k(this,this.Rv().get("url"),this.get("width"),this.get("height"),this.get("scaleMode",f.Ys),this.get("flipImageHorizontally",y),[]):r;return this.oK};a.prototype.$g=function(){if(this.Qo==m)if(this.get("image")){var a=Array.prototype.concat.apply([],b(this.get("overlays",[])).map(function(a){return a.ova()}));this.Qo=new k(this,this.fm().get("url"),this.get("width"),this.get("height"),this.get("scaleMode",f.Ys),this.get("flipImageHorizontally",y),a)}else this.Qo=
r;return this.Qo};a.prototype.En=function(){return[].concat(this.nI(this.cca()),this.nI(this.$g()))};a.prototype.nI=function(a){return a?a.Gn():[]};return a});define("ix",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("MapOverlay",a).B("Object");return a});
define("jT","require,fg,do,ll,bZ,eO,dm,fm".split(","),function(a){var b=a("fg"),c=a("do"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("dm"),k=a("fm"),a=b.extend(e,function(a,b,c){e.call(this);this.i3=a;this.bpa=b;this.v2=c||g.Wc;this.gg=[];this.Kt=[];this.Eq={};this.Eq.mode=this.v2;this.v2==g.Mh&&(this.Eq.pressed=y);this.i3.bind(d.D(b),this.O8,this);this.O8()});a.prototype.O8=function(){var a=this.i3.get(this.bpa);a||(a=[]);c.isArray(a)||(a=[a]);this.oqa(a)};a.prototype.oqa=function(a){var b=c.difference(this.gg,
a);c(b).each(function(a){a.unbind(d.Bg,this.B2,this,n);a.unbind(d.Lh,this.C2,this,n);a.unbind(d.U,this.u2,this,n);a.unbind(d.Eb,this.w2,this,n);a.unbind(d.ec,this.x2,this,n);a.unbind(d.wc,this.E2,this,n);a.unbind(d.Mb,this.D2,this,n)},this);b=c.difference(a,this.gg);c(b).each(function(a){a.M(this.Eq);a.bind(d.Bg,this.B2,this,n);a.bind(d.Lh,this.C2,this,n);a.bind(d.U,this.u2,this,n);a.bind(d.Eb,this.w2,this,n);a.bind(d.ec,this.x2,this,n);a.bind(d.wc,this.E2,this,n);a.bind(d.Mb,this.D2,this,n)},this);
this.gg=a;this.Kt=this.Kt.filter(function(a){return this.gg.indexOf(a)>=0}.bind(this))};a.prototype.B2=function(){this.trigger(new f(d.Bg))};a.prototype.C2=function(){this.trigger(new f(d.Lh))};a.prototype.u2=function(){this.trigger(new f(d.U))};a.prototype.w2=function(){this.trigger(new f(d.Eb))};a.prototype.x2=function(){this.trigger(new f(d.ec))};a.prototype.E2=function(a){this.Kt.push(a.source);this.vg()};a.prototype.D2=function(a){this.Kt=this.Kt.filter(function(b){return b!=a.source});this.vg()};
a.prototype.set=function(a,b){this.Eq[a]=b;this.gg.forEach(function(a){a.M(this.Eq)}.bind(this));this.vg()};a.prototype.vg=function(){this.gg.forEach(function(a){a.get("state")==k.Ca&&this.Kt.indexOf(a)>=0?a.set("state",k.$a):a.get("state")==k.$a&&this.Kt.indexOf(a)<0&&a.set("state",k.Ca)}.bind(this))};return a});
define("eT","require,do,fg,ll,bZ,fm,R,b,d,ks,kF".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("fm"),g=a("R"),k=a("b"),i=a("d");a("ks");a("kF");var p=c.extend(k,function(){k.call(this);this.Uc("PlaybackBar");this.hi=this.Wd=r;this.Le=[];this.lK=y;this.LU=this.Tu=m;this.jW=y});p.nb={cursor:g.me,overflow:"visible",height:20,position:0,duration:100,steps:m,selectedStep:m,backgroundColor:"#000000",barBackgroundColor:"#FFFFFF",barBackgroundColorDirection:m,barBackgroundColorRatios:m,
barBorderColor:m,barBorderRadius:m,barBorderSize:m,barOpacity:m,liveDragging:m,playheadBackgroundColor:"#FFFFFF",playheadBackgroundColorDirection:m,playheadBackgroundColorRatios:m,playheadBorderColor:m,playheadBorderRadius:m,playheadBorderSize:m,playheadOpacity:m,playheadWidth:5,playheadHeight:30,playheadShadow:n,playheadShadowBlurRadius:3,playheadShadowColor:"#000000",playheadShadowHorizontalLength:0,playheadShadowOpacity:m,playheadShadowSpread:0,playheadShadowVerticalLength:3,stepBackgroundColor:"#FFFFFF",
stepBackgroundColorDirection:m,stepBackgroundColorRatios:m,stepBorderColor:m,stepBorderRadius:6,stepBorderSize:0,stepOpacity:1,stepWidth:12,stepHeight:12,stepShadow:n,stepShadowBlurRadius:6,stepShadowColor:"#000000",stepShadowHorizontalLength:0,stepShadowOpacity:m,stepShadowSpread:0,stepShadowVerticalLength:0,selectedStepBackgroundColor:"#3399FF",selectedStepBackgroundColorDirection:m,selectedStepBackgroundColorRatios:m,selectedStepBorderColor:"#ffffff",selectedStepBorderRadius:10,selectedStepBorderSize:2,
selectedStepOpacity:1,selectedStepWidth:20,selectedStepHeight:20,selectedStepShadow:n,selectedStepShadowBlurRadius:3,selectedStepShadowColor:"#000000",selectedStepShadowHorizontalLength:0,selectedStepShadowOpacity:m,selectedStepShadowSpread:0,selectedStepShadowVerticalLength:0};b.defaults(p.nb,k.nb);p.prototype.za=function(){this.$j(p.nb)};p.prototype.Fa=function(){k.prototype.Fa.call(this);(!this.Wd||!this.hi)&&this.bind(d.vb,this.Qoa,this,n);if(this.Wd==r){this.Wd=new i;this.Wd.M({left:"0",height:"100%",
cursor:g.me});this.la(this.Wd)}if(this.hi==r){this.hi=new i;this.hi.M({left:"0",cursor:g.me});this.hi.bind(d.vb,this.Toa,this,n);this.hi.bind(d.Eb,this.Roa,this,n);this.Ra().bind(d.Nc,this.v8,this,n);this.bind(d.U,this.Ooa,this,n);this.hi.bind(d.ec,this.Soa,this,n);this.la(this.hi)}var a=this.get("steps")||0;if(this.Le.length!=a){for(;this.Le.length>a;)this.Jja(this.Le.pop());for(;this.Le.length<a;)this.Le.push(this.Aja());this.hb(p.J1,p.vP,this.Le,y,n);this.Caa();this.fX();this.Fj(this.hi,this.Oa().length-
1)}};p.prototype.Aja=function(){var a=new j;a.M({cursor:g.me});a.bind(d.U,this.r$,this,n);a.bind(d.vb,this.s$,this,n);this.la(a);return a};p.prototype.Jja=function(a){a.unbind(d.U,this.r$,this,n);a.unbind(d.vb,this.s$,this,n);this.removeChild(a)};p.prototype.ja=function(){var a=y;if(this.n("position")||this.n("duration")){this.q("position");this.q("duration");a=n}if(this.n("selectedStep")){this.q("selectedStep");this.Caa()}if(this.n("steps")){this.q("steps");this.hF()}this.hb(p.oP,p.pA,[this.Wd],
n,n);this.hb(p.Bga,p.F1,[this.hi],n,n);this.hb(p.J1,p.vP,this.Le,n,n);k.prototype.ja.call(this);a&&this.EL()};p.prototype.Caa=function(){var a=this.get("selectedStep");this.Le.forEach(function(b,c){b.QF(c===a)});this.hi.set("visible",a===m)};p.prototype.EL=function(){var a=this.Aa(),b=this.hi.Aa(),c=this.hi.eb(),e=this.$q(),d=this.sB(),i=d*a/e,a=Math.round((this.lK?this.Tu:d)*a/e-b*0.5),a=Math.max(0,Math.min(a,this.Hd()-b)),b=Math.round(this.Gd()*0.5-c*0.5);this.hi.M({left:a,top:b});this.Wd.set("width",
Math.round(i))};p.prototype.Toa=function(){this.EL()};p.prototype.Roa=function(a){this.lK=n;this.LU=a.pageX;this.Tu=this.k("position")};p.prototype.v8=function(a){if(this.lK){var b=a.pageX-this.LU;this.LU=a.pageX;var a=this.Aa(),c=this.$q();this.Tu=Math.max(0,Math.min(c,this.Tu+c*b/a));this.EL();if(this.get("liveDragging")){this.set("position",this.Tu);this.trigger(new f(d.aa))}}};p.prototype.Soa=function(a){this.v8(a);this.lK=y;if(!this.get("liveDragging")){this.set("position",this.Tu);this.trigger(new f(d.aa))}this.Tu=
m};p.prototype.Ooa=function(a){if(!this.jW){var b=this.Aa();this.set("position",this.$q()*a.x/b);this.trigger(new f(d.aa))}};p.prototype.s$=function(){this.fX()};p.prototype.Qoa=function(){this.fX();this.EL()};p.prototype.fX=function(){for(var a=this.Aa(),b=this.eb(),c=this.da,e=this.getParent().Aa()-(c+a),d=0,i=this.Le.length;d<i;d++){var g=this.Le[d],k=g.Aa();g.M({left:d==0&&c==0?0:d==i-1&&e==0?a-k:Math.round(a*d/(i-1)-k*0.5),top:Math.round(b*0.5-g.eb()*0.5)})}};p.prototype.r$=function(a){a=this.Le.indexOf(a.source);
this.set("position",this.$q()*a/(this.Le.length-1));this.jW=n;this.trigger(new f(d.aa));setTimeout(function(){this.jW=y}.bind(this),0)};p.prototype.$q=function(){var a=this.k("duration");return!a?1:a};p.prototype.sB=function(){return Math.max(0,Math.min(this.$q(),this.k("position")))};p.pA={barBackgroundColor:"backgroundColor",barBackgroundColorDirection:"backgroundColorDirection",barBackgroundColorRatios:"backgroundColorRatios",barBorderColor:"borderColor",barBorderRadius:"borderRadius",barBorderSize:"borderSize",
barOpacity:"opacity"};p.oP=b(p.pA).keys();p.F1={playheadBackgroundColor:"backgroundColor",playheadBackgroundColorDirection:"backgroundColorDirection",playheadBackgroundColorRatios:"backgroundColorRatios",playheadBorderColor:"borderColor",playheadBorderRadius:"borderRadius",playheadBorderSize:"borderSize",playheadOpacity:"opacity",playheadWidth:"width",playheadHeight:"height",playheadShadow:"shadow",playheadShadowBlurRadius:"shadowBlurRadius",playheadShadowColor:"shadowColor",playheadShadowHorizontalLength:"shadowHorizontalLength",
playheadShadowOpacity:"shadowOpacity",playheadShadowSpread:"shadowSpread",playheadShadowVerticalLength:"shadowVerticalLength"};p.Bga=b(p.F1).keys();p.vP={stepBackgroundColor:"backgroundColor",stepBackgroundColorDirection:"backgroundColorDirection",stepBackgroundColorRatios:"backgroundColorRatios",stepBorderColor:"borderColor",stepBorderRadius:"borderRadius",stepBorderSize:"borderSize",stepOpacity:"opacity",stepWidth:"width",stepHeight:"height",stepShadow:"shadow",stepShadowBlurRadius:"shadowBlurRadius",
stepShadowColor:"shadowColor",stepShadowHorizontalLength:"shadowHorizontalLength",stepShadowOpacity:"shadowOpacity",stepShadowSpread:"shadowSpread",stepShadowVerticalLength:"shadowVerticalLength",selectedStepBackgroundColor:"selectedBackgroundColor",selectedStepBackgroundColorDirection:"selectedBackgroundColorDirection",selectedStepBackgroundColorRatios:"selectedBackgroundColorRatios",selectedStepBorderColor:"selectedBorderColor",selectedStepBorderRadius:"selectedBorderRadius",selectedStepBorderSize:"selectedBorderSize",
selectedStepOpacity:"selectedOpacity",selectedStepWidth:"selectedWidth",selectedStepHeight:"selectedHeight",selectedStepShadow:"selectedShadow",selectedStepShadowBlurRadius:"selectedShadowBlurRadius",selectedStepShadowColor:"selectedShadowColor",selectedStepShadowHorizontalLength:"selectedShadowHorizontalLength",selectedStepShadowOpacity:"selectedShadowOpacity",selectedStepShadowSpread:"selectedShadowSpread",selectedStepShadowVerticalLength:"selectedShadowVerticalLength"};p.J1=b(p.vP).keys();var j=
c.extend(i,function(){i.call(this)});j.prototype.QF=function(a){this.zD(a)};j.prototype.za=function(){i.prototype.za.call(this);this.f("backgroundColor");this.f("backgroundColorDirection");this.f("backgroundColorRatios");this.f("borderColor");this.f("borderRadius");this.f("borderSize");this.f("opacity");this.f("width");this.f("height");this.f("shadow");this.f("shadowBlurRadius");this.f("shadowColor");this.f("shadowHorizontalLength");this.f("shadowOpacity");this.f("shadowSpread");this.f("shadowVerticalLength");
this.h("selectedBackgroundColor",e.G,"backgroundColor");this.h("selectedBackgroundColorDirection",e.G,"backgroundColorDirection");this.h("selectedBackgroundColorRatios",e.G,"backgroundColorRatios");this.h("selectedBorderColor",e.G,"borderColor");this.h("selectedBorderRadius",e.G,"borderRadius");this.h("selectedBorderSize",e.G,"borderSize");this.h("selectedOpacity",e.G,"opacity");this.h("selectedWidth",e.G,"width");this.h("selectedHeight",e.G,"height");this.h("selectedShadow",e.G,"shadow");this.h("selectedShadowBlurRadius",
e.G,"shadowBlurRadius");this.h("selectedShadowColor",e.G,"shadowColor");this.h("selectedShadowHorizontalLength",e.G,"shadowHorizontalLength");this.h("selectedShadowOpacity",e.G,"shadowOpacity");this.h("selectedShadowSpread",e.G,"shadowSpread");this.h("selectedShadowVerticalLength",e.G,"shadowVerticalLength")};j.prototype.ja=function(){i.prototype.ja.call(this)};return p});
define("cr",["do","fg","b","d"],function(a,b,c,d){var f=b.extend(c,function(){c.call(this);this.Uc("ProgressBar")});f.nb={percent:0,backgroundColor:"#000000",barBackgroundColor:"#FFFFFF",barBackgroundColorDirection:m,barBackgroundColorRatios:m,barBorderColor:m,barBorderRadius:m,barBorderSize:m,barOpacity:m};a.defaults(f.nb,c.nb);f.prototype.za=function(){this.$j(f.nb)};f.prototype.Fa=function(){c.prototype.Fa.call(this);this.Wd==r&&(this.Wd=new d,this.Wd.M({left:"0",width:"0%",height:"100%"}),this.la(this.Wd))};
f.prototype.ja=function(){this.n("percent")&&(this.Wd.set("width",Math.round(this.k("percent"))+"%"),this.q("percent"));this.hb(f.oP,f.pA,[this.Wd],n,n);c.prototype.ja.call(this)};f.pA={barBackgroundColor:"backgroundColor",barBackgroundColorDirection:"backgroundColorDirection",barBackgroundColorRatios:"backgroundColorRatios",barBorderColor:"borderColor",barBorderRadius:"borderRadius",barBorderSize:"borderSize",barOpacity:"opacity"};f.oP=a(f.pA).keys();return f});
define("ku",["require"],function(){var a=Math.PI/180,b=180/Math.PI;return{create:function(){return{x:0,y:0,z:0,w:0}},Hba:function(b,d,f){var d=d*a,b=-b*a,e=f*a,f=Math.cos(b/2),b=Math.sin(b/2),g=Math.cos(e/2),e=Math.sin(e/2),k=Math.cos(d/2),d=Math.sin(d/2),i={};i.w=f*g*k-b*e*d;i.x=f*g*d+b*e*k;i.y=b*g*k+f*e*d;i.z=f*e*k-b*g*d;return i},j_:function(a){var d=a.x*a.y+a.z*a.w,f={};if(0.499<d)f.ma=-2*Math.atan2(a.x,a.w),f.md=-Math.PI/2,f.pitch=0;else if(-0.499>d)f.ma=2*Math.atan2(a.x,a.w),f.md=Math.PI/2,
f.pitch=0;else{var e=a.x*a.x,g=a.z*a.z;f.ma=-Math.atan2(2*a.y*a.w-2*a.x*a.z,1-2*a.y*a.y-2*g);f.md=-Math.asin(2*d);f.pitch=Math.atan2(2*a.x*a.w-2*a.y*a.z,1-2*e-2*g);f.pitch=Math.min(Math.PI/2,Math.max(-Math.PI/2,f.pitch))}f.ma*=b;f.pitch*=b;f.md*=-b;return f},ma:function(a){var d=a.x*a.y+a.z*a.w;return 0.499<d?-2*Math.atan2(a.x,a.w)*b:-0.499>d?2*Math.atan2(a.x,a.w)*b:-Math.atan2(2*a.y*a.w-2*a.x*a.z,1-2*a.y*a.y-2*a.z*a.z)*b}}});
define("kD",["require"],function(){var a={};a.degToRad=Math.PI/180;a.radToDeg=180/Math.PI;a.Vector2=function(a,c){this.x=a||0;this.y=c||0};a.Vector2.prototype={constructor:a.Vector2,set:function(a,c){this.x=a;this.y=c;return this},copy:function(a){this.x=a.x;this.y=a.y;return this}};a.Vector3=function(a,c,d){this.x=a||0;this.y=c||0;this.z=d||0};a.Vector3.prototype={constructor:a.Vector3,set:function(a,c,d){this.x=a;this.y=c;this.z=d;return this},copy:function(a){this.x=a.x;this.y=a.y;this.z=a.z;return this},
length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},normalize:function(){var a=this.length();0!==a?this.tda(1/a):this.z=this.y=this.x=0;return this},tda:function(a){this.x*=a;this.y*=a;this.z*=a},applyQuaternion:function(a){var c=this.x,d=this.y,f=this.z,e=a.x,g=a.y,k=a.z,a=a.w,i=a*c+g*f-k*d,p=a*d+k*c-e*f,j=a*f+e*d-g*c,c=-e*c-g*d-k*f;this.x=i*a+c*-e+p*-k-j*-g;this.y=p*a+c*-g+j*-e-i*-k;this.z=j*a+c*-k+i*-g-p*-e;return this},zua:function(a){return this.x*a.x+this.y*a.y+this.z*
a.z},vua:function(a,c){var d=a.x,f=a.y,e=a.z,g=c.x,k=c.y,i=c.z;this.x=f*i-e*k;this.y=e*g-d*i;this.z=d*k-f*g;return this}};a.Quaternion=function(a,c,d,f){this.x=a||0;this.y=c||0;this.z=d||0;this.w=f!==m?f:1};a.Quaternion.prototype={constructor:a.Quaternion,set:function(a,c,d,f){this.x=a;this.y=c;this.z=d;this.w=f;return this},copy:function(a){this.x=a.x;this.y=a.y;this.z=a.z;this.w=a.w;return this},lea:function(a,c,d){var f=Math.cos(a/2),e=Math.cos(c/2),g=Math.cos(d/2),a=Math.sin(a/2),c=Math.sin(c/
2),d=Math.sin(d/2);this.x=a*e*g+f*c*d;this.y=f*c*g-a*e*d;this.z=f*e*d-a*c*g;this.w=f*e*g+a*c*d;return this},setFromAxisAngle:function(a,c){var d=c/2,f=Math.sin(d);this.x=a.x*f;this.y=a.y*f;this.z=a.z*f;this.w=Math.cos(d);return this},multiply:function(a){return this.sda(this,a)},sda:function(a,c){var d=a.x,f=a.y,e=a.z,g=a.w,k=c.x,i=c.y,p=c.z,j=c.w;this.x=d*j+g*k+f*p-e*i;this.y=f*j+g*i+e*k-d*p;this.z=e*j+g*p+d*i-f*k;this.w=g*j-d*k-f*i-e*p;return this},inverse:function(){this.x*=-1;this.y*=-1;this.z*=
-1;this.normalize();return this},normalize:function(){var a=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);0===a?(this.z=this.y=this.x=0,this.w=1):(a=1/a,this.x*=a,this.y*=a,this.z*=a,this.w*=a);return this},dza:function(a,c){if(0===c)return this;if(1===c)return this.copy(a);var d=this.x,f=this.y,e=this.z,g=this.w,k=g*a.w+d*a.x+f*a.y+e*a.z;0>k?(this.w=-a.w,this.x=-a.x,this.y=-a.y,this.z=-a.z,k=-k):this.copy(a);if(1<=k)return this.w=g,this.x=d,this.y=f,this.z=e,this;var i=Math.acos(k),
p=Math.sqrt(1-k*k);if(0.001>Math.abs(p))return this.w=0.5*(g+this.w),this.x=0.5*(d+this.x),this.y=0.5*(f+this.y),this.z=0.5*(e+this.z),this;k=Math.sin((1-c)*i)/p;i=Math.sin(c*i)/p;this.w=g*k+this.w*i;this.x=d*k+this.x*i;this.y=f*k+this.y*i;this.z=e*k+this.z*i;return this},mea:function(){var b,c;return function(d,f){b===m&&(b=new a.Vector3);c=d.zua(f)+1;1.0E-6>c?(c=0,Math.abs(d.x)>Math.abs(d.z)?b.set(-d.y,d.x,0):b.set(0,-d.z,d.y)):b.vua(d,f);this.x=b.x;this.y=b.y;this.z=b.z;this.w=c;this.normalize();
return this}}()};return a});
define("ef",["require","ll","bZ","eO","kD"],function(a){function b(){p||(p=n,o=new i.Vector3(0,0,1),t=new i.Quaternion,s=new i.Quaternion(-Math.sqrt(0.5),0,0,Math.sqrt(0.5)),u=new i.Quaternion,d(),window.addEventListener("orientationchange",d,y),window.addEventListener("deviceorientation",f,y),c())}function c(){if(v&&!(l===m||q===m)){v=y;var a=i.degToRad*q;u.lea(i.degToRad*l.beta,i.degToRad*l.alpha,-(i.degToRad*l.gamma));u.multiply(s);u.multiply(t.setFromAxisAngle(o,-a));w||(x++,5<=x&&(w=n,j.trigger(new g(e.Ib))));
j.trigger(new g(e.aa))}}function d(){q=window.orientation||0;v=n;c()}function f(a){l=a;v=n;c()}var e=a("ll"),g=a("bZ"),k=a("eO"),i=a("kD"),p=y,j=new k,l,q,o,t,s,u,v,w=y,x=0;b.prototype.Bn=function(){c();return u};b.prototype.bind=function(){j.bind.apply(j,arguments)};b.prototype.unbind=function(){j.unbind.apply(j,arguments)};b.prototype.stop=function(){window.removeEventListener("orientationchange",d,y);window.removeEventListener("deviceorientation",f,y)};return b});
define("gO","require,ll,bZ,eO,r,kD".split(","),function(a){function b(a){this.Awa=a;this.cY=new f;this.iM=new f;this.sZ=new f;this.Kv=new p.Quaternion;this.rZ=new p.Quaternion;this.$aa=new p.Quaternion;this.Zca=y;this.lM=new p.Vector3;this.fZ=new p.Vector3;this.Jva=new p.Quaternion}function c(){this.pda=y;this.oda=0;this.JE=new p.Vector3;this.EM=new p.Vector3;this.filter=new b(l);this.dxa=new d(q);this.yz=o.yz();this.Dj=o.Dj();o.oY();this.$Y=o.jwa();this.nM=new p.Quaternion;o.Dj()?this.nM.setFromAxisAngle(new p.Vector3(1,
0,0),Math.PI/2):this.nM.setFromAxisAngle(new p.Vector3(1,0,0),-Math.PI/2);this.RY=new p.Quaternion;this.Wz=new p.Quaternion;this.Twa=new p.Quaternion;this.Twa.setFromAxisAngle(new p.Vector3(0,0,1),-window.orientation*Math.PI/180);this.yea();o.owa()&&this.nM.multiply(this.RY);this.Sda=new p.Quaternion;this.yz=o.yz();this.Dj=o.Dj();this.iwa=o.oY()>=66;this.bw=this.bw.bind(this);this.uF=this.uF.bind(this);this.tF=this.tF.bind(this);screen&&screen.orientation&&screen.orientation.addEventListener?screen.orientation.addEventListener("change",
this.bw):window.addEventListener("orientationchange",this.bw);this.$Y?window.addEventListener("deviceorientation",this.uF):window.addEventListener("devicemotion",this.tF)}function d(a){this.exa=a;this.eN=new p.Quaternion;this.Jz=r;this.xba=new p.Quaternion;this.wF=new p.Quaternion}function f(a,b){this.set(a,b)}var e=a("ll"),g=a("bZ"),k=a("eO"),i=a("r"),p=a("kD"),j=new k,l=0.98,q=0.04;b.prototype.Ita=function(a,b){this.cY.set(a,b)};b.prototype.Mta=function(a,b){this.iM.set(a,b);o.xwa(b-this.sZ.AN)&&
this.Cxa();this.sZ.copy(this.iM)};b.prototype.Cxa=function(){if(this.Zca){var a=this.Kva(this.iM.sample,this.iM.AN-this.sZ.AN);this.Jva.multiply(a);this.Kv.copy(this.rZ);this.Kv.multiply(a);a=new p.Quaternion;a.copy(this.Kv);a.inverse();this.lM.set(0,0,-1);this.lM.applyQuaternion(a);this.lM.normalize();this.fZ.copy(this.cY.sample);this.fZ.normalize();a=new p.Quaternion;a.mea(this.lM,this.fZ);a.inverse();var b=new p.Quaternion;b.copy(this.Kv);b.multiply(a);this.Kv.dza(b,1-this.Awa);this.rZ.copy(this.Kv)}else{this.$aa=
this.Hta(this.cY.sample);this.rZ.copy(this.$aa);this.Zca=n}};b.prototype.Bn=Q("Kv");b.prototype.Hta=function(a){var b=new p.Vector3;b.copy(a);b.normalize();a=new p.Quaternion;a.mea(new p.Vector3(0,0,-1),b);a.inverse();return a};b.prototype.Kva=function(a,b){var c=new p.Quaternion,e=new p.Vector3;e.copy(a);e.normalize();c.setFromAxisAngle(e,a.length()*b);return c};c.prototype.stop=function(){screen&&screen.orientation&&screen.orientation.addEventListener&&screen.orientation.removeEventListener("change",
this.bw);window.removeEventListener("orientationchange",this.bw);window.removeEventListener("deviceorientation",this.uF);window.removeEventListener("devicemotion",this.tF)};c.prototype.Ds=R(r);c.prototype.Bn=function(){var a=m;if(this.$Y&&this.MH){this.zba=this.zba||function(){var a=(new p.Quaternion).setFromAxisAngle(new p.Vector3(0,0,-1),0),b=new p.Quaternion;this.MK=="landscape-secondary"?b.setFromAxisAngle(new p.Vector3(0,1,0),Math.PI/-2):b.setFromAxisAngle(new p.Vector3(0,1,0),Math.PI/2);return a.multiply(b)}();
this.yba=this.yba||function(){var a=new p.Quaternion;a.setFromAxisAngle(new p.Vector3(1,0,0),-Math.PI/2);return a}();var a=this.MH,b=new p.Quaternion;b.copy(a);b.multiply(this.yba);b.multiply(this.Sda);b.multiply(this.Wz);b.sda(this.zba,b);if(this.JBa){b.x=0;b.z=0;b.normalize()}this.bN[0]=b.x;this.bN[1]=b.y;this.bN[2]=b.z;this.bN[3]=b.w;return this.bN}a=this.dxa.yva(this.filter.Bn(),this.EM,this.Jz);b=new p.Quaternion;b.copy(this.nM);b.multiply(this.Sda);b.multiply(a);b.multiply(this.Wz);return b};
c.prototype.uF=function(a){this.MH=this.MH||new p.Quaternion;var b=a.alpha,c=a.EAa,a=a.UAa,b=(b||0)*Math.PI/180,c=(c||0)*Math.PI/180,a=(a||0)*Math.PI/180;this.MH.lea(c,b,-a)};c.prototype.tF=function(a){var b=a.rotationRate;if(b){var c=a.accelerationIncludingGravity,a=a.timeStamp/1E3;this.yz&&(a=a/1E3);var d=a-this.Jz;if(d<=o.d0||d>o.b0)this.Jz=a;else{this.JE.set(-c.x,-c.y,-c.z);this.EM.set(b.alpha,b.beta,b.gamma);(this.Dj||this.yz||this.iwa)&&this.EM.tda(Math.PI/180);this.filter.Ita(this.JE,a);this.filter.Mta(this.EM,
a);this.Jz=a;if(!this.pda){this.oda++;if(this.oda>=5){this.pda=n;j.trigger(new g(e.Ib))}}this.MK!=this.Kba()&&this.bw();j.trigger(new g(e.aa))}}else{this.$Y=n;window.addEventListener("deviceorientation",this.uF);window.removeEventListener("devicemotion",this.tF)}};c.prototype.bind=function(){j.bind.apply(j,arguments)};c.prototype.unbind=function(){j.unbind.apply(j,arguments)};c.prototype.bw=function(){this.yea();j.trigger(new g(e.aa))};c.prototype.yea=function(){this.Wz.set(0,0,0,1);this.MK=this.Kba();
switch(this.MK){case "landscape-primary":this.Wz.setFromAxisAngle(new p.Vector3(0,0,1),-Math.PI/2);break;case "landscape-secondary":this.Wz.setFromAxisAngle(new p.Vector3(0,0,1),Math.PI/2)}this.RY.copy(this.Wz);this.RY.inverse()};c.prototype.Kba=function(){var a=screen.orientation&&screen.orientation.type;if(!a)switch(window.orientation){case 0:a="portrait-primary";break;case 90:a="landscape-primary";break;case -90:a="landscape-secondary";break;case 180:a="portrait-secondary"}a=="landscape-primary"&&
(this.JE.z>4.9||this.JE.z<-4.9?a=this.MK||a:this.JE.x>0&&(a="landscape-secondary"));return a};d.prototype.yva=function(a,b,c){if(!this.Jz){this.eN.copy(a);this.Jz=c;return a}c=new p.Vector3;c.copy(b);c.normalize();b=b.length();if(b<p.degToRad*20){this.wF.copy(a);this.eN.copy(a);return this.wF}this.xba.setFromAxisAngle(c,b*this.exa);this.wF.copy(this.eN);this.wF.multiply(this.xba);this.eN.copy(a);return this.wF};f.prototype.set=function(a,b){this.sample=a;this.AN=b};f.prototype.copy=function(a){this.set(a.sample,
a.AN)};var o={d0:0.001,b0:1,xwa:function(a){return isNaN(a)||a<=o.d0||a>o.b0?y:n}};o.Dj=function(){var a=/iPad|iPhone|iPod/.test(navigator.platform);return function(){return a}}();o.fBa=function(){var a=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);return function(){return a}}();o.yz=function(){var a=navigator.userAgent.indexOf("Firefox")!==-1&&navigator.userAgent.indexOf("Android")!==-1;return function(){return a}}();o.oY=function(){var a=navigator.userAgent.match(/.*Chrome\/([0-9]+)/),
b=a?parseInt(a[1],10):r;return function(){return b}}();o.jwa=function(){var a=y;if(o.oY()===65){var b=navigator.userAgent.match(/.*Chrome\/([0-9\.]*)/);if(b)var b=b[1].split("."),c=b[3],a=parseInt(b[2],10)===3325&&parseInt(c,10)<148}else"getVRDisplays"in navigator&&i.browser()==i.Di&&i.WE()&&i.Jc()==i.gG&&(a=n);return function(){return a}}();o.owa=function(){return window.orientation==90||window.orientation==-90};return c});
define("fT","require,fg,ll,bZ,eO,ku,r,ef,gO,jt".split(","),function(a){function b(){function a(){q=n;j.trigger(new d(c.aa))}function b(){var d;u&&(e||!l)?d=t:l&&(d=f);if(o!=d){if(o){o.unbind(c.aa,a);o.stop()}if(o=d){o.bind(c.aa,a,this,n);a()}}}var e=g.Zd()==g.Qj||p.ag("debug")&&p.Fn("sensor")=="deviceorientation",f=new i,l=y;f.bind(c.Ib,function(){l=n;b()},this,n);var t=new k,u=y;t.bind(c.Ib,function(){u=n;b()},this,n)}a("fg");var c=a("ll"),d=a("bZ"),f=a("eO"),e=a("ku"),g=a("r"),k=a("ef"),i=a("gO"),
p=a("jt"),j=new f,l={},q=y,o,t=[],s=y,u=y;l.wZ=function(a){a&&t.push(a);if(l.disabled){if(g.Zd()==g.Qj&&window.DeviceMotionEvent&&DeviceMotionEvent.requestPermission){DeviceOrientationEvent.requestPermission().then(function(a){if(a==="granted"){u=n;c()}});DeviceMotionEvent.requestPermission().then(function(a){if(a==="granted"){s=n;c()}});var c=function(){if(l.disabled&&s&&u){l.disabled=y;for(b();t.length;)t.pop()()}};c()}}else for(;t.length;)t.pop()()};l.bind=function(a,b){j.bind(c.aa,a,b)};l.unbind=
function(a,b){j.unbind(c.aa,a,b)};l.Swa=function(){return q};l.Bn=function(){q=y;if(o){var a=o.Bn(),a=e.j_(a);return{yaw:a.ma,pitch:a.pitch,roll:a.md}}return{yaw:0,pitch:0,roll:0}};if(g.Zd()==g.jP||g.Zd()==g.Hfa){l.available=y;l.disabled=y}else if(g.Zd()==g.s_&&g.browser()==g.Di&&window.location.protocol!="https:"&&window.location.hostname!="localhost"){l.available=n;l.disabled=n}else if(g.Zd()==g.Qj){l.available=n;l.disabled=n;if(!window.DeviceMotionEvent||!DeviceMotionEvent.requestPermission){var v=
function(){window.removeEventListener("deviceorientation",v,y);l.disabled=y;b()};window.addEventListener("deviceorientation",v,y)}else l.wZ()}else{l.available=window.DeviceMotionEvent!=m;l.disabled=y}l.available&&!l.disabled&&b();return l});define("jL",["require"],function(){return{gAa:"single",FRONT:"front",qa:"left",BACK:"back",Ma:"right",mb:"top",lb:"bottom"}});
define("gW",["require","jL"],function(a){var a=a("jL"),b={},c=Math.PI/180,d=new THREE.Matrix4;new THREE.Matrix4;var f=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];b.Kd=Math.pow(10,3);b.UN=0.5*b.Kd;b.bga=b.Kd;b.U0=[a.FRONT,a.Ma,a.BACK,a.qa,a.mb,a.lb];b.sba=function(a,c){for(var d=b.Kd,i=b.UN,f=a*c,j=this.po(),l=[],q=0,o=6*f;q<o;q++)l.push(q);var q=[],t=f;q.push(this.Uw(j,a,c,-i,+i,-i,+d,0,-d,0,l.slice(0,t)));o=t;t+=f;q.push(this.Uw(j,
a,c,+i,+i,-i,0,+d,-d,0,l.slice(o,t)));o=t;t+=f;q.push(this.Uw(j,a,c,+i,+i,+i,-d,0,-d,0,l.slice(o,t)));o=t;t+=f;q.push(this.Uw(j,a,c,-i,+i,+i,0,-d,-d,0,l.slice(o,t)));o=t;t+=f;q.push(this.Uw(j,a,c,-i,+i,+i,+d,0,0,-d,l.slice(o,t)));o=t;q.push(this.Uw(j,a,c,-i,-i,-i,+d,0,0,+d,l.slice(o,t+f)));j.mergeVertices();j.computeFaceNormals();j.userData.type="cube";j.userData.Jca=a;j.userData.Xea=c;j.userData.$wa=q;return b.ZD(j)};b.hz=function(){var a=this.po();this.b2(a,-0.5,0.5,0,1,0,0,0,-1,0,0);a.mergeVertices();
a.computeFaceNormals();a.userData.type="plane";return b.ZD(a)};b.rba=function(a,c,d,i,f,j,l,q,o,t,s,u){var v=this.po();v.vertices.push(new THREE.Vector3(a,c,d));v.vertices.push(new THREE.Vector3(i,f,j));v.vertices.push(new THREE.Vector3(l,q,o));v.vertices.push(new THREE.Vector3(t,s,u));v.faces.push(new THREE.Face3(0,2,1,r,r,0));v.faceVertexUvs[0].push([new THREE.Vector2(0,1),new THREE.Vector2(1,0),new THREE.Vector2(1,1)]);v.faces.push(new THREE.Face3(0,3,2,r,r,0));v.faceVertexUvs[0].push([new THREE.Vector2(0,
1),new THREE.Vector2(0,0),new THREE.Vector2(1,0)]);v.mergeVertices();v.computeFaceNormals();v.userData.type="quad";return b.ZD(v)};b.xea=function(a,c,d,i,f){var a=b.zW(a),j=a.faceVertexUvs[0][0];j[0].x=c;j[0].y=d+f;j[1].x=c;j[1].y=d;j[2].x=c+i;j[2].y=d;j=a.faceVertexUvs[0][1];j[0].x=c;j[0].y=d+f;j[1].x=c+i;j[1].y=d;j[2].x=c+i;j[2].y=d+f;a.uvsNeedUpdate=n;b.ZD(a,n)};b.Hp=function(){return b.UN};b.BY=function(a,b){return 2*a*Math.tan(0.5*b*c)};b.CY=function(a,b){return 2*a*Math.tan(0.5*b*c)};b.Qv=function(a){return Math.max(Math.min(3.539647*
a-6.669366*a*a+4.7454*a*a*a,b.UN),0.1)};b.po=function(){var a=new THREE.Geometry;a.userData={};return a};b.ZD=function(a,b){if(a.isBufferGeometry)return a;if(a.isGeometry){if(!a.userData.hba||b){var c=a.toBufferGeometry();(c.userData={}).geometry=a;a.userData.hba=c}return a.userData.hba}return r};b.zW=function(a){return a.isGeometry?a:a.isBufferGeometry&&a.userData&&a.userData.geometry?a.userData.geometry:r};b.Uw=function(a,b,c,d,f,j,l,q,o,t,s){for(var u={},v=0,w=0;w<c;w++){u[w]={};for(var x=0;x<
b;x++)this.b2(a,d+l*x/b+0*w/c,f+0*x/b+o*w/c,j+q*x/b+t*w/c,l/b,0/b,q/b,0/c,o/c,t/c,s[v]),u[w][x]=a.faces.slice(a.faces.length-2,a.faces.length),v+=1}return u};b.ZAa=function(a,b,c){b=0.5*b/Math.tan(0.5*c);d.copy(a);a=f[0];a.x=0;a.y=0;a.z=0;a.applyMatrix4(d);var c=Math.sqrt(a.x*a.x+a.y*a.y+a.z*a.z),i=b/a.z,p=f[1];p.x=a.x*i;p.y=a.y*i;p.z=b;return c/Math.sqrt(p.x*p.x+p.y*p.y+p.z*p.z)};b.pva=function(a,c,k){a=b.zW(a);d.copy(c.matrixWorldInverse).multiply(k);switch(a.userData.type){case "cube":return b.Ola(a,
d,c.projectionMatrix);default:return b.Pla(a)}};b.lva=function(a,c,d){a=b.zW(a);switch(a.userData.type){case "plane":return b.vla(a,c,d);case "quad":return b.M4(a,1,c,d)||b.M4(a,0,c,d);default:return r}};b.b2=function(a,b,c,d,f,j,l,q,o,t,s){var u=a.vertices.length;a.vertices.push(new THREE.Vector3(b,c,d));a.vertices.push(new THREE.Vector3(b+q,c+o,d+t));a.vertices.push(new THREE.Vector3(b+f+q,c+j+o,d+l+t));a.vertices.push(new THREE.Vector3(b+f,c+j,d+l));a.faces.push(new THREE.Face3(u,u+1,u+2,r,r,s));
a.faceVertexUvs[0].push([new THREE.Vector2(0,1),new THREE.Vector2(0,0),new THREE.Vector2(1,0)]);a.faces.push(new THREE.Face3(u,u+2,u+3,r,r,s));a.faceVertexUvs[0].push([new THREE.Vector2(0,1),new THREE.Vector2(1,0),new THREE.Vector2(1,1)])};b.vla=function(a,b,c){var d=a.faces[0],p=a.faces[1],j=f[0],l=f[1],q=f[2];j.copy(a.vertices[d.a]).applyMatrix4(b);l.copy(a.vertices[p.c]).applyMatrix4(b);q.copy(a.vertices[d.b]).applyMatrix4(b);var b=l.x-j.x,p=l.y-j.y,o=l.z-j.z,l=q.x-j.x,t=q.y-j.y,q=q.z-j.z,s=p*
q-o*t,u=o*l-b*q,v=b*t-p*l,w=c.direction.x*s+c.direction.y*u+c.direction.z*v;if(0!=w&&(v=-(s*(c.origin.x-j.x)+u*(c.origin.y-j.y)+v*(c.origin.z-j.z))/w,!(0>=v)))return s=c.origin.x+c.direction.x*v-j.x,u=c.origin.y+c.direction.y*v-j.y,j=c.origin.z+c.direction.z*v-j.z,c=(b*s+p*u+o*j)/(b*b+p*p+o*o),j=(l*s+t*u+q*j)/(l*l+t*t+q*q),b=a.faceVertexUvs[0][0][0],p=a.faceVertexUvs[0][1][2],l=a.faceVertexUvs[0][0][1],a=b.x+(p.x-b.x)*c+(l.x-b.x)*j,b=b.y+(p.y-b.y)*c+(l.y-b.y)*j,0>c||1<c||0>j||1<j?m:{Rea:a,Uea:b,materialIndex:d.materialIndex}};
b.M4=function(a,b,c,d){var p=a.faces[b],j=f[0],l=f[1],q=f[2];j.copy(a.vertices[p.a]).applyMatrix4(c);l.copy(a.vertices[p.b]).applyMatrix4(c);q.copy(a.vertices[p.c]).applyMatrix4(c);var c=l.x-j.x,o=l.y-j.y,t=l.z-j.z,l=q.x-j.x,s=q.y-j.y,q=q.z-j.z,u=o*q-t*s,v=t*l-c*q,w=c*s-o*l,x=d.direction.x*u+d.direction.y*v+d.direction.z*w;if(0!=x&&(w=-(u*(d.origin.x-j.x)+v*(d.origin.y-j.y)+w*(d.origin.z-j.z))/x,!(0>=w))){u=d.origin.x+d.direction.x*w-j.x;v=d.origin.y+d.direction.y*w-j.y;d=d.origin.z+d.direction.z*
w-j.z;if(0!=(j=s*c-l*o))c=(v*c-u*o)/j,o=(v*l-u*s)/-j;else if(0!=(j=q*c-l*t))c=(v*c-u*o)/j,o=(v*l-u*s)/-j;else if(0!=(j=q*o-s*t))c=(d*o-v*t)/j,o=(d*s-v*q)/-j;else return;if(!(0>o||1<o||0>c||1<c||1<o+c))return l=a.faceVertexUvs[0][b][0],s=a.faceVertexUvs[0][b][1],a=a.faceVertexUvs[0][b][2],{Rea:l.x+(s.x-l.x)*o+(a.x-l.x)*c,Uea:l.y+(s.y-l.y)*o+(a.y-l.y)*c,materialIndex:p.materialIndex}}};b.Ola=function(a,c,d){var i=Array.prototype.concat.apply([],a.userData.$wa.map(function(i){return b.a5(c,d,i,a.vertices,
0,0,a.userData.Jca,a.userData.Xea).map(function(a){return a.materialIndex})}));return b.h5(i)};b.Pla=function(a){a=a.faces.map(function(a){return a.materialIndex});return b.h5(a)};b.h5=function(a){var b={};a.forEach(function(a){b[a]=n});var a=[],c;for(c in b)a.push(c);return a};b.a5=function(a,c,d,i,f,j,l,q){var o=[];if(b.Vra(a,c,i[d[j][f][0].a],i[d[j+q-1][f][0].b],i[d[j+q-1][f+l-1][0].c],i[d[j][f+l-1][1].c]))if(1==l&&1==q)o.push(d[j][f][0]);else{j=1<q?[j,j+Math.ceil(0.5*q),j+q]:[j,j+q];f=1<l?[f,
f+Math.ceil(0.5*l),f+l]:[f,f+l];for(l=1;l<j.length;l++)for(var q=j[l-1],t=j[l]-q,s=1;s<f.length;s++)var u=f[s-1],o=o.concat(b.a5(a,c,d,i,u,q,f[s]-u,t))}return o};b.Vra=function(a,b,c,d,p,j){var l=[r,r,r,r,r];f[0].copy(c).applyMatrix4(a);f[1].copy(d).applyMatrix4(a);f[2].copy(p).applyMatrix4(a);f[3].copy(j).applyMatrix4(a);c=0;d=4;for(a=0;4>a;a++){var p=f[(a+3)%4],j=f[a],q=f[(a+1)%4];if(0>=j.z)l[c++]=j;else{if(0>=p.z){var o=f[d++],t=p.z/(p.z-j.z);o.x=p.x+(j.x-p.x)*t;o.y=p.y+(j.y-p.y)*t;o.z=-1.0E-5;
l[c++]=o}0>=q.z&&(o=f[d++],t=j.z/(j.z-q.z),o.x=j.x+(q.x-j.x)*t,o.y=j.y+(q.y-j.y)*t,o.z=-1.0E-5,l[c++]=o)}}if(2<c){for(a=0;a<c;a++)l[a].applyMatrix4(b);a=0;for(b=c-2;a<b;a++)if(c=l[a],d=l[a+1],p=l[a+2],!(1<c.x&&1<d.x&&1<p.x||-1>c.x&&-1>d.x&&-1>p.x||1<c.y&&1<d.y&&1<p.y||-1>c.y&&-1>d.y&&-1>p.y))return n}return y};b.tba=function(a,d,f,i,p,j,l,q,o){for(var t=a*c,s=0.5*-t+0.5*Math.PI,u=d*c,v=0.5*(Math.PI-u)-f*c,w=0.5*b.bga,x=64/Math.PI,z=Math.max(2,Math.ceil(t/i*x)),x=Math.max(2,Math.ceil(u/p*x)),F=i*z,
A=p*x,K=this.po(),E=0,J=[],B=0;B<=A;B++){for(var O=[],N=v+B*u/A,I=0;I<=F;I++){var L=-(s+I*t/F);K.vertices.push(new THREE.Vector3(-w*Math.cos(L)*Math.sin(N),+w*Math.cos(N),+w*Math.sin(L)*Math.sin(N)));O.push(E++)}J.push(O)}for(s=t=0;s<p;s++){u=s*x;for(v=0;v<i;v++){w=v*z;for(B=0;B<x;B++){F=l+(1-B/x)*o;A=l+(1-(B+1)/x)*o;for(I=0;I<z;I++){var E=j+I/z*q,O=j+(I+1)/z*q,N=J[u+B][w+I],L=J[u+B+1][w+I+1],G=J[u+B][w+I+1];K.faces.push(new THREE.Face3(N,J[u+B+1][w+I],L,r,r,t));K.faceVertexUvs[0].push([new THREE.Vector2(E,
F),new THREE.Vector2(E,A),new THREE.Vector2(O,A)]);K.faces.push(new THREE.Face3(N,L,G,r,r,t));K.faceVertexUvs[0].push([new THREE.Vector2(E,F),new THREE.Vector2(O,A),new THREE.Vector2(O,F)])}}t++}}K.mergeVertices();K.computeFaceNormals();K.userData.type="sphere";K.userData.bd=a;K.userData.pm=d;K.userData.pitch=f;K.userData.Jca=i;K.userData.Xea=p;return b.ZD(K)};return b});
define("bK",["require"],function(){return{rm:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAckAAACACAMAAABXwWJTAAAAYFBMVEUAAACAgICAgICAgIDzbUSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUTzbUSAgIBEWPGZAAAAHnRSTlMAgL9AgBDvn2Aw388gj69wUO8QRb9gn98gzzCvcI9pmC3GAAAPKUlEQVR42uyc65raIBBABxAISUiy6rq3Vt7/LXvb7YATIEmxX9ScX7YiZnMyyGUANu6O1+fdbfH8ChuU55fz7XE8wEbI+9v5NjkujEvRW87dT2resaGFe+H5fLM8vcNcZNUpF9JYA/fA4XzDzFXZauXGqCsJq8J9wmAyr0/nW+ZtP8uji6IYrIkFJk/n22YHk2EuSS1gPcw3+Xq+cZ6mBqVpXA67niZ2vsnv51vnGSZRuQk0q+nHzjd5qwMQ5ART0G4Sai292PkmzzfP2yKR3LJf6MaFWFgHj2jyPFuksgLfkoP/poaVsJkcxYZDR7hAMrU2kZvJbGdH9TCC1CsTuZkcw6gJnVOhViVyMzlGM+lnsG04rIjNJIUlRSJyPdMCm8kxpFpfx3QzOc7UAUgDN8Rm8pIWe62rmYnbTEaY+CvZwy2xmbxEuU9quCk2kxcM7osKborN5AW6VEia3vJfdExISCKY5r+wvclVqT9rnGFSDuzrOh7LZF1kjaNltfPoqrhG7Txq20IE6VdZMwlg+R+qhEnROUTZ9nFMYs/VwGKkHkngGvfISUlOXeKcPaIG4OguYtKQ6tnDmKzcJwoWUyk3AjdUT+fGYEAw9UixrEnmKI15EJPMfdLBUrQbR1VpPUgjpyWipE1KHUlyeAyTHd6QZcjGRanIiksEZYjI+SZ5tPKHMMmTYxDuonBahFKlRSKqJSLnmtSJyh/KpJhpUmGyQQKsVdYOSTawxi0x2QcXxzn3K99MpgIOfiEcUv8ZHg5aef8nsRlHukoCQFv51dsx5coKTCRKmmy9L9Xmdz0VVsQ2kzmT9VjSiOyooGG0Nyk8a4Z2QK3EpOqMST1Wvcb2dTMZxwR3vTGRLksLF8o1GZcEnec20mHSSZNt0EzTD9kHMsnmmhToB1tRqtJehKQmXxE6t6FIpEuZtIFI+pOr5N2btHjH58ck+jHRelWooYlnLNhwaYaRggmT9WgfmHvxffcmGY4q5v9Oagw0KsiXLF28Ea8CyQOJclqQmjT4j8hMcH33JoVnhmIEQWN5jJ828Ygw3w9PzeFLP5b7eEFqssdGFOfpA1R77ybBfTHAJDpsNdvETF/4JkvNP1g/XjlqJdioSY3fheMPj6a6/x4P8Jl5dQ1Gl8D4SYRak/EDwneSSg4boia595pur9fmEWYGvLkRCROQXv+ETRvBeK9VpEpqUgOljZps/l7IwF1I3cvFM+jH42m3Ox5figt5OR53u9PxWNQkjsTYrO2yVc4kGzHJc3kcInkxEZP4uqtdSDcsXZ98+4ZHbewPp6diFp9Ohz0eD7R7KWYSuDfmQrKlW8+VXIvJEMXapdkfp1cI2X97KRONZIP54VjKZOVmLFEK/B3LxaRdYtIsM6kchZPe1b+dR7XfFYhH9Oi7fCtjEuoZ3Vc+OrYYkkXD15R26u+kyfV4EKUNEGbe7vInpR33MM6ujMmKrsnmi7Z+gNpUHi33pxBMqtJ+ed+V9nJG+OejqPYf1zrv4fBUwiQ0ZBEqglFhQ5xKsBz86OpRFkWPjifbeEFqkjkPLf4l3/XtFRKcrnUEy/tTCZMitw+WrhyK8BEQCT8VAJiEc5zJI1NDIVJFTQ5eOmX8LyhxONzyqPwOSd5LmARLkl4yO5+77KStCJc46nhQ2qBSE+9JMxc1KROD4mqWyYxI2C/9rfwocswl5KDruJRKkcSY1sUEySaUbPGjUeUVBM478iDFTUIX7SlZTKgtcjLc+9UOKvsoYbJVudPpWu4c9cbzi4kVkJXgcT/qMmWAkWcjbrKKXUjlpTOUOblo2WDkAFn2TwVMgkkPxQY0E0SL8O0ikvurSTQ7AxEK/ZAd1haQtklnf9TjKpmf517kfsP+Zcn4A8o8I/MPrVO6Ml+SK62iecaeYS7GctKHkahnEs8gpd3m3vsmQfYWxEwO3oPW4t6FIMuozP2Gb8tCskhQzt4SgLmGKp0wLpX/DhuECL13ACgI6XohBOvG8ym5Q2qLVSZNQhdciBBisPXFhSwdJ9AbPpe3UoddQop8ZjEViYjJhbVLwcjTQUiblCp7IdleydUO/P1W6gDaxfsCKN2cLRzKTK1ek2dqrkkwKi0yb/Ljasfiv8I0XpaZpDCXowdClRWZV6lJ8zDfJBiVFgmFIgf2sxdAip0lDFNpuSNktzoOKlJaTt3VxSad/qzqhEn6KdqO5LslhUKHBnupaIfpCB73KGL+u6nn3w+1ozQCCNLSYoYnTNJP0eT4YrfpeK2T6A8FTQK0VjmK0mKWf91CaqsyUlfTqtQSoiaRVpPrllDc5Me1TL6XuUREMB6Ggx0gg7FNuIMnyqAVatRDqso6XG4MTbJPBAS0vXchvJcA5U3uyh5EX/QSKUb0n3fKwDSkqNhPBpEPe8F+0os2W3BgP/mapECTGfwLWYPJQzmT9wGPJM3+99t0ulbr+vogJn+0d6bbbcJAFNZibQgBDt5iJ/X7v2Xt1OogRmx2RFyX+6enwYiTfB6BRsMdSAdN0//6xPMMEtqK7ioEkYjk8aVWIc+grypy11mFYEkiktsXygw8gzSLF2+Zh8287quYwqqTZeveX4mk6yj/EPYxM6//KYP+HMphsWmiIDOSiuSv+od3tVYvRZK4IM+GrSV0OpKb8Y8lSVaU69ciKWTTxaXihPPAVZLcrW/6gyer/vj49VokBzaveUqSm3+/IuuppHtAOpKAJOgjVa/n/ZgqyZcj2YNSkbQk18dU7Uh3w7ffFyRJdAqQ5DtiZ9d95mm1Wp3W94b7cf2SJInJ4nvGD2l8q/npIHc+mOvTvW/4vCZJQqiMbF4nJAkoj5NA4nPq9YSohHNeliQRmiHr+4QkQeuaxHV47wrIt3FvAZ3eutcfL0zyIsEpdUxRygFjKpLDf/GP9cDDzDDKfR39hmx+vTpJpLQkQesVYrndd07HU94d2dSI42XKXkgmIOl12jZg1p/rae/THXuejj+PDYzbSzwuJNOQBL1vVlftNndkbz56Q37zubrqy7NpIZmE5HR9PlQhspB8GpLrt969xoXkVf8EyW1/JcdC8qp/geT7wNbGT5E0pbfws0oL8h3K+UXGm/4KMqv4VSIlyXpgu/FnSGp7DlRw8rio9/9gsLk4m2BDMxHJzfCW9PwkdXZGKvKFZK/qoX2q+UkKdo5JVgvJ/pCcOSgnbSJljDX+pxeSvSE5c1CONouwvnMyd56mXkj2hOTcQTkSJOMRWxe7kOwJybmDcpTnhyxjvXjVMrs+Uoi3n5Wk6zSRVGe1PPE8VBy7nZMkB5BIelmFPPg+0H5GkqzbynzJDPS/fzV/UA6HpBubehtbtsF7SMJhLMNNZ+otH+uQkM9AckfGaT8bSTWyVQhX2fkqWWgRJFWFd/7Ibm1WdCHB9wWTrG6HCzQN6FvWNys0CSRK5k1IgLNP6Iqv6zEn/ljQ2NtySiQmeSDjtJ2NpBwVkoahulOPiUNj17JlnsQMIsmzLktgnXW59FAZ8+m6DVxJMPoVKnB2QiTnDUkoWp+xa6GZaBlaiAZJ8IsT7V7qUvOQpEY2eF3pQiY6jsiqQTLo32uy1ggsHckDGas6PUmAkU0u7rdwMtjWqYgzXRiT6LDyuGynoyg+UgFJCsb52IGQIZKJQzJ9HcjQbbIY55KeKUoZhMCNJIQMv0ak/6TzPweSXozSApKBAUjrqLMBSgcnqcy74nuSVsIlhMTDJyN5IONVz0OSjTCdKpp3NUGheQQF43QjeEl4kPUTDpME72x+A2YauFQemM85eFnd+ZMgkuFtWS5MxW8XkH74LCXJHZmizdOQVNJHSGOuVQ2SOujQpUK/eiAZZiCE+nuMwzDBdM49O93KLF6JtyZhjYZPSPJApqh+GpJElJnMW/dWCSQrhNiLt0lKg2Kd+2OagDS4qPMgZyik/2gIkmRoeJaM5I5M0+ZpSF5k0Mol9yQdjIVac9EWyRI7CiiSR5ITrtFcS4j2iFe0YSMZHhs+FckDmab6mUhCgVNjlU+DXmYisp8pQpKSgCC4y5j9DpAJK7u4HzCcAFzkGdwlIvlJpmozF0k3xr/X/n0u5bRJ0oZTqcBPS0DSxbx3TAFMQKrxQ11IMGwNSFZ9v4dJQxKKlecPyuEM94CEChfnTZIKDdWdQa9iTUwr5mMZdQJn2HJbBiRzlCxPn0FfEfJjQTm46BeTW4kASYruYE21cjzRuR1T8CfKuA0+kCRe+NfA10wekumDctBcTA+BHE2SfivJM4AcQ5IkJQkh+XNBOdiwkI1p5Kyq/Iq+UnOS1L5f79dxXtoEJNOFJKhOT7Lsd56CNTeHOLbdJBk6eZBkmflDyJfX+mSDQPdPTBJvBLQGnjEksXbJSQo51KC5QKyLKEkdS8a7gGQZfSRBKyH4XhjUctYgkgBNo77BiGT6kEz5Ft6a9In2eRZdg0Gi41mUpInFRRaQZDE/bOH8YgadSEvUfVvHSRaRnQDdIrlOHJLpg3IzxrtRxRcfVhD0TFTF75OAHMRbOZ4cT64WxkMncrzpZuMkdXT4cNzTjCGJdUiXkwAwGCWkq61o58FE1kHSISLCtkiy4MJ+ZJjgw2tkkOKF22ScpMDD63bedZs4JNMH5XGcN67l0UIB6ydIoNNBMkdJcoX2QlR7cSOFn+CtaF+DoglSo1WIl8LDt0m+rWcMSaxDsskVu/4rjo3lzy78GxnbXk+iGmgOnfMQSWhgWco/tCDKrQmbMmei/eWg506SuUTDI0PYjzlDEms3Q620gkZXJb+IFo2SDu6LpHIiKtWZGQAiZ3b9KHcyutMsHSck918UG5jzqkp8XQMYMPiOmTLDmQGQbgxv/PBAEq3PE5i0Jg7Kz4d6iOomBC+GSHZmg2xAEh2WAjDgSwNjEEMkvVS8YSVHNmSTBeavj2k7x64oz2IcrYm1QNYUkexCaaswg+6nZtR+QGOQ0e+YFYhkJ0qNsxFvmzlBYpQpIxJ3hsRFp3kAQJMOkvijSrSydYKhSsj4VynjUcZWkE6ScG/0t2sg2esjONot9HHV+3sn9nqSDWcRtOCsCIhmjWpkotlF/l8dMSyAyizDLnKEEHc7p7IQr+jEaOGyKYI+s35AdhXq4wQfFXDNQG/b0x0wT1vykODq73dg3NVkqnhJFWOKaoOOUMcYLfNRZjDoo+iwK03sCC1YgS+ea1owRSsyLFHdPrroZfUb1yq7sW9wtnAAAAAASUVORK5CYII=",ufa:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAdAAAADzCAMAAAABzLceAAAAdVBMVEUAAAAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyAjHyBXyBg6AAAAJ3RSTlMAsx6tiweSVEKneZtMoGZ/E1kLlyhGM4MjhmIaLXM9Fjlebg9qT6R+WQwnAAAdy0lEQVR42uyc65aiMAyAU66CAgKCIBcFxPd/xD07QtOm3Zk9zJ79wfT75RWcfCQpEQcMBoPBYDD8Y+7FLfGO0dFzurR04f+RlfOtC5NwHE6X/7Fft5yfYV3X1y493GGvtInNBKJhUuIe1omIM4NEKT1d33j8uqv0REV23L3E/cYWiNyc+gMnhQ+m6/pAiVuoxc0X/ONc3w+MIGHFEUPsuoc94o6MEpVUOSN4IOEzCXtNtobJPEAgU3ecgoDHFuqljLCVE6ycmMgR3hRsIQAR32aE6xl2h+swDcRowQhBBiIzk2nWVPlks1POVJ6AXNlCuAjlPg6wctDut2cLOQg8mUpQwd4ImQ57kqsff5wtVESoXtzpkwz1mI5iu1BM3YdOqM90vDLYFyXTcwMEYxuENsZUE6xgsTRLSfHi7nrgpExL4H5HaPhnoQ3TM8K+uGIDGk5pjm0URKI1QIUtCad2gmfAo4Rb90bVhBuwlTyOr4zTbxaKnaDUCB2FV3mRVKb3xJkHycsAwK3ZigWIxRZqHtQERAZe83JxGeO+7yU+FlS1MnSuJGbcIBR5/EloFmBdniArI7wLe6Ilbe9C7pMSFmKuutoeW74tHF1Rwa1Qg5eSGtvxhecmofZy5hXrhOIfhu3AsvdZc/EIfy/gp0C3fvGxszraShWzhfYmPtsu8e9RqFIBHbJ8crZl6JwLBltVaE+bdIInRXvihK2ElOAekI4LwZul9ozgcljEimc71YOHXV1ce+SDeNuElk/sFDqhM91+jEfQnijYSvwWGtkL2jOMErulDwjmm1Ut5sWguTzsvnqM2NY/ydBLKRwyF1VoSrcf42v2REnP4bJpwQXOZHNfeAR0WqGVux4eWNZe+KZU7bosv3/s11poNmaoK7Tg6i+EDsz+YGcZemfIM/tq5RRleNsDXU1u4Sg0pvwdQky/QTd7ej2AsEFoAR5ORP5GaNacP2gm2BUOQ6ICKLQc4hEQnHXjpnLRcBQa8hM3cBOPJGS8f1voCQZczFkaoftsmV9NipwSNMRCZN2Idy2t0KWW2ndsZScUGktVGrGH7JtC57V2jD9cKIxMImk/iewgpnQBSIJCcZmLN2fN7D2LmEg0f1eoG/FT4Mb+wUIXGUjXgAwmZSG2y1i3jRYqfOmw1uYTCkWaiEnk/XeE+vzQvHwttBkEZtgbI5OxTyBhsZULiYwa+3bNvBvX7AEU2qlM4zGZq/UtoQ9eRu5fCH0wEdgdJ5vJhBkI9Nz0XQzhywVOjUKX2wlf5HaC0I4eSoRis9CUj2s9gHPwudBS/lZ8fzS07B7vusn70ZWmv5VmrdyuU6Och9UXhIYg00dMJt0sFAt/Y4QC9EcmEU2aJexVDmuvEXpZh2z2tC5yS1Uokg2kOvgbhQ54blvAZISC6wdMpAaOJ3fAiGQTFdout9ZgN0LYE1BoSN1ttwm94QtCcF+fC22DKAp2LhTgHNNvFmkcfblfhhrnFz4oPEDKv2c7YI5ruEgFP98mNMaPFgB8IRRc1013LxSg4q7E2JfE8aiGHnIulNtNoeM2DjTvP2ul7Xah/rqF6Ovz0PkHCAVINRf3zGQV5LMF+8zrtSS0W+qzw5vbgUaTkglJmm4S+hROsIa/EervU+jgrZT0Mr1G+aIrk89iWMmFHrlzHrt6mUcc9EKv+YKTyfbYuFkofhuQ/1ihCSNBCjEf6YLHoxdznNQxXsWN522Aj6hf0eDiNiPX/ISbhI7i1LlxfqzQjl5tVzIyfJ9opM/8gadeqLVcRIjjB43QI70wtlOEJnTHnwntxE9/ShShviJ0n19wd3RVW9EMvTA6vM2VJc704m/is9/giK/p1eAd6cDpqUyTQiqUfFZV6Hq+kqgZWtCPMOxzWh/TqduDXDUGhVJhr8q6CZO2whdgFuuEejhPJNPDWBkMHmnxKFWhoXiA2uos90ErT47v3BO4hHWIrcjlykkYn8q1u/dAeiSmP054iMND2qtvpDKc1CW3T76LbzRCyX0qtMHJ0G+j505YVe+JC+OElgvNUzkPrRV9M+270NjSawqGlFSoshEWW1NzCEgGyQO6sawKj2giQmmfpa90GOfahS8m7G9X5AzJPZvRRHEjLLBKoAe90JYhZ0lolGkvQXnhftE57pqSaoQm9PijQnsms88WSv9O9feClvqXV4y2H0vO4swmEUWhE+neKgfgFH/8aBxlqDjrhWIzoezu94Qh09KjcLr6zF4kXlQoeKhcFvo6w4rrMR3h15/tAYgyVLT+KDTT7nCHP+LWHrk+LKSaQufRlXBFlit0xVHy5LoLAXaYSkLnHiqF9kJxj/YQ9Td0bsgoxxJ2yMAoER63tSaQNU2WCxHqkwR4iM8jg81k7BQIfsBkvBZE+uD1QZDgO16cgDTIg8NEomFvv/ZdsJ5HqU7NGXAexQpWy0uxYsEHU7Hyfue9WHn3zHOxcMjkHQ+5YDNPG1A4z84LE6p7gIx7P7/J8B0CExAuc5JHgW0HRyd+7FTn8t9exsTxPCeMTxf4n1T9HI/jGM+9BX/g3B5OfjoXj8qFf0F2b5od/rMMg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDIZf7J3bmpowFIUTQJCTylEQFATp+z9ie9GvVnfIDquZXtT+l51xhuFvVnYOkP/85z//+c8W5qa+VckSLNW+Lv+ts6Q+jrkOouKb/A039g77f+4xSoAhC17IOmGG8/7Bn6ceBTqS/Vh2O/FnOMk5lWr8qf6HH+4x4iTfmNBncPPnU5ha3KK91IMAyfdHqSV99OKjub7fEGHELpSvHMjDyTrCY4I8W9XdU8njVeKDGeUbPfaxkghlCKdSbGM4uNKM4t86npGBa2pQw44FEcoTNeDbj3n8f/C9BF+Zufn7zb0QoUYccmFI6cttRIP4TGjmQomLCZWxYe5mcjPhh3alOclcPHGpUJ5K8Myt1PIhZ5ETDOUAHe8FFyozPm5jieE74gOpSXwiiYsLlRf2t8GEnzgo3aUkc/FG7UiAjD3gF2cUn8dE9ECJiwuVN9Ynzj/5Hq6NmdtjiYsLdU+ai8P4Z19NCmUu3qQdCXEWKzSu1OL+gOtHP29pbWvmputVjWO3q8vTdZX+YxnLbhg6p78FUyFXST9uBYZmLlgWU6Fx8CS7TOdYqomFklaucFwG8Uq3nJn2z5OXVXC4Rufz8frIqvokYHblPjhcj+djNN0T4Af91cx9aGQ4zL3cddU1lAr2G+aH3EOjzueDqymjOerM+/YW1v7hhrgolzZ9+0H3Wjw57V9pntfw+oX65dY5/Xjb3+pyEAROUbpJ/10j1BOUOVMoLVSCpJLH+l80XMFXQjeXlcwOo3EnttAFvlRRZB0pKskRtOFaU2mCNv51SUVUORYztyd3ixFKGUg6Kn+l8h77vdAxflN+iCnbz1JDEeQb3gLryjXcw+ntdpNA9KXyPM1bS7uRm7bRfdswefMgbYsVSrnSdqc63oMyce3ldJQK7mKdupUM6SKMGB5MwR0gQktPqigcO3XuLib3ChAqSJtI303lLjiVf5CUaD0iI2lAMQqeJZQcXrlZ6CJXGLDClU9cSGhOorHnvbg19j7zdC/WqEJpxnXm0raVJiQbhd7lCo9Nhc7FOHF9AQkVt9UzAchxNcQ5x8F0GT2/Wlu6HV1pxl2UG4QGco0GGorw6jNQqCj0qXjHJtppoLfrIk6+3MJeF7fSmMQxFkrcG9d5NfFvmrgOKjTQDlx2KTKapJ8OE01IpnIbCZPyhpxdQ6GRiHXXAgwuKQeiARVaKg4jerJH5nvoD59OYpWGdOOw0YsE4IVOmVzDzQWFH4xQiHhUKF2Ec7STfuG8/aCXttcVMaHcTsWEjV2hqQtsr2GKV/bbYKHC05Q8HdOB8cQyrYSGU2pteXWU1oTCi4L88PJilLi+wIVGmnsVMDUAzzjpQ8mXtpZuB/frhQK342CUue/aM4tCR13i1sIuD6nEj4JbX5blmBxadSR7q0lDSb1zdD16sX2hiWApSZgC32RJKB2E+sIutfL+3/uXlqd+MGoxHLC0SZ//TL9mH4VWhbqz4IkN6twLbca40PO60JEpRiwsGBLiakcL4YkN3VkZuOHdeeuyg/jPhIZpHKfhc33GTuYWRDoslF59vT6sC3fCKhdJuKh/Re8z88JXpaKT6uEcFxUaTlWT74TYzWVydU33SfV8IdWQxMWF0sn3Zr3xXoVVOpq2pI/WnOjZMGu2RS+UOB4kNFzy17YuY2EEX+deaM+GC+01A80UHLOgTyvHnVjnqmuikSSc8/UfBQj1BtKuemhKW8Zs4mZ/IjRbj/jOZVaKLDfQdN52vvBT/6BdqaNMm4V6ggOfW2jU87j2J+d7hesvHLK4DrznKqPFLRMOG4V+ywVOyjTAjCYuLrTXLJ/djP/TX9qzKW2w1nnftg5yvu1oN0XX6dX4jFDTa7NR5/pUAS7U19Rgi/EGkkJy0MPQq+0V13FlhFVun5IbXEYoELhg5ja0K8GF3nU7czPjeZFWclBx5+2D9GZlavxO3bAEjFCggYJzC3ciCxe61z5UeOH/LFzo7JI/kqdV73P1kPFyzAjFxt/A1HtBEhcWmkiCo7mO0abQG12G5dkrsyt3kTX4xFzoUcDw2xFo4qJC50kSzroytLYp9ED+lYVOLlfK++WegJcg6IRmAoZfTMlMXDl8ET9kKbPO+IUtlH6kaD0TXJWDBWtQEyuU3hX7mcvXuLzQXd4HEanyyPd9UR86PTdKQFB1D2xCa2SEkoTEKUnmMrMKnNAwenL0YpfZk/ilVe6DXCFOoRrNuJ0A8psIpRGOQyf3tiQufrsO+rLhDguldXQtUWj56YETWj4j1OKTrXeSueaJiwuNmU3YVytCMzKtgOMOdNuOeU16NRQa7wQIH6wO+YJFoQ1TbftWhCZ0XI/jKB7neEDNxr5Qo8FmQO8xLpSpeehqy8mG0JF2HTiNoi+8C0OWLxfKL3l6RLQ1oRU/fLrZENrQ1oFTUqHmo8bkq4XymxI6LnFxoTeDyfAJ3YxJp4QuHyZ0pc4NmBoXFpr2QkFG16vU3LJghaRVZ01mUWhIxJiRAUKt1rk0cRdLQqOcWYDEVx3O6ucpA3tC8xTc+fQAhFqdW6CJO1gRGldCzewyU4g83UpXXdkTuivAxcszIBQnVpQ/C5O4oNDOfBtPiSUN7fVHaYVekVvhDOwKhoXimcslLi70br7E5P3pVupCfYVegrAsJ+XTOUAI4kLxzOUSF+9DO2a6E+9Fk7UF9DwkWQ5zIb/DiAAQanduYWF6NFjokdnFQwpdY9LVzPbsLWjssUNvfECozcxtSY+WGAt10xfM91TdzPa7AluWHuzgER+018CnUKF45n6rv5HENRXq5fOTfI7Mu8YUeYSOXgb1VhHTJtQnk47aA6bmUaF45rqpOnGBHQud+ZtNAkmogb+AriwOyINt83f2zm47URgIwDMJIBRUQIlgQPwB3v8R9+yVzTbNZJTK9hy/655o+chEhmQGp9jHjQISgS8XWqCbEfxnKHUUICVLMNyRLfP1lP2ZP2Btjb5/76Cl66enQBK8XqhANz1DKPnrdWRMUVSPHhYUjhO6R+9VqNNUAoRO/434YqF0yrsBhlDyYiclMUUNssd8bp0tNlvvAhSyCKmjKifq1lhCaEFFXL5Q+p4m4hmzB4mJcD4STbn/8cM0pgqgtOBAJIsIFehCs4TSNbdyYrUxiRS4aG3R5UpsP97dGLn0xjCWsipM1hMuIJSIuQE8JTRMvB8wNbtLZT7Y34RSr8XT2hFvOzQwl9KKsy6oBBcSWjAiLlMojP5BKkM7nQIb+pL4vULfMwrxisBd9Sn1bnUZbhCXEiqI/W5soc4oFRGLl4WoaEMw0PFWfqPfa539EFYJK2odV2hBWqqaxykuIJSOuQ08KzS2TSH++c90e4nbWvda7FV2DQyblqtC16IZvsTdstohIpFVPqCN9dEYTY87xCWE0jE3e1oopOid1NYS3dCdlWr/jmpNUd9nVq6GNdpQnpXhgqFqdd/r/el4kIjLCq0Zte7YQk+Mu6TFJznxgvnUdJtLUWy6IPEtDR6jBwsJpWPuAfhC6UCalD/VzW4kcgU09H90/Q1CC7RTzSH0zGkKqyQ+zgq+QyfoCV0BJ/gFQgWjaiBbKAScbMV+mscn3fiQJhFgodz9/0IhYmwxYAttWa+v+whp+OGk5RuVNVi5pcigkUsILRiXiC0UGlbXirLDB0gUOOEXnZ/qOfpLrMQiM1SgjXwmoXtmCbRMIpeDBgodIIfAMWK5RU+61+36o2PuAWYSCltmVxax5S+fNOGADnht1y7eC6ZaRuiKiLgcofQf0t/+xKoaVoMf5xT9SE9zDCUrWEyoZmQV+EKh48+pLEU/ojN4E14kenAMfYZCgkDAckIhYERcvtCc31sGwixCmiAGFvpKKu0EeCE+0EEyAiwpdMWIuHyhMFiWFxp1ndDFdFXARlzWriGHGrzZdxLtTJcc7EKH77Lc6xB+Nub2bKEREFOUv4u9PG12aGd9jUt4iPA82J0mXcUcUo/NV6fy8GkYJU2O96AoDaIQZqUhswr0DGX9LOzO4Ieujh87abhsNlkdwhOE+9VgZOSTqCtUCQ/QZ59HksGQ9cYn5Qb9/TNuucEN5qWshUEJJKEw6Z32/6XWHAE30Z6rKsuqWNV5CbNQ6vb8d8jq1IrnLudNqDgbs1iJG7x58+bNmzd/2INjEwBhIACAkWglWoWAPIQX99/RDcRKLO4OAAAAAAAAAAAAAAA+FK33HE8ye4ul8HtXnsdapzfqNu8jCnd7Z7ruKAqEYcp939eoMRr1/i9x5ggGXKLmxJlx+vH90zkqSvioooC0dWIirYPP4GPlMtSzogjwG3T5X5VULMsyc9DFFpEAv8VX0KFspyfpPHSxjgXfYK+azPGC8peg6zgCfIcZoBUOF1T9cwTNgicaU+Zfmwdnwtc80BvOJmgSKoTwHvz3r52QZnlGbWi+1VMF+N8o+rWgFjB0NYf+W3yoZmnf6y/9rXlcvv45pxP0BrxEMHn80sMPObuFCnAM6qLrP6GgEp0CGSaAgj7j7IJacBQCWuLEgv5NqQP/aUc8t6A5HEeLFji3oCj5OPv5yQX14TCW+/rJBUX2p57l3IIqcCTbNRE9ES3jlI54rKCJ4lZylG0I2n7cPU4tqA9Hwj/XxbjZvq6nTTST+V5IKq/qWuvgv0O5bVt6s0xuW/k+FTT5OcrMlh4/f3MvoSTAxIa4JugD+Ax9wqkFjeBY3LXROn73pm+Fdiv15rxyuwbjnGb6VFB5Eon1CoYLa19+uCJoxLxNNzFutSVHIsJwOZU6y5/U9IPheCBb9c3gaIzVl8irpkUER6maxn2IiMUJq9qSgzVBxYfLlBOD/MmWzwPxg8xrfNrctmhsFRbQ977GumbMU5vFyqI5Trjy6HvBVFBj8qrdXkMF39MHlmJFUOU19EcpYEyS4byguwCeChrTBUJcLWGap7UGjSTuHRIDq6RhmD71HA4K0VtBDXOoyvB9Utas6XfYznbZyQ7agxdKn6wuVG/feRzPV5xE/UtBb6QZfbUvKa4IaoFOa5g2bqWpAMKTBBgRE2s86UTPIf9CbLm1BNARIy2g/qlGmmL1ExPAL6qbxjNJ2DgdoNMqtzABWhQvCOqiAkCq3ZsNAKlIshdxbBxhoEUeMCN10G4amFFtBV88ECyqNHumRQcI6vU6FpyInLzhgVsbQ00ohnoU+IlPGcAXf27Dv2pZ9LfG+BCTNiYpAO4q6CKx0JsFVjbYSwcqLlTWAOHrILhPHCnwYBQLgrbWkOE9a8ig8mSHswZUES1y+3JxYK5ouuoK9DbIklBgU1hl0OMbQZY8NNDQEYLmbFW4aC3KtQByUuTGTs5rPCL5ZFjg1Xp4VIbtgwOwmPR1LhHUZG5TQJfRz6pH9IIHs6zRLQjagS0yI5XMVgVHGNbeRGHq88skSaa44nBrcagklaLG5krOBB4jaPBrQSN6ZsaN7bSeBaQPSfQwvnWC/QpHKmA/B5/bYo9bsx2jIl+8BuZoxiaN9VQISf3dcRLfuaDgI4qGv21EOh6p1d7cpfKX60zLjyJBjj3RN3vFs9pixfJfC8rh/pMtC2oaBLlQhzEqmKTU16HBjqUlrdoiARTS4CmuOBPncKR4ze46uaMYsQCb2DBicBcFZatSku+kQ/0ywxQt46izeeTX89h8UfdpFvxeYON1xkGU7y2UbjgIlVKuDzO8OzSsOXEpPm7cGOHBNEMG2MTUWlwPcdQBDCwXM7ppo4jijuX1x+7SWRLURywpVtIdfHb2fquS+355vdm1LWpMsydZQ1jU4jO/FzReFDShigmGN90+E1LhhzQuQmdo/ImXuONeFgLv9c+XelMhvi/DFwTJC86HCgsqsPWxOHqF3I9nTxWUiUXMBa0nFY6ppfbKdrsTnGvfJwO9v73qhijh8LQbVnaKv8flhu8FRRHjfPRoOobOiaFZWm5wcA8tQO7vf+/7orSYDb8h89AV71X2yflHtXkzbWGRQSBXxsQZVP+5oNV0FUnBTyOmWi0LGlF7eS9ouiwocixzuVI3kPYLilKwEBLxzMfoa6yDSx5uMuimvCCoarJIz17Qx6ag1aSJhaERSjxIZbszM0roU4pdLleerty3w/qNiz9MkcYyKHNBh6M+W4gKihfP4g4w2ZagxcTvhyTgN0DvPS52eryHOICE+GQPzajHY7qLpnjdZE3AnAs6sSsL7CGylGlwtS8oggx9iL4VFFFB9GnW1mo4Y6IpwjjklhcFjehHGkoriEWMahzw5huCtkw0ww6GDgCHCmgRIj63JcUTgGxDUA3qpYlesbEda4MpjktYTKDm8BB9IIeFPuO+Lyl9NnF8HAwulVveGdfGw2O8KGjyugs9gwVlUXgA0G8bgmbjkqI6tLMAIRrWmgwosIsk9rIhaLsUvVTjqUSxJCgY4/3C6FXHALuMt8Sr08htRHNnNl1hlNnf651jJ778JB8gQsIOzQmd9SwJKqqjeUvMCCpG4/G4KzYERTbo4yjcGVSxksGvO9CVKgTDJaa4LqgD0C71nIKdzy0Kys7jBOrAUrghAeSP0vjpT7TCdoew1xaNycJm5DNbbQaeXOA9yySGOyOhnmGRu7mgzONdZn5JQ3stG1pQ3WOhiGPrbtBmzsC0QX41rvZq3nL8ZcW5oKgBPppd0gDIVE9+adoigV/SLgJ36g+FBMD5bDtUz9Feynh/xnEBeqTabcjHzmPWGPpNiSalUZVPdkdzLmp4mAvKOvxUSRJDAIwyXMQX9+zplWF/fy1aFZSM85Li9XuPBRvvC4zfatnZVzgUQGKpaM2CoKIE0OBUlV5QCQk+KABo/XYmZwFE9YKgoQFq++zjOoHdaRQ7Xl+fiXgqzClyD20jctVS4WR3/JW/Wz0M5/tAc0Hf5ttX2Oi9M4eHidPtsjmPDoAXtNgcR+QyE/yXo+UORQXgJdtOzdeaTDFelXvGfQJSO5Z42jaeDQC6bfvwY8DCbNKWgttHgYIWd5Ow5oafv0INS3SptkWKm2r/vCdhCsznJCwFrvseQTN1UdBEX/mtk9xpaBnnpgMQe6ZkvhnSGKaLEaWsfMAIFlar6ppJ1KgBptPoL2GUFPufpvy5o4HGNF2LUK7RqlAyfmtmGcCxGCsOOmXFCRAl8pd+xeKyx37K+gv/+4xjbFSQsX3PE9TXiMUT37ud5BEquTM56LE2h8ZwURjeg3LlN3BOoIRKxHnjYo9QCTx694XnlVEYRiUaY4KB1hHgSFQRrXCPASNMaiXKg6RqzdEI0Maq8FqAGr5TU2zpqtqpTCwtE0klGXnq3xDLL28+ENI7+lOIALzNS47ERetwD7lylQTNydumqN3H2Diyh1y1/e8wvdIpnzTN9HNU1HDdMBhOvaQWc8MqCitM0J+DvWNxNj3SQK/3LfxT0I2zLTg4jj/Ht50TC0y0TQtHoaGLfxJPhRvagQbH4F8O95/F2LsyK8ARqCW6+CcRTZB2mrIE38P/SdHkKcnVTtnrnL+3UfPS85/Gc577rbmA70gvf3syQhW+oEIXZ6Msfm+eAbo4IUHxOzkf6OKkcK4En+Fbl3Wem0SxUr3jeViH51VdqI0cXZyfLHiERiuv0RrhI+eulaGLi4uLi4uLi/8dfwG1HApczIfKrQAAAABJRU5ErkJggg==",
$fa:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUsAAAFLCAMAAABoaV6sAAADAFBMVEUAAAAJCQkDAwMDAwMLCwsFBQXb29qgoKDg4ODy8vJRUVHBwcH19fWXl5fZ2djW1tX5+fny8vLY2Njp6el5eXnV1dSwsK/v7+/Ly8vu7u6goKDu7u7ExMO1tbTOzs10dHO6urnJycnAwL/Z2djQ0dDIyMja2tktnuotmez09PQso+koYMf8/Pwule3v7+8sp+cvke/6UFPOFR4nZcWsrKwrr+Urq+br7OwqtOMvi/EnasQncMfn6Ocoe8zj4+MqueLDw8QndckoeMongMwnbMYog8/d3dwojtModM3g4OAohtApktUomNUni9ApndgpsOAofNApptspq94qqOEocMssmOUqmdowh/EpcdEpodkpd9Eqf9cqitgqj9kro+MqdNYpidQpldkrnuMretgse90rbdUpbMwqa9Epf9MoZ8krmd8qhtsqg9kqnd4qot4tlegrkt8theUqZ88skeQrjd0pZMwtf+QugOkteOIsjeIphdUshuAsgd4ti+YrcNktkOgsdN4uiesqetQsdtru8vUujusvgu7Hx8jR0tMog9MveufMzc0snecrgdsWQG8sieEolNEqktvg6/UrleHM4fXn7/UobMnX5/W7v8Z3uPIqitwaS4AuhenA3PRcqfCcyvMgd6ao0PSEvvJPp+9Hm++11fORxfNts/FskMk5mO8caI9lr/Cwucijs8sklcOEn8mZq8hTne8ecZo2bsgwaMcbXIQ7n+1EpO5GeMo/cshhicmvv9SaueSpwuNnldXGzNMkhMEnoM4/gdl1pOZlnOfM1d9Vg8shYaq1yeNNfMdAhuV4l8kdUpTe5OrS3OeOpcpAju62trcghq3gMDY4d9IkY7gijrcifLRUkOhKjdmBrd0fWp+8xdKJsejAzd7E0+aTsNZ5oNTwVlrDHid8hZ4wWX1bjtVCpdSpqquINUgldb2sJTOipaqIlaFefZfMZXNrjLRLaoo1aI1kRl6an6W5b3s+UnLdWmPlu7ybdpBVmr+yhYlYU3CLmraxbYKtSmBvYR20AAAAJnRSTlMADRUdLSTtHFmoOi7dUODF681AbUnWbL+wlWSAmnm8NIajjKeLetZ4Pp0AAF5LSURBVHja7JpLbuJAEIbDChBeGHuBEAdIWspIs+UkuVCfwLJledG2/JblFRu4Ro40VZVulw2ewEQzDCT5jcbdcrCaj78ebebhW19Nk4dvfRyePsYufJO9jCDBQk0XzszdrOeg1Wq5XK1wtN64M2cxpT/4hvo+xykQdNzN3LKf35OwlvPNzAGq0+/wP4GIRpwBQ8sWzxfLtoGp68B7vx2KQhALoLi0nz8sa7V2HQz8L2xScBMkxfWKI/rDEjZG/WL6JQ2KFWYKHEcxftygm9l08rVokiFdjOu/Lnu5njlfpiIByKmzAY7/TBYUpK/gzsnDwlmL538ua+N86uSJOdJxIUVeRfbc/bQ0MUm61vNVtZwtPh9OsiQ48uqy1p8rdSLI2fqPLCm9UKk0qbIsi6KoBkURjKsqLZUfevJP7rXcLCafhifsbOaXW9JTSRbHu11RND9P1TRFscvjNktVcPEtrc0nyZyTqbu8yIp+WUVx8fNyNUWbJSqUFxWi2b17E9zguOdbSQ8w1jH7cEvHRfpR5HEEQIPzNO96S4Rd+dnKLfw0i5uf2+0IxctV1FXpncM5n90tTGjLzzSTMiyz1tjxAoo/8BgVXGvyOlGeOOfNh3vUZHImT/ppVGzJj+zGcZpNGxVA65wAdJyV3vs0nburQpOH6ey96A78rNmSGF9v2KR+1TDLVAi1N8CaxCv1ZNygeTpejrRll3dGE/rJJS//RCrbbUm/KzWVELKmqCaFQnitoRUFQlbv+7OJs+AYIU/s+eJu8iZuFte9xYvuQIkw2bEhGeIuKeO+EUWGIEdYZlKIlLFVKhrlGZeB4SjgGCC13XtJm5Pp5vcVp6xfNcktkmRXplKEHcsMWCbNOMsKrrEva3BwPO7OQxSe+NLMl/fQbsISN1bnSDqxO1RWEEi2I2dIBYh2ZhaD99RhlGWTwB+yFRXPRpRXgJOX0ee6mt142sSOcm2zG+DE57A2JEEEss05ykuEQiNggCz9fJTlPgUn0oTkwdtqZpfWJzRltwzBSQcGlju9bZZT1+ZF909BGm8NSY2vUCKofhqh3VJTbfJAiHCc5UFhVD9p7QXMuj+sAxFkJ4UoUtqYx/8sb7l3nzhzm9cK4noTv/ZJkmoPzNexjNCKjQEG9IJ4yFLTy324lBuWrQDojZklALYy92AVdeodkyTZ6xut6JgpbSbYy5dBtXtBkFx0CGccIpUuRXpA5WC8BMBkNGBZG5Y46VhikVJPRj5cip7GmqRWySOaugbdYtbEpxhLJtjLUF71+mI4Mkkq3VitDUvyWxetpTCNDzLqs0TmzDLBW3QBj9bGSxrngOqhRJonUSPmt/fEQ3fnJzRl2m572lVZ0dXvCE0FU9KwpiBmRSRPWAYwOegJJc/asMT7lWYCBazK8kHeDMGMg6gh3dyuEp72Co4cfRZAsgBPcngXYL6y6DohD6wYme1NRlbUQr/5QGSEpcRcMGpSNHMFZ06s/lFR9wWT5C7+lgo6ZErH4j6S2yAVb4faBUCvBXhdHyRTs1GMBH12nnijLFsM5D1PGOw+xJs/GWV47em4pnsaIAOF6fyGfmHDokNLg3Xx4UWaIPfnjeIUCaKP25kGJvJJ58iDgMl+jGXdrzYVRvWeo5/SJRcimercySqSoFslvWhgObeBcjKZUnz3F4hHUgxRUtXJ0Hxcu0PsFfttd95LkSENxmpPwrwoqjldph3/XPKbjgK9C27eEtmbG6hAWL+tDiRv1lLTBjFMkyIlN+hpP0f6tB00VSWKDiMsHwFSFtEIxwG+hcYIliZG6YDsj/2BadZ+940zzRt4eAQPMiwDkL9tP3vtUDaJqtCimp7ErNgPct88jKwkm4zFLAkZvvQIsAoqPdwRSW7i0fKcPFulsoatmQS8YKG5Yqv5f8QoNb7eS5bFC7uyxTjs2soWjRmb3xxyr9dUtuCykszIejz2peFIZypXMKKDtkA4ICWSLnHvhHtSVqQYpKmXtvs/nx1N4EGlbVK5eZEpewGOHzgoCCVWH+rCG90I7ctewsxDrh1M8vHYlz1lWHrg3G2Bku5daEs2eSTRwIPWPfHMws26Aeb1myPOlc5KgJ4Hh9q9gJhlEdDDyK7eYFy2iBJVd5/xzTxBPASJB/uSKb4Naf/9qNVKDdxU+5CfgCiE3gyLUBSapWugAirQ1TdBvNWxngXBZKBBrUmyMClKbip9/FxEkmBWhLLrcKo+yUGMG2aM823b+WjUJrH5Aghewq0mp9IeziaRBqIwOFeLK7PkAs4c9RESSmLJmx00QIokSVhiQqoDrN4ekEnywSxhwqJdD7Nkyk+Uh2vOltyTDmAiY/YlUZ1fEya70rUZ49tSZPJC6pMERZL2ilo5os2GJPkBmtcHqcOaWQ5FW6ADz1kJwoMyxpkUw9/AZOVIubMmybre/4tjV25MbHQrke3WoIyVag3Nt7D2d/2m0m+YZKc9ZtbDoFI/vseyQr+PoaQbRY/Glj63mjRPkgP/9Caej2has2uznPzi5WxC4yjDOI4nFXuwepDi3WQD2SYFjYHepBSUnKTkYkU99pKIhz2FsDAbpPTiuMMwkNnNzn6x3YsbcBZEIaAICoWVHmyQXvxAtEL8oJb6/X+eed955mN3u7tO8p/JNhtLiL/8n/f5v8+720dzIiZKTUej7JVRx70woXft6NaxwptyQSmivwb/CMfxLHmWMcqWJgwbfJsWNXFB6dPMQ8xJIU3EQJ88UZgo8OgqySibGiWxpEhSC4/AOQjZeuvY4FgkKEUuVb9knwewXHDZfXERPKKVc4NnENtyPlSbVhx/UWCqfi4N6PGTKXPZgava0D+G5a1qlNCgxSXPKBmmyc2bpIZAlrRvkWNwMTLI8SwXcFVsdl9aPD3qSgjV8YjJ8gygGWtBNUNXuPbFCR4EPXZGknmA02wDpbDEoJKLnmuceFbJDIsqVXYsTiwplHNU/S7TSbPsAqBchNOxACn6VS32va+esEmrYbzyCRyjFZp+i2ZHUXOeOqFRB1ypUMpmp9xdF5SsriVDDNAktgbyukx67SG7xfqIkNM0kogXIFoH3YWEWaE+2Sy0cd3igzelOc+SDVEkHOXEHCfqTJyA58SRuGFAQanUqRGvdnj+7dgmT31ZFAwNJ71b9Il4N70w1lutCv1JlxI+qVEI009xaZ5c1CF6GNFs+Tqq8sgDE88UTDtCk515EptznDYKSIWyISi1OKEbbhiEOpVuZ0l2HByeRbrfAI9VSZIkF+JBqCmmVUqtwRe02JYuMY4EJM9BvasKD5rgkKhZMaX74BPAPG5nShgSGTUNslH1OpLRKyZPMWBLrchPnoMqAjLc+zXdeGPWhhOKIr/adJKAobYxbKFgmohH8YLoV2t1PXB3cyLu5sccjYDyTC4hmgqxGi64DmTLwynPWRKUIk6SrY4CqUkmJRij7pvjW8RPI0x5CEw+TtOsm1Qr0RBmyK6BPBvFeXyhXXKlJAfZNrJ6PDOPvPiKgNkdQSnikGfXYzOMISAh8eNYCVPOPI58h4iCCu8KSi8HyR4I/1l2QZwzBeYxoZQ64ClvyJIzuNHWtkS/4Z7ZSaNEcZmqnY4wpThSKE6Gk8q4rNfOOM0W/zyqDqC2mQu2QAIzXuenjm/QgSEbdXDxpcRKUjAQMj32ZTgSsloplvo4xvS1KdOe1I6cFmadbamfxWhWCGWtzyRJlbKKZgKzGsl6EMMUnNlO0U8l2g42OzvSw9fbFu8x2JYk/h+zOymUUN3gOQY0DKUiOYO6HFHl9yA0VYVzGQSTON2IBGYj6cynjmnS/tBjp+OuNJQrJQ8xzHKFUMpQo9ZJoYSqhqVPFNKeDFFMq7P9mmF4sZ6kYXpUJB4+UVm2xmaQbCRpLbpqPsoxM3tXJtKQ5SVQQrytaFKqZJodntE4KZSQ3+36TDILTwrLhX677cf6Oi666xzR+uHEo2VS40yl9gZgxvT0MTiT5hlxtdZVgQvLdQQhgkkgWZza7EYKpSiVy5UpZ4V59mz6i5TgeYGuh8OkLleQP2TY7uZiotPJjEmmgqXhKJI9r7IKlFo1g8ta06xYsZfxJ/c6aZSQPAx13tmkFugaKknxVSoQb06rbfNiNC/qHH66LWUe1SOZw3wk0XeqqsAHZcN0oseOLvd3eWkGV3kSpW4AyfIet04ys9Ea394tqXCSa/BiKfI/vPuT+o1jDhPT6WyTEWZDnIZETV3gXTzJO5EDHsDFPlmqvMnJQ6EURw5v4GOKdwKB9XBv9nmpiWwsLQprvqDsfbF8hJHqcJh4uWumLfypBMqBZjngUNlaFfVcA8fhoXjRr/pxV6YbeBhiJirrKf3ZMvRmSHxZi6BsHC3fOw+WSuxiUf5Mds38odRAozwASdV4cLYDOaEvU++t5V7eZpRiyzRKTkKzOnK8OzmaNf1IcO87XuSQ7oOj5ZtvGzVfsyw5DFOU4aEFto4x2b0dYqlgNmwOSPLKQGg1JImhAR9P1xeHrZVCMgtLiuKZ06VoWVfbING80rf3ls8dGfCpvN+3ndPSB71Z2fKJx+MoKzsk2YiXCWaV523J94GrkgHrmCtxJ+s7A0uOMKeXo9VRdfUkzbkP7i4D5flW7CUyS54V7z94cUw2yfJ0PA2114WlKnPeeHdSNa7PJCwUecySuIWk4MyApCj8No5B+/AFDTPG8tK394Dy5jO8em7EXyATFZbMLFyZrPAqOCZgVlx2pvgyzrLvNb3kCD2q6dfJ53BN7M1+zXT7scAZ6vD+10B57s8Wo9yIOLPhxiM7Umb2ybI22NGSPU/gTI9IRttOGNH7I1COiJSAMI4iLi31fITU76Rfr0cGyaJrPx8tL9+8ee7oQx8k39qIn1qUs06ZSJZxlLZCOagMqPsUmSWcWc4pmOJLhTKRLJMoh+6/R2FMS6COtuZZIRn15ZVvYUq48uZ7jPKt+GZyqW0lU2bG23CzF6Bs2PkbXWrmgFkscqrMh69SHYlybthamQHJcTjjsV0mR9cO0XQI5bm//fnNVzaBkuQ37ZraADmJKQeWuwzGv6KWKu92Pp+3K+sAuV4ESyh05mqa5bg9+EQoheP0OLUtE2VO9c0o//UvvfPKxYuX1Gla+Pa3pcSY49TD/xMlZpasPN9GdadQYJZdCzCt1gAgmWWRnYm/4sGZYyo8FSwfuFI+h3sajbOmwDz8Z1mjPLz82mtrFy5v8qyd8Tmqyjk55/X9P986iZdo5PnbKZWxWBZwQd4KYK40e7AlRB281Cjn4cxaimViNDR+WDmzJUXMf/y+8ud7AUros4svvvDChQubxNKxKQmV+4rlUju7Xo44BDoiqweMWpVyHrI9IknXaqnUaOZ5wjZqtWRfpoaVKVPOTlI0dtG8cn9Zo/zmrxcPoAtrm+/O+1WLp68d+Qd6PCPRyx+avYfTSEN8XiNXkvgRNQ2ZTqnIKpWWSj3wRWifzJaCUjQZyWejmoBlgubh0dehK+/8SCh/PHhtc8P3gJJP16SXd8rRKs+fmXnJVCONvAyHClfBMfTmejWo8wY5s8Qw4UzArCVtKWkoXuEzkHx2mKax5quI54Jy7+BL6GDt8ma9afAxajQYYWRoxiZGGLLPug9fUb8RvuxKIRDbcre4Wxx4ZaLpNpQxQbPvsjMbaVsOD5ZjWE6GUTQZzD8YJUd0VPgvX+7t7YHlxcsVl1DaTodZCsyWpQDwH7O+zwIVrlDyh+XtMMaA5u7OLlQMFk1Hs4TqTXyBnDlBSh/bdYaRnJGmwHwDSUi7EvoBJMHy4MV3fDsnpxZRY3aaGgDDRMicgSRHS/mdUIVrlvjYLewyzF5tJb/SLlKJK/VdgllP2jJV4RO7UkBOjzPB8vv796Io7/y6t7dPLC9uVngRY5QJY9ZNJhlQyJ9C+5lpPKQx0m12r14t4Bp0bxFNBrkLNw6q5epAfAnV3aEspe/IbCjVwWcnKRpN83sypaD85re9/f2v9vYO1t651DfRwGVqICy5yokiPcjAaNqDxzxRVMrdLhSAsnDrxsoNbwCWRJNxapVCNaqut6jnVyMrPK5EPJ+JpNCM8JSs+QZWSkFJFb7/1f4+Vsu1l97FpL3q4QcUlvWaSeGI37nAAPKMY6YzXrzgRZbcfM7eYZSF2ysr55HQgxovCk6BuYR7cXFDWKb24ezIyVwJLDOgjHtTm/Luchzlne+uM8uDl67oKbuwdPht/oExuyYx0NnwNFhObUtCqK689QlIkj65sQLd+HiAJZMFiFu4Ncvt7eCRaRLP+GIpGm3LmU0pSsN89YOvkyh/v379OqFcu3ItGAzTFajf4oxeDVh2WsQwvLD7mfbNjgFEpdbO1YDl7scBzOYtJsm+3CoVt7aC9rMd3NvbGxBwxtbLCVt4gmQGNIHynzhK6DdGicXydaCMG7NrAyWfRCuYVj7CAucVU2/E82JMc3CVxDRvfWgyTW8QXzGVKxXJRdLGPMarRPNavMKTrsyYZBomklAS5Q/fBbZce/2NOZIYs99kkmYLKIkl5KxIjU4b2OkfyQlQBh+tgmYJfX47sGYNMN8Ey6DMt0Bxa2sbtgTQDdBUmsc12payWErXEZQZwXwVZzqCUun391WFA6WSMqWbI9mOL60c2zmBkTuNFXCa1fJ0XvsSD2VtS0Wz99F5pukM3iSazBIwt9iVSiFLtiVpCluOR/l8Qg+A+YduOoISceh9sKRkyYulwKwHZ2aWMqU2Zh0UBMg0xkRMVxQDog6jBEmtwW33PMGs9opv0lq5RQ+KYykgKSwv4ebqidtyPMpRGBmkpimfjob5Mo/XBKWucLYl+s5/tJ15bGVTHMeDRIgt9oiIP+wSW4KnyVNCGGPGVFuDKmo203QUNYMaY4zdjIqqSlX0VddHihiihHYwbaVp0hpLpNNM1TpDRGKJXcT39zvn3O+5976lz/I9S5mSyCff33LOffeBLan+Vj1J3tvWiqcWZAl1CAmdPEnO9n1HL1ue2IzC42jaCnTrxh6BmZxoRd0xMCGyJMyFmGrNbCeeAnLlGbkkoONiU0mU0g7BlpIs59Xwibn0mI+rKXFVBIWN2eQFagEnSdgycSLVlA5IWj2FWdc6kxCabd2Ib8UJIcydyHLhwgYNdMLMZsscKMHJMYsyzGXO70jSQ/n5zwblW0DpPZhMK8l77aE8Ysz2Ez0leJLMmy1hS6pHsqWrPbdYmlDKWLOt9Q7KI0mYEuUNDcdgMsILRAmSeRXHWRpF6SL8FYlw6Sy9J+b9vU2KskNRxozZ7dmrgIyJJ+K2ZGmbPqlFfGxoYFhZyqZ7XV3nhNLs2Rgl6YX4woWSMhceuxAoARN7iGRGlnFPxp3IlRXmDmbKEMpvHMpFtfofwU+3wpRpxUiWr6ZeNcbstIdpnbxhz2PLncO2NJ6cHk+O92y8xbB8CiChp4Z7xpOSNdP3WZZYKyP50klZYkJ5bFmAKYlUZpjmF5lQMsKBcrG1JTKlLd/tr2pnRJidTfe2pJRld3PEmDvNqvIkT6TkfqgeLEeTooFJkMREvqwTZ94l1kziGNQdciaArmS6FJBA2aAolWgmlAWRzF+FdugzHeqDgOWPJlm+MK/We5NFUTanlSRxms9utBtj9vos+X5Fblse6f9LHVLE6+s3TCdV44NbbkGM191iWNbdsbFNrJmYSTtnKsqVd96wkqXHsQRH5ZnTlv+GJAOdJx260otwoGysvdo+SutvN5lSP4NNkuYNIL3isF/O4GGZ3Wu8cuShmoY3QGLN4cFxQ3N0uA4oA40NTeBPEzMbaUyQDMX4sYAZSP7zG/4XlBRNGXUlrjRMsmykK5uVZJu+uE5jdqFBEuHtc7A0xuSxnD1m7guihG/LsXolCY05mhODw2QJaw63w5rojUQAianVZyWzpVpTtRjOBMqrMXDP/a9QnqUjg0p+x4PGuCt54EGybFywOGAJ9+F9/a7gUK4ke5vNqby971nXFnX5GTMBY+aH6dtyvA8cEeIC85YNtw7NWG9OeijvqLuzd6ZZO6OVrvawT1fRl4uPWXwMUBpX5meZg6QqI8svSJKu5IFHUL6gtqQvzWvrNGYaJM0BiF1RpMfEBXv+r/4NFfH764UlBJbQ2NCo0pz2jQmY3RvvNLa8A6lS8iVsKWMhjSkgMTXKAXNWtsyFUV3JvwokDxrjrmSEa92ZX+s9Me9rN6akMV2D1CmncrLsGyeZWbRFkYZoGhwFpLKsF5pPTc8UJ4uHgfAWRxILIsuVClNFloJS1LD4+KuvBkqZcZZ5UZIiJoH68U2IdKUf4U+//1HjgqsDlnxpkr7s1EflHV08+qie7fCD/Mg8LHeSRxNU25Z6JwEJa4qGBobQZ3q+DHTbHcISE5a0vrQ41ZMiYSowoX+C0rHTWWLIkiaLTsiVjHCpO++/8AJQKksq7Mu+5ntBMnL0gVItvjF3BsycttwtassNGDJhS6c6XX6UPxLQvA00IfElFlDSmOpK7HCmKCdLHnYoSw4MMfmXDrCg/InxTVfSlposP3ph/vX+Jzl4jKQx+zrT/fIzasyeWRzK2Vzu6//TY86UyhMw64nz9oDmI3fUWY6YK28zKDGUI7U40NVWjiRGXlsqMGdGX7RnCYsOXRlLlu+/8LbYMpcxMZzIUtXqO+0Issx/QzR6qwE5tNVFOVHq7mDCl7eBpZXCXLgSLFcGHGUYNYRolp+ECZTxZ46ZwlsXRZry5zv+IkKi9PQjUCLCGyuAMp8x4yzjB0m+qJLZlgfDjW4khhXh1pniuYNDYxrkluftZtTJeKTukUcAUykqzpVU2JcNzpYyrIASLMvjtgxzxFSY2VXGO6EISiZLsDR1x4ofZMeMG5Ms03jib2B2+nzQYuauPDCmmSdOmMozXAzNHR1SkpTCVJZ1hqeQxAJL50ysuDF9V8KXzJY05hlxWxr35dBv2VDySoPJsjBfpjqa7nVfvp0iH7SYO++UJ8SD2bth3TqwnJwoVuG4ozjXKEjNmGB5+yPGlohyq5AtH8uULgUmbVke2BIzR4DnEo/fMZSMcEX5dunpZOnTzJIwU51o20XWmM1qTOtOBHmu5pIok5Nqy3W3DA+OzFVvTgwOTYKj4tQQVylL8WUE5mMrHyPKiC0phHg5WJadVk6UYZZsgLJpB6/XMlRwtkOoO40LysHSiSRlxn35al97iyH5eFu3rT7qSEXJK+E4Sb1tI8wO2BK+hIRmsWp8ZnrSBfgasoyixFKaj4EmFHVmmCWkxiyPsyTNXOKDxjhK1nDTWQKlxzJ3IceTNFxvKEmcgFz1aXMgsQ5mixkPcedf+dlXLywNzbHJgdEJY86ZweExE+drrDProjBpTIVp7FnDICdIGZZmSflpp5WQZRhkSa74/iUXSiZL1J0XFlwf/uxb9oTZn+q1JO9t6WjtQiG36nV8sPEThBm+2BK/T9h/bmLLOlW9FY7iSJymDk0JzTUwZp0aE0NQEuaNKzGFpIKssTFeE6D0aAYSX5ZYaxbgyhIWnThKRrhNlhXlGVjSl2SZRr0xJHlTZJQyljREd2P1ib3MA5KgmZDVs0FJBjCX1i8dm56Z63BOjq25BRz9MA9QKkzgvFFZ1ghNDLAMRF9iMyTLy+DLEiwdYZAlBZmSKPkMV5IlUGqRy5swu9pbjrMgewBSRZjjykc3Bnn8g8CWpK5hYBTJD5CUsbR+bHj0fEtzZnrMwYQvyXKVbIblY4hyBHcNjAmkQFkTz5gWJFRWVgaKqtnaEtdreVEywhuB0oqVPO7Lvp4m9+5nbxdIRlm2g46DxEoereKHJqjk/esCLQVMkBSatywdHkDiVE1MT4LjGkmYrgABpEF5IxTkyxqrWsGIjV1ROXW6wlRfwpZUDlfyc76ZmiGitBFeUUqUEV/yIVq62cb24836InSUZdHJqQTFII+9zZOgRiXEacx1whIob1m6Zs1WXLsZjQxbX2IQJVhaX94IjjKM1Ja1skDx+usVZUCzTIx5WpnzJaZRYUWHKOPJcgGKG1lmPPm86logXLj1vRo/Raq6JxLUkWQZ+WybZ8tpwUhneloDDU8bcw7EUqZzJgSURjWBgBIwoVjtKUG+hC+dQjcaGcU7oWwBzmSpNxqlp5FloLAr220L1NNpQMZZFmENmmypOpiVPHQW3z9JlhMbjSfH6hHh96xDeDuhgAPn7ZODE0iaU+GMuWqVwFzFKDc4gxCvqa2pFZbwJKapPs6WZRDCu8z5soQN0eybSqL0DzzaWVaUeyxPz9xhdpjr9FY+Jc8U5K0Jqng/sgx9ICtBmSo+Nnj0yOjU8GbxpQ1yoWk0hjthosS6Db40lWcVOFqYPkuQFGPWXr34ekgCvdyLcqVZEnJm9puhL06ZLcqvte68vQBtQgZjhtNla9PjLb19PPp4LPtb21ua0+YWM5mgDmUlD4c4Na0sh0fOP/984BwYmhzzo9zifOR2GNSL8ieBcxWkLD2UFmatDBWMCZYyCLK8pOw0GDOgKSRlZTblZ/lQ8sBjj+GnZWXJhNnfl+4yDSYmWT7ble5ofpz/l9W2BMXb9dCNesLTFu2IJsHSaGRwatNmRxIj0O2OJiL8SSWpNAP52VJRwpeoPkpSQ/x6W8ZBUgs5YSrNTBGOTigfSka4TZYlOVnGTz5k2Z9uR9+uau5yXREVT5g7hTuiCVvFhwZHjlaWas8h+tIjaWk+efuTQvE2x5IiTWdLLIlxiXQ2RZovy0uoLNdDO34rACUi/GlEeIWizFJ86EsnfqUWQDY3uca9rdW8zp0ez9wVkeU+CUrvNdaqNYHTmfNjx9LCvN3QXLFihY3xVcBpRJCCkkGugi2NynWQpUS4V8uFJmb+okOUsRqux/AKJMssLPP4Uiq7PZX3pOFK1cbsXREPkE7JIYBUoYbfc8/mKcNzlG2R04o1K5QmcD75JMLcGpNJUyp5xJaGpLoSHLGEYzkGSw8zZsyUpxSA8nNph4gyJ8uMvuxqMo5sbk+zjoeDnN8c4aXLPf2OaO06jLVAiQmcS8cmp0cHJ2MsHwbMNYhyYYnSA1vSl1gGZk0NZphlLYZRaXk5pvWlOpPSvihy0ikI5ddyDGeyLNyX/W3SI7V3dUtPRKX94sOEyU+3Jb2O6H7huPaetYak0VIZTg87mGrNFXDmk5CrPX4tf7TGc6ZlqcughD3LFSdhMs7ts9r8RYcofX0NWxIlWUKz8yWM2dGe7g/3lxjd/mF7v51jLP3ucnCD8eU9ShIElSW1BiwfNiwfVpZAaUWYFuWNNZfa6nMpmyKwZM4UlDbGLcQyOtM35V+FofxckyVRkiWU92o9fvChiloS1P6uKyLLUHdZvxYosRQlFbjyYcAERqyHV4ClwrydLFXAqCxFilKNeamfMxnmLmFCQOlAoiNiU4QHjYWh/FHrztvos/65L8nS9+XJownqCMOS7z/ufLgNcf0xDJCWJmASqAb5EiywhBQlYGKqM1esWGVhkuUiIXkjQOoUaxo5jjIlwgnT9yVACk7Rb78UhhLt0EsvfSQRfkZOlkSZ15dUrwfL3WGy9Oynv8PAnJhcG8gzJRZIOmdSKwKpM4nyUdDEBpzACJSyZ/BleWmp+tIpFOLgKeJHrvKhZDukdacM5Ss/S5AsxJfsMFl8/IsNAWlZD46pLT/cunXzPdQSkARLpVlJmNcBpvNlOMiBEkO0CBAVJlAGLOlMsESUR1DSmXzQmB8l9adGOFxJlIXX8ThL12HSmHuyW2ennlRjarpURw6MfPzG1KebfJ5LlyxRmJUCkzTJEnJx/uhVynIRSD566aJLNcbBMm7MUmVJmF4dxyjhp1sKQfm1dpalEVvyougf5ctn+1pti9ljcWEljyJL7x44aRY6dWjoaKuZwSk4FCGuGJdAUnywgPE6kMT0gvxKwLQoAVN8ucjCxDAxvgCjora2wpC0NBnnmjHpyrd//+wfoPzyJRvh/40vu7tSnW0tOJe3dSvNQaVovHeISZi8JNo3mRTQCnujstx0NDXyMe42JjcvsTJBXqk0FaZFeeUKsJSxatVVq8ASQ1A++uilnmqdDMlSTMuS1vT69bIvCkYJ/WybdMsSq/Bzj0PZn2rt7Gl53H7owDizV02HDch2D7Pc+ajiBGRti05dNPXxiIKkPh4cgkPhTQQ5WGKAo3gTMB3OVVdeaVCCI7UoDHPBggXCskKzpRVMSZpwpvHl78iUhaOUdki6Ifs21T/1ZT/c2CNupJrSyrLPlWpo151dkPPUoxPOHN+wdpnC3Lx1+9TgTAjo+SMjHw9MDz9cuVRJVoKjypGEM6+88sknr3ryKgi2FIzqTcCUGNeMiRiHhCWkLGnMiDVpykJQfiPJ8m2N8Dz5kih9X9obop7mJuNGkrTXwUWpcc2HZuwSZnmIQ6mPzYAS06hq69DAGyMjpHm+EJ2qNNY0IHVTlpgi+BIDEo4QfOk5U0BWAChgyvRI6mLKxPG7EJQ88AClSZZkWcD95aupVutG6vGm5o7evmddY7RxQmxn43i/MMvd8SurxPS6ZcvI8p61Vbgp2rrpk9ERC1NuNEeuA0xlialyKBUmfAmUKrA0c5HhqAswUX3UljFn0pjf/VIYSrZDirIkC8t8nyjC+2bkaJ4A9bSmusDRgsTs7klSu4VZ7p20AtPhdYrS4axaW1VVpQ3m1qGpAc2hYPlwJXxZCZCUeBJTpRhdnC9S0ZgKE8YUlsiXFaWUlzHf/umzAlGyHXJ1p6AyjqlK3RtAhBk70+Y7wEhSt94kdaQUH7KcKxQx9EWotcugtdhDLBXn5q1bNw0Mjo5OLak0IklVwJI0NV9CGuZkCVU4hVFiYfuC8V0Yym9+QJNOlLNtLxniXS1CsaWtozed6upne+n7smg6SR0RZpmkJiaFJFbYl1VLqu5ZYrV5swFJYzLGnZwvAXNR2JkAifIjztQwv54oacwKFJ3CUPJKQ5KloCw0XQZqbevpbE31s72M+7JoaJzE9gFLotwjSfVsAUZFiRGwxABNB7MStlxCX5JmlCXEICdMSFAGiqAs/f2nglEywrVJz4HSZ5mZ5qv92R+PW1/2TdiMCB28BxImL9WT1OBYQLJKfRkI3iTMeJBfR2MKSyriS9KkSinQxPG7UJS80tBkeUZ2lvl9KQzjLCmglEIeaF8t5GwvqYENzpdVsoFoFXkSZuVSR5O+XL3imisJ06s/ZEmSYZoBSKypXwt2JR+HS7KsAMOC0yVpRk7j8WsibFtm2PnMPchneUSSQksk2rxp0/btWzcvAcdAuCsiTCpafZwyBTlrT9yaqOgVYLljJvFrgSgZ4aazPIsoZ1vGc/iSKOnLk01TpECLj0LC5C1RkhpapyifeMBo27Y33nj+081qSj9jxmGuvu46NkWEaY7lCtJLmJGcWSrDahQfuqUzC0P5A5NlrhAv3JfP4nYj1dre1tLSqr4sGiSx7CyHtYZvP/vsBzy9QZYUUbrzD1hiRPqieYblPJAMaJJlLGNO6QsIvxaAkvpSbzSyoGSIz+owTpbdHR09zbjcMC18S7f4smgg3mBq6dn54BjL18SX1JtMl3RmNMhXr74OKZO2dCy96kOYTjSm6G2Dks4sACXaIXaWBdqSvoy/ENnVHD6TdxeJOkMNJlke7rFMoFVXY37yxrZt2x566CH60sDEEpK6keZqCXHZpZZf41C6KJ83T4xJmibGM1pz1H20/teCXfm1nh1LSnLasvDLSz0HUR3PZme5E1jum6S2gCX14ebt2zd9uunDKqu7nS3vDmXM9caXq1esXh1LmJBAnGdY0pgRmqVKc9CApDNnj/IbRUlb5q88VK73IV9t07uNluae9s7WvhTSpag1Se3j+3LXJDW2dvny5ct8VYXFGPdlgxwsV1/jSBqYcxxMFvP5mITpObMvaUFiTwBmASg//1OTpT7ZUI75bTnLS/Wu9t7WVKqru9uVcVE6SR1MX4ZZbljmsbx82eVVy6qwAl9W3X238SZ+WIzVasxKhQmW18hwxSfImWBpaM6XOAdNkqQxd4woSiyGeR6UjHBJlvZ2SDa+eUWWBfsyY6eudTyVheVec/nn42ApcjCxDEnSBEagxKgMYK6uvK5yvbjS0IQE5hwhOWfeVTpEixTm/PnizPnzA5iYhuaojXAsDDozB0peaZgIh87AxIqwzG3L2LPxOEu26qJUsXfwycJywrBcRmuGovwKxxKbg1mNWa2FxypgOWeOCXIoCjNgWcEw7wM/R5POzImSNdyhPANDSNKYRBnriEhzVt9rUGR2PUSOk9muPsviKEugxFSQIImfwIglAkPFiVmtIKuF5XoI6RJTYarA8koFOW8OMF61CJuixIQAkzgxEOHjoMd8ydaIKLPqR32vrMRJaM4qwkkyvy0J0hzIyXKXzCxn6l2MywpwQkLzCjgTKVMjXH15d3W1IFWagTGFIyak3rQRDpaQsBSOusK1/GPPkPgLwiTKHMnyBblKp8BSx+k5bckQz21LS7OI+dJnOXeXnbOwvElZGpIsQCCpMDEUphVMaeZ6lB+40sFUnHMgiXFJmQYkhrpSls2ZzpsVU3xH2I/zoz/LjpJXGu9rZ6kiTCzl6KHMfBYv2JeFsyRM50vVFVcApVWlMSUEmKvXR2N8zjVzEOWASYEl5fVFOybIj3GuBYgos0X4S0AZZVkuNMsF5emZUZJmyJe5Ltxm50ud0Oi65Tctv2nZ62/k0PYrBKMBqhyxKc7VlbSlao7IwnTmhCkXWZIezh1zw7bkjjDPjfJzRLgkS6qMtgyzJMoczSW2dGtWpawvRxSZGT5L/UPdwFJ8+eHzD+bQ83DmFcqz+uJqDXMlWV0NYxqYmjJNlMOdEGAGaXP+PPoSw4T5lILTFQ1zwATKXO2QdpaOIfYyNSX+Cp9Ud9+acFKYZfbmEuptejyrWgzMbrwU6rBFWEJqS2EJmK+98dBDGTEeLdsbyJmeqgNJMQ87U0lim0eBpINJolPmwEOE9CgK0a+f57Lln5IsS2lKWUpUJb4sY+HJXnmYLtNNx+VQs6C8rHsmaZTJl5AwRoyLMT/d9mZWbduECuQ46jLOXE+WhDlHhswIS0ytPRjYd3yc0ZH2Tx489afP8yTLUlBTfo6nUMQ4PfieGfzMZksfpdBMteRi2WFiHCzpy2i+pC9vAs7tm7Jq6xXCEkEuuriaIksfppKECFNB+oG+Q6806EtSlfXgqad+9Uf2CJdk+bYBid0glZ/yGjUGRE9m7y1pS/Bsbc6uto2ujisw2cMsiwWlbqjjEuSCU6WN++XLl13uJHVcYWIIy7svRs4MYELMmColiT1UywOUC0yE8xuUCJWuFP1BZ0Y+8KIRXuai2uz6F6fhTWpIcIovZ2dLjOxVvEhlWQouCChDdVxeBre/UpZhkgKSuuJyISmuvAIgIbB05kSUa/nB8o2JqfKMSWcCprZDYVtS578Hktmd+bWeHS09J3lT9XQwtBKQfozHQeZ/BEmcmJYlpA7cNc4SSipLFWhiQZfLooASOIUmLAmcMgzL89aDpUiNuT4W5XKUpDRpqjPfnqEluRmkxpV0ZhwlIhwsKetN9SNpYtGVWW0JX+a918AkS6MoSwdzRGNcFiYVNqbqbtA0MCGFyfqz/pr1FzqUF6k14ywDIcK91jJsTaAkzAwR/r2J8IiAESss/UrDqzGiICmSjNuSbXoelufbnhOaqHemJEcZnsSXGucK0wN5nsAUSZRfCJhOQfUhzcaAplxpMFvSkTLOB0IqXs1/fP99h7I0N0mhiC+QE5ageXUWW4JmTlsKSSx7T1RsR5Slgzm+AYYMopw4SVJZGpiwpUQ6pElzvbJUZ2JdaGlelCXKXb78WKDRisQJV0qupJgzmSzxsCy7JynFCJ2kIwKygPMjfanNkGxhlgfsWkxZlqzkpBn25sUm1C1J50yQRN6EYExIYfrlB8sZs7FRbjkGw070/44BzpwZP/DAkqVlboBjJpJg6aRBDpoNIBlv04EzC8siM5xSrlpjO9BjebhhmdR9bDlt+fKHr732zjvy7Gy5Z0ymTJDEDGgaomBppCwvFJYXASZZMsoBc2g8SJaUSaB0JZ0ZhDmTJUgCoh1sK0tJEpM6XoZMoRh9NpHHlvTlZX3F1D4+y71Zx4u3LFOQL7+z/ZlP330eD3bfxIPdT9SapEmYwtLRFKDrwfI8pQmOmGpMpelLQWLM3zE30qQz2okyFOaf80pDUFY4iILU0cSErrcgFWV5BOXi4xvADyu/Lbs7O1vTqe5n2V+CZWuI5U4+S+WomlSWH764bdsDDwXaJiBlXYBlfliQsiiNc8BUmibGwfOiiy4SX16Eoc6EBKWwHHCNJZeFezRRRp3pIvyjj4AyLrEkNoWpNEnS8WxwubIhqy+Jsufex/FIt6Wtraeno6N3o4E57byHeYTHchdh6XAOL7sZLF8XgtTzasuA5RUXaJMpirNUkhe6IAdOgYmceZGQxHJFCPmycWrcOZErkc2VLEC80siIEsvKfG2PKhTn+J53UMRGklTElpHPGrRtsSwpfNaALPehLS3Ld9SUcpHxxvOffLJJ+nUspYmBHT+A8UyFySA/r/o8lHOw1GFQSqwbjtgp8eUORne4v0wcTXhZChBRxliq4Eod+k1I1GLMhsWKEQO7Z8rM58foZ2CMMQecK6EjfZZHePlyaO3N0MuI8ec++RQfHHwNdQe6drkE+bVCU4lCrD/05XnAaYL8QiwaE1KWOlwJmj/I4u3XHT04UvEw1ysNTZZZpO/4Q9gcRMKU70DT/zWGosTEYrKMVZ5n023NLXjTx9qzWX152WAxxc+5KUtqet3NMCYmpL3RtddeqyyvvXz5Bcsvv+ASG+nGmFhnCs4zA5ga4zbOAfRCI1QfiM4EzcY50QOPg0pXZnUm2iF8Y21pBZwZBwovYoEnJlyJGYMpJNWbbNL9ZEmWVDfe5ettb+8uUo3Sfucf5rM8spgaqFeW2IyuxQRIHWB57SUKEjF+DjYJ8zMvuNixhM5DoFNAqT07WaoxG+eA5LxNE14N9x0KlPlgaoRXCEZDk0jBEcOoXFmCJnaNbqsGTA/mQt+SuRoilvEtM94R8iCf5UHF1ODYzUbWm8vhS10YCPFLLr/kAksTppRdRZjASZrwpVPgS0xV4wRrOInyOiOHvn1fvnS+QkSOFiWmJ8tRMApMLAfTw9kAfrltWeSGY7nRY7n3Xh5LXGBSo1sMSehmmPJa+FI4AiT2Sy5BkIspsQxG7IjyM4HS4jxXaGqk05jXhGjKwNRLy/gFMHJlXpRP46KtsaIU+dLArJAh0wY4URqcIFirNCFHUwa0ULZjZcg8IcuRx9mSLEc8loeTJYw5l7+ZmbzZyQY5gAbevOTDd5759PlPtl9AKVJD08JUY1bTmLQmvWnbIV3c2Fdm19+knVlsplMcxq1zITFuEBH78t0IkfRCzCDDVPlscWFfEvu+1dIOnaKkg8qoXTE6jKLMVFst2moZ3aYL0xKiHTpGgsgEQcSdxPN/zjnfc973/b7O4DnL+5kxN788//M/57zL+fPXlz83lE4E6eR+gR5aypv0o+RoepQ4xIVHWN5asOX7b4qlfBnb8vyhfDxVT7CMFuT5mdvlSz9ckuUXPaOtU1vWcR30QcCIAh0PlpDCnCS9YpZKQGH/N2lOLRxLJvFfiJIRnhHfrxRKyaPUaGnF5A69MoTWHcn3xV95+qXXVr/BNyBlTHIUy7mI5aEFlpqsa4KZdCZ8eQEW5R0fgKLXR6dKyEEEaYW+RDGGLqUnfSmYA3Il5X9vy5U/f/+OoTzj46IgMyhvtspPbl5xC0pSdCUaTwoEyVtvZXyv9W/dP/fKGn5YXUDFEtNL6ZDopWdO1qW5ewNIa109Pa3tHW32uLVIfrQFgyYFjqdeZDS9MVk5ZC4NtkTJGvM7RHjBlZoTbWus/OVXoHz77TP0nGERoFCBZUEYMSOM5xpJcoQsvu2sWitH3npk8zNkyQ8wP4fX+dY2t2RsOR1PL/cWy/QEc+D+4Mqu0b7JjnWOojh+04Z9I89SoS5rosKcgAmaciZRFmDO5otO0uXKEvH9B97fAUo+GFcKp4PoUXqaBClDGkuLbUb4rbiGQ/yhI997Te+O+481rl7zRkuCJZ40kHYXyx3txTOEf56FO+sEOblOmxsPWQPFLd+NnnqOianc+/IkFMvmivOlS88GyKVQ8SHzlG/JLj1i5raRdH5/y+L748cBkZVAWSW8mW4QL0Tvv3VGlKymG8CRlSJQi3GCtI4voaxd80rmmwbPvLSmubPFoTy/s4K8WCo0XHLA3B9/RxnNBrKcfMiLHL/5YOrH8Z6uc6655hwvYLRGW2LQZCoXTkAkS1yppDM3Kbrlym2hNFN+tf5tkPz4LLQL0RFkoEoBInDaJRZx3nCFFRNJWvMcrXiBJRoeEmxpeXXNa+E7oor55x3LteAUtJAs5cvdF3jK1s0w+UwFlN+0dUyOAqJ0jgFV7kE5Hv70AknrCDIFk7IIj6bnSkEnbCPp4BX7r95+G9vHRpIgWShDWWhEiUpbFmTnDrDdDIxWJcY4OsqcWX9k/dHUq8+//tpzsUPxNNH50Bxdx6IpUdjB3Mv9HfshsrS3pZo+mOqDG4Hv2SRJKjEvIkxp6fGWgEQzdubsmKZBcub8aefPP3jeKFBCBo+dI6lf5lD+uhlVchF+g2MJjFZi0Zbem7RlfZhbGtKWlubXX+O3l8Wyn6ic+w7VcKmdIv6t392Aevt6uu16PWQMBVMKxrwIJSJpzrSpUUApmOjPHCBH12nrd96k86sdNwqUJAmO6EvqZrRsjNsndkETwkEjSRGihINXQbK+vh6dFuKd9jbk04hxQ4mdDbIizMPTLA8LtkQZWEaW5EiUaZgyJiolX0oK8ijO0T5MLBu3x5U//2rHXPsAjx6CZZ8BSUv6RhlFXgiTzhRGVJYAEqX+PjI0nolp+nRLZydHy3hnI4+dDbLUpGjfvPTtxBFH3HUXqndllmZsTCn2JWoIcRmTNGdHojuOocyL8vs/6Mr1jG9Pkj0uRXEWvs51HuoNdKSEk1ueig5iE0YPEzTrCyJIVs2HoOGNorVw9zTLA/NSxcztR4BmBJNdMWMGmBblnqZ4AmOG5mmX9ROjAnxba/A/YUoGeIQyhHpG51k1gibSBMu07PAWOdNOBbVKkJB1BZRoxx5dH08tqbkCK6Sews6GVuR5aeheoZQxny3qzESYuzFTOEWzwFILHmXweVH+/q5QCiarK6hCyUKFa8KUGi2fIkfZ0pASJlGiEiUbWKLGLAdI0TqmnjTLA6K/7r+fvgRNOlKaJ8pPtBQEmMSpXB7TNKCXfUqQCnKoYr6R0pFc//YZYimginnFu0gKZYIl5M5gI01jeQdR0pNUIshlS7EcyUuHB5YK8v3y0lgDWCZ92TXa2telqZFYxjBPOglRfhJoCqdElKf1y47hxwmflTZlQHnm42cA5uOoMcxQ+Igx4UlCmY5yeDKwvMMKUeJwaom2pOrgS7CsQ8GGRkA5HeIbrWLfQhrX1voCGfPbmSMIE8Wc+Wxv39Q6TNrbn30WNE02x5RO9DBhS4BEI02PNAlzi+ZCmleWXn6/G+JbDP1P2ZJvV6LDxTtSVMERJNlTOGeEAk3oDsCkQBNdMZZvPPf0850tdQazjiCptXlp4Z4pW2Jrfc+FUfIZQoBDDPKuvvZ17iMHbQxysgTNZyOaRHmi4fQKINmL5uhxiWf6hbJEfHMqBJQGEJVPIKUjHQxRSyrQ9DBJkzDB0FgSI0AC5R0ZmC124LhtvgEmTBlo9uelQ33qkXbCtlte6kfyMV3fNd7eFj68sWTSgt078xw0GTPQTMMkTqE8jY+0bV+A//TnH3aIPV0ZlPDl6fKmt+XlaFmQ7OFIVOuo21yPo+0A1CzJI+hF0qOs63zyKMoOSOqc9iSxSZSXDtFwqeRzcF7a3ECU3ZN0JGE2tY93I5ejUiAaYC5GA0ZjeZKxFE3UBM1wh0c1X9KVvxpKuvIUcjwdDfzw2Aw58sL+crE8jy2t28677YbLcZSDESTLwPOOICYesJQ1DSTa9CtHBeHw0lc6HcuhjXlpb7HUgLl/PtLEtcZytGkJBJgdkwAZBIwmjZiLfZiTpqQw9zC/kyX9taL08tsPldifw+1fsmSFK60TT6AMij4nxR/+J1CGY0bQsacpJWKMSNbeVwuUqHV1LWtXvwRzUvhYcAhx6UClHvly99QMExpfB5RNbe3jXZpkWis3ll09fT0B5mIHEzEOlQrz2XCHhyw1RS+2J/TDuyGBkySEHiwJlSzlT2v2liUrvSmo/PlEOH5ASIFSvoxwHnlfbS1Qugg3AWhLM3YzyfM5Z8yxvLSXbBlvFcUD5kCDj/G2ydHuI8qOAEEJIMvPGZ1at6StJ7BcDHMCJFGKprK50RzY3p2hn39/USjJkiBPMZZssGagycvlVvXVniAPlV8lhzefuAGdwWQ1X6JJsGPn66+vra+F6muJUup8A8frPvn6NDc2KvLSfkVZ7nxI+H80K+ru6S3DpSwF85zx1o6mhx59qKkvDJkQjekUxbnM+aFA8qK0k54JEeXL3pVkaT1g0pans/G9FkjhXVw4deAJCtZEpStNnqNUe0ftfauPOe7TV9a0wJvGsjaGef6xLc3N0yuMZXNeWsDZZZblvolZEZbkVBlBloGgdbRlD+5eUE2j5YsFEzQzMDVp91sa7OTKUvEdUFKPo1qzwjg3lGgQwxym5JvpxVk6lArygBLd3bfdTYo4zh+X2je/5depX1rTUldLkCJpbcX5K1ZYFw+Xe2i4lMBy5z0qALEij4Igt2UkZca8HkQ9yt6+MEla0taHkZMQrTvRfqRYhmn70uMV4Z5nvsSNCB/fL5MkMg8gFlDqCW2CJMvwAyRL0GSjL9M8gRICSoOJcfJ1O2aCONe20JbsyBI0PcrpzcaHmCoqFOIRSswwdz04T5bUSEOBZRlwogdPkmwKJFt7n4XKGeYO5onosmFOxfdwIQV4CuUPQPkuTbke3DxNGpOhTqQRy0DSmlnT0WTvENKYhjKpu9EA8W62uyHgrK1tef41f1zMp68931InrUCpWwGWaJ05IiIqzYjSQb53RUH5/DCDPPC8y0B2jXcEkOvae8rLny2HLKkvDlFOmmIpmh8CZbSbXmJe+fMfLxaGSlA0gSZK0OP+koEJjGjsAfLSS4Mfn8AvP1iykSMKeoooTRgjqZbVGwPOVzqnCXKVoQRLQwn105BeB4plJJsVLYxgDtwbs4S6LN9gtonSNtpbXn59uZkSDaFthSRZszS/GBNKVKFMmfIxoLT4RoA7EaO/0J6JNytxSYumLJw5cClYFkZLu9xJlncCJ2pCtUFvruVZmjTnmulVxFlgiTYSsdxrZ7DMouTShxHu2sj0EZG6+zAFclo3OX49VE7RnIufBUmhLMS5kvlAcmuoovieEEi+iKESrlx6pkRbWh+ABnN6opIL8ieAE1ENjAbTsPIKluFMOxRIGH2ES81rng44V78xXbfKtMJrGHgoI6oQLxLkYbzEdeZaoWxtbwokW3u6y8QSxiRMRTivXoHl6HGapSvAUyh/eBEB/glR4l6lUFolzseJk648E0mISsHERyiswplgacU6MjVPBpk70zAjmnUW6q8XaL6yts5IBppzQBhSz4LdS7M8MFchDSzzIHsm2wLI9tHu6y0JLVokmhbqlsJFEyVBk9MhpZ6KojcaX9RQqeeOEkANJzqFO2I8401+bZOfIo/lsXqSkEhmvVm5qraysrK+eTWyOvX0mmbihJDFK6Q9dtWtnvSAuesBBt2X3IzbeBttc55s6piEJYOI0gsoUSlvzCTMsQJIa1w4ZqfnkEO59DSvkjyBUbZEd4pAkmVx3SmRJYo4NtY2FlB6rarvfP01h/O4jaubvTGHciJUcZBsWTSTS3NXk2WHJ9nXVRYJ9ixftEiDplDGcyPuHH1XmFOW2hn6HkkHrvx6g0N5poFEScMExVDA1CASJ6s1fFeKLNGyJMlSJNkVaDaiNjbGMOsqV6FMv/HSp96bK5xiW+YOnI/lngsi6psnyHKyCdsbU6OepLQIkjMh0VSUQ9zSYNXCMbXn++JjHCqJ8mTvSeLM8kQBUnSnSERauPALclmWqBmRIFGiGEQjiQsoguYqu0w3r37aJknP1BHlTGzLA5TFMzAxXd8jxu6mmF2THa09uKZIWpQLpgJdYe59ORA/ZylXRjcaHwNK7mVstTtsCnG5UyjZFQway3wJkkWVBdl4591ojeQYXFlZUK1hBEuqcw1ovla9ohosNwmPsnjpIBf3sI7UajIOcjrz+tiZiHRCDAVChIOitjOKJJ3HiJLxvf5kp6VnAilQWk3izE7gw6dR+LEzwMTFI72E3SV2ufMS4MMJTS9EMd6IM2sB0gsDZmNlZWOlhkt21SioncOrqgHTMo/wLDxwfpa7LozBTyD7SEbSmrx5fTLMuTiXyPLHvOeosTJrSqCEK0+EK8HxNOI8k/4ERs+TTdI83kiyEiFosidBXFDw21heYofaBZg4RhksHcQaa4BaiWulSDqWAGkFIktkHmmfnZnFS8HceefDY5ZDVxfxZff4uB87jSRYSohyOZMwTxqJJpaZsfKn7/967MXHMFR+veGrrScRpQOpp4/iWC9m0PC9nsvct85Ikp/d5OeK0fkeJ9pdCprEyYYKpDWQJ0pfBkd6U1oHVRrQFdXVq/ojljlNLufJPjkWaGAiG+SjHU1NU1GUJ2FKDqa+0qbbZEo6MCUT+IaXX966nk8joFAu2g2iSe5ETWYiOtL3/HiplUtOIUEv9xswrUo1KESJilJZU1MZND3X34mLYVzF6jX8EeAEPHvtKpalp5jS0L2pIB/v4ARJcS5r2iVGaeXD47Rjmc8uvx3KTza8vHVx4RY6OgiO5MVLzhTQ8B71ZSzsKAczQJQIUCRhRZox0DSFGH8Fn00eW1tXaX6UVkwkbHnI/ChhzF0TU8z+ZQLp7lksEUuA9DR7Jvu6iJM0JWxpgGQJV/7qUX4NlBbgnia7oPXE6mCGJvnVpb6CZATRXRYRTOG8EcUCnGrEYf6kSMmYVfxU28aBaTgzpjnzcIW0UCG+fdlnZPjqiGQrSJqmemRLlK5WLIzagzdjlNjS0M5QJukw63Co3OpurklM5sZRLKGQ2yn6ks1ASiCJmsXIc+2gF1B9dN/oIPaPfDtsRBXj/Z+6T3qvHq6O1Z/IPFo/lg7ygxOL8kHtFHU0RQsg0eyZsj/vcCwTML87Tmvwz1JJx5uSKE8USsEMOBXqkmgSZZpmcWPqnFoKvxzMTnt1pH+WWOFJ8+XE0Bho0pudE7JlYs2jyWUplm4XM8dCY+JRTKq3vcnvExlJqbvVbXxMEiVYiuao39KwAG/KJB3IhsoNX8KVYpmlyWmS3rjKShAFM1Q2oaSMIkFCBnPYvVE7XFNTRWfWVIHnxBDinDT7WwLLTUTi4fBGz/wsbe1ziEdPnri5S3X4vctuy0Ay5bj/8z5gJMwoBW2mK7VwjE0J0ZQbtp540vFLDebx65euJ1PloIyCIQPFM0UyRdNXHs3kgpu9MEKFGOfXxD4dmOGYWRU0PHaCi/Th6qrq6obqVQ+TidOCvTW5LCXLPgfmHEdq84xjSfd1jCcn7N19zpQdo0BpMF3vaH5YeLL/hCXJG43OlC8SJQKczyK4lwVSKjDk2Gk19mP0oyhOZ0crQhkrjJiNQ986a87Qk66gTsxtJMy5amooJ4t5WwpmyeyzT+EfaRuzdV1Tx2hqJdnjTdm6CCmIIkxO2stH/c2yMEXXjcYYpdmSAk0405QMeA2a+oKHcFqj0jTx/U0jeRlJuqrzk/GTtlxeU7N8ObqaiQFaM98/UbPcaHpVVlukb7QE1NAw8U1AYtf9Mbmcj6QW5Qv0j7CN6VJ5b0+3ZuzE6dN6Wy+nRp5mwZmM8GyA05R+qARK3amkBDKaIZGmoAqlZC/8x0RB0T4bid6DhO6JSa5EW37jSgO5HKVxeMS9Oz8EkoUwB8OJof7OVRbhDbClLLbXnkC5bZaar3ue/RwxJW/L3imX1ie7CRI1VvmWkMKPI0olHe/Kr9/Z8OViuJICRFZ0GYli5NAAEKUgfG+TH950vnTiyS2X2NnJl9wEiCjWr1wJjqigaOJlYiB/AhP6RJVUjVLVAFU3THzkiVAHpdc8pXfe9ueICVk/gq23tGhKN4KSZAbmKBc8hnJJcqUTUH69YeuizE10Ai1FE1021vFDzrxHHysOV8ADSLrRiv3GMd/05I0rgXBljUOJftiPmsM+wANPx3JTbEttAm/bmLvtk4s01pBBOTrlwruPpgw0hbI3rzV40pQaKsujG5WoniQvVrJAKeGkSBP2hO4poptQKcc0+o0gB03glCZcQs8PTFdJjmTDzEcxkcNky20bc99cLLddJPUiEVl4t49HJHn16mKEo+abons6fwklZpWL9eCrB4oilMWVBkqWRHkPa1GcN6W10mQ9WUqYoudtdjQ2POFBsjNtKZwXjn6PPbcXJUfMvdw/ZcnxZoXEhQ7nmsZPNOVMW/Aw7TQlJ5VCuWgr76uhRiyX2lRTmh+mgOJrZwBa1JziGIsg0VIokcJpTY2aDSiM8ZmHc1LF/ttjSy0k915QyphdfW1uKTnenSSpZD7uH3iJXPmL4tu7koppplM6W1GaSaAkCZZUEV+iJEnKm0mSVrHe4VuhtGYDKnBiPgRbSgt3236UO2RGzBFtsIf03RpICiiLRfgHWjgq6ThxqCwrT91AT7gTCE8KA2dJf+rTKFKWJiA+QnLEKZiBpWgK6Ey/S+hzgEmU0HewpXSIbLl9I+buOQm3d8Pe26gj2d57RJqkNjSn3LwSkyE93UJxW+jrL78sB8OIppWg9aDJojBfb0gzM3h217HgSo6epx0wQqq48uiwi8EUx7GhEiV+iCRqwZVXXbXcStXw5jDXBMhlZssEyr1oS7Lc3hFzj1ykzWGLo809vtGtKXvGl+MjR5k0GfrTko6GyrKysOkelLYmR07JYSw696SuC6EOjihBF1sxfKlj0kkzwLQCASM6XKqszIw5a05UASVgfpeLpbnldo+Yey5MRHnDXQWWHT2as2e1aDMDHK4MSYcchVKbcjFNmZPOlDUV6MVo0pfsfIhHn3lHuwn/XTjAMiDFdflKLwBEA0oWCAkIRIc5ag5XAeWyhh8/SthSKLePpdvHjOXvVvS0rWuFKbWY7J6cVHhbpNs7PAxwTSqdXNb5crEURXpgKZ7emsIpi/pNEG9IXtiDIQmyEOxN15GlxFBfOTc251AaSSAMAkf2y5ZNYNTciKvBbIs5LFAS/xcj5m6YF0naYc/c/5mK0xCf/+UUPWPKT0ByUcAYLlmYwin5RabbTcKVOO27cWgmehNVokEdSbSkbA3TP3jVxSuvMpzU7Ni3Qw7qsquWLatCnRmeAErA3JQYLff71yjdvCgXS7d+InH7cl1XNGZuTIyVvxZHKaWTUBZoBqk+5GE4zyZS03UopHkyQBIjCmtKN22ypeCmlVeuvNhQGs3lm/BU+ZyhBD12xMj+o4QtD+QG0XbD1BZHOspT6rYbPQlfdn9QcKVmQorvRembvuwTOLMrIa0vdT278FEpVHIMrsQviTyzGhwzmP2DoOg12M+3QGedL2NVbcn9D1sqle++IJPLs3clm6Zgy6APbcGTX+IfuUqj5M4matacpSMdLJNxjoYClGiGkU2fd0dNwswG+ZUXzxLmlkHD6IAOj4BlxcDw8jTN72RLv3qELf+FtCmcizUwkULpJu0RyvG8uTKgfDHK3w4lYEIxRauKdK2FirxvJQkrCKJJaZCogaRQojmY/QB3JZrpw818e2SIHKXBb4oknn8Nk8a09CPNhSjXAghZXSh7NnOsdDsZeCUiGioNpSnzfIdykCSO8wElRsZ6UmmcpCmQKNDsWM7GzOVXFnDODlQYzDlkHPGsshwu7bObbPmvjXlQLhZuSgqlm7X3RXP2rg9sO8Oh/PVrovRrHaFc5FmKZnBmyXFTNFETLIkyrRDoD3iUDxQwUsSJ6py56Sr8URgzN1UwzmcjmB8mVzx7/uvRMt7ITE4ytWHU08ShsjfM2dH1dhQWjr/88QkYFgLckww0QZL5nJ1EnB4lO4i9aLo+rSxM5iA78Iok7UBQO8cfHRVg5nKWgDzJB9GGNxvNjcP3WzJHd38S5YK9hfLfs8xGeXgik2MlUOpuWld7DuudJWbKvzd8TZYoQilt1bOvsfQ+iySYkdIcMzR9JrLDFtHxcO/rAJMcJTgzZ858EIU0A8zNE/cDJDT4QS7WAbuJ5X+CuX8utS2svMNVOQVf9nY8jIVjkyWdcaB0LH3WCduaMudWwszQVJwrrZekKZ4omXgHRDT0F5MmBJr4lYKZy20avPLBB42mdfb0VX5k9n64EurIJWz5HyNc6Yebb9KIf7miq42PHQQB5UMnuAD/u+vLDURpJDVUUgp0smRJx3maJolmlIQZMrpw8lQ7XLwIEZGe1OAIszkoOpz3owzhLvZV95s0WCa32v6jLwlzYRLmRDzLVCYiSjNl95ewpVB+KVdKivTFWRHnv/WmsyZPX+OFrjThF30pU0oPDg6AJcZMknzQIZyYCSg/SubwXZDDxfI/RvmC5JDZUATl1JLcMcc9ZCjLyr5khAtlWTbEC9ZEnyZprZiKw2TvD7FDpXglTTTAJEmUNElo8CNOjcAR5jSCD6Jctcx+DbYlI3z3/2xLPV608y6cGEn9mmVqfvTwcZhX/vQbJpsFW4KkR4lbba2EmB02qQxNqChOMSVGCTwJEEALNA0jQc5u6f8QKLNADeYAszlIOtGSDmUyh+8rlP9RLsq5LSwNp2D2YoPjBMwr/8YdINoSvkQxlG4K/0975/PaSBmHccTqYcH20pZQuku3h1x63KMiFUT0nkPxkoO2Za+Bgqey2EMLvZf8CTlkSGBymEzXFLJudkMOQYiH1rq0IMWDiopXwef7fd83z/xKXG22P1afyUwzVj18eL6/3pnOVPXmjkx9aPVyNFnYP5bPxw6kPKtYt6hA0sA828u/OP7ysyK+JlEC5vO8FqAEy8/7e4k5/JIsIc7lIwdzHyjz7wFlU/pM2BIsXXyLGv1VskzDzKZpeGYEutIESUMU3nTPeMcmRGNAjTMfy1u+25o9i0OaxWIRMFF0juHMvHWmhrhKx3Bqju3Q5Vi+ObWcj+krFHO6sra6uvf+6k+/+tq1G5YWpSosy50ypJeEKZsoq0HCMVPAKJuRwQmS+KSE6nO+B52BI/gpzKLVTsKZtOVFHOU0u/RLG3MqEeXPvxjCbMCVu5/s/tm1neaz77777Xcb3ypfFpPqTfk6ima2NxntWUiFpO7ui/rS/nQqKsy2GPPpcfHLTz8rgqO68ksHE/uxganOtChP8zHdneKSxqVhzt7Lj1gyCkHqo2969gwh/uznP/745dm3K5ZloybDZteCHeFMN6Wzqsft6ZAWkkA/cA+FNc7UQ1Tm/d7HhybKi07tF1hwE5SfFdWZJswlwJUmqntMi1NvsR2aAMzpRDF/RJb73zSHKL999usfP/34A1xpVTERzsuU2RKSYIpDMtIdznjMA6KB6WjK6wfs+4TW5AcOVOtIohwQBSfM+X0+L6egKR/AfCFloL2zDZDbj9rV/IRmx+z7rqfYZcZX2f162fNXnJ49+/VHzD6Vb91FyqZGuP+AGgVzdBniTxz4RF1QZMIEQrNLDVrDgTDx1vnBGVgeHRedcJp/evKZhbmzvSOT9/f4CZg7O/V8THPSWfK6xCRS5mI+AdM6s9Ft4OiyZRcov6mrKxnhgSAcbiO9+a727hnW1M0dsH9cUJTEKYXI0nRM9W2g4In3+ANnW4zptRnje/m9vXP9vr0jh3brov1oWzTo5+NakAgnyEnA5PIb14yS+rb5DVRvrsQivJK6wWN0TR9XhohVHxJJX1KmNQJGoSnbGjJmkVHudHEIlkdPAFE2aGdb9Wh7R3t06m3cWvDmJOoOFzkkZSaK+d7Xm6lrvHVhGZrHQ0mE16W1tBFOXyrMbmM8zfR6XOxCcEGURXMAW4IlDkqziENxrYgoh0yUr2GXpmfvRRscYUxBiV0P54qSus9kORmUXMuMKXnJvCHoymHD/Xm03y+zhsfvLmz0M3tO/vWAMh1d1FHSsaW9OfD2j1oCElKYTu1TreVFpxbKjZ5vU0BZS6DMTRmUk4OpLAEzUcxfJGD2BJ1b1XQRXovfcmRpSgNfHRPqOHC9OJNo/AHv7qn5F/IutoG8pjYpjfJz06evF4uDE1BDCo2xbJtxh5rhmuVkYfKuTMKMjubdsqy1+zz3bJeezpdmrnzwdyxH8iyYI6U8heUR3nx1jBBP0Rx4YHl6UXTSqM+f7WxTAw7hkQs8ZDlJmOyMsgpQUNV7OJg8NeKJMkpTsJc7epJNU3cmTgVqn2lIhAQ5pDmo7+/v1d1bakmyCJga5cfr60X9aGeENnN7XTkWgdJLocS8M3lbjuqMnvJujlCTJW3aYYSn1FPHmiKEfXQD73jacf3AuhIbRaRQS4w5gC/TOtmDzhHhskHtQ3FqOlfyWhmT5YRxEmZMT76gL8sVomSXHhNn9BBfCHNktLsqpIeCQUk7JqTFB2/x35Cva4WoM9eLa9qxt9YMyqKBebZujTmo5+OavmtRUpMOc17/SY6T3VpnheqLTTu8eh6VWtgfNpscLmv1MIWTLNWbBxCeOFMo+D2vB5pJnYPl6QCvpNYYJ0rsgyMxYnFt3al9cj4AS2wI8HzClQblpFny5jf27H93B5yZwxvu6rkfNBu0pXDuG5QuzpVmT1qoKEcLkzJBfoCtUNndPw0TIOHH7ilgXoDchq057YHjuWlqORy5hg0IRdtFRVlNolwCSs47k6dpYN5LwvwKNw1TjPC+a4+k06xy/OlWhZkjaZslSPvTMJExcQwqHcI0R2w1vB2w5iCS5sc1aYuUJN7wvTnwjrwAGNdkN3N520S4HsET8b3eOcwntGxRvmKYaWc+/7qU0bVXg1jn6TmUWuDrjWjrbr42lXGqAMk9IhWLkkwPKnjZolcoHGDbiBhzo7MPdTYKxpgXkj4HgAqWttwcDhQkQ71YsVWHSufKVwRzljBjjSYVlsVhRCsuHZZ0sAEcdkjWmOYX1SDVKFXkP45zPMDekfcEAmQBryCACu6wVgW+c5AsbBY214Ts6QVIroPl5nrrVOdygKQGtkOnpq0rkzCvJsyfumUj3rjlNYhWXDqcJStyxuxJX3bKrPyjWboY9z08uHhwAJKyR1SRIA/sm/wHhzjzBptWa/19RPnFelT9lCvnR+fKyQ9As4spmI+PGeeAAnZEWxcaDbvioWeVrA5eFuh6DPoMloSJTx0sKwdQnGUhKIsx8U1YbrbEmC3BiG0TmVGMuU516nsjys6rZEmYbI2SV9Q4AvUSc3oHNUgF0ByHYiJk8nxAlkmcNbCsbXwoJOMw+4JPUKozD8WmzpeI8v0Yy85pPtUMXQFKwtSmneNket0o6IVE2SiL3x7YO+IariFKO1OyatetzDH2laVUoYRCsKwDIxTH2d0FvtbGJmgCZ3iq+VONiZS5eX54NhimSs46yRb9Kli+4WAuE2ZyoKSYLd2UHkgu7WSxDMSwjZQvDcsHYJng2UXxqTYPnMhyTWaf/kBMiY+eHXY2hxoAKD4QUdKVC1fgyrQz59POfI44T0oHxl4s4KsPstTRp5uN8KV8MctHeIQpdiioopAHDz90JKkOjHnU2ShpnONM0JIlyrk5dlz9pmbe4bRzBSLMBa5n8k+qHmXakq2mpwE/fP5JrxmbLOsPRvgyVtyBEvJRfFY7eKC2CfFOr2lRlnxpi2pCEjxLazJWHrUdypL7UkujvDd7Ra5Mw3xnJp8uQbypkNmyEiPrBXaybPSA2Y9OlqE9yfKlnlmYqooUH/eyq3B3vxrE2qIBvgAlQtlzfRG1HlbT8b14hy36FYkwZzNgPo+vtndWoeaQbE3ADO/LrutVSqOml76gQV+6eVP3h3haMSTFx7MsD3raIW1gA0IfYb1bUY+WNksl7YsC+eacuV45zacElFfuSq4avXVnOZ/S3mNjTfaatdhAVHZkdTCvuiAPeBIXY9zRFIFmAHzlhkGpJq1u6FsXcV4HTA+uBEscB2fCEgwVJ/aQq0LxAs71yisQUZpG887SXIY1nwy26MR6r8mVOBltuJhkMiSv//YbY1hSsKXAbKxqwjQKyoAZaLhD2ggF4GgU1L0KEELCMmCmpGYWODdesdi1v0OYVNSaPnYO5tEF45rWIVuI+tFxyA9DP5tlEIZqzIf4yBTZe2hVxUnoXkrt16V2g5xkTKdNcwyxKHQjqk6UpYPJ6Zx68aS9ld1qek3euWlSqYHkRUtPv1zuZ7JsemXevFDD+2/6jqUkzD5eGFiSk1KIID/sKkg5UEE/w5Rv4zL4daJkBbqTY6cZnSlZg7gUF02emi7dXwjpWpKrQ1r8G3GWbEI99xaHUE78SJBXA3uytVHd392vlR4qSMqv0JTxsdG2ldcBkzMQYDLOEzQ3EyvEUnnYamqGHII1nTqoQsEqlOnLbjnSRqFbx//P4tN1o4pzaakmxtwqbZXA02mT1TsV3wbl9YlxPsu1jtjiUfxp902Pf2EF1W3yZEsvJGFSNwKlWQJfZGWkWTdtlMFXkyB/6NSt4gwkIwp40TaqpTuugF+vGOdL05k042mzW683eSYh3mVNF5O6cciwXMnIl8JymAp6mmMFJj7Bqg1yvDQde1ivBWLLLZgTQi3PJDk3PzWsOtdKk0sdHIKSNE/Sl9YY1fVGtA517Iniq5oCn2Qp/143PnaCpOxSyVcrLmGqgNHKZ8mJKWdMee0BnojzKVozpr2TdimLpZiqwvA3qZS/8hK+XNGtUYuW+65lLtZc0Upe97ecMZ3gzS49mWoqYcqbEN9ODuYCS1CiQdqJUaQTfXdmph42ntrSG4D0Jcna6+6+udAOH65gD3URbiulZu00n6nc7DC+bwpMjXNaM7sKXbBDIjCPNZ0BD/WjvVPUlwjr2CXNqssMW9j8/u5qzX+4he9UI2TFSZhyfupG1O8UTpc1F9hrJrz5+EIHS8qv1boMeC09UZaVGEvO92JgkOWwFMpXVbMS+pbkivnZDL2jfKamF2dtfN8gVyZgTnFAT+qr9CwUHydjPX0nm6XeqAB2/F3PdvuCD8JxSLLHzjyVKTW8b1SqTHVHbI+y9PhrmjN5z0y5MWTJQpRi6Xtm8OSzKkLDkjIkmxxxssP7hmXKRNJ0WXOeE3ranK1Mms2a1yOvahZLxv9uh4+b8tzds5S1JNNkavqetZnypqXKzEBfYLOZGeullUzRlyzqZMnMGoz/z4MeC3eaZA6J8ib1lGN7TQ30uwz0tJ4ePuGfVGao61VDuhThH0YdXOdZpsOzHcmrY0B580lCDPQ7i6SZpcdP2j55jlO311l5Ofndnpcfo7fn7jqSN698jw302eXxNJ+iTyquTEyNSv2Ujsyeve9M3aiR8R/QRKSjQRqv52fn0nheTn6ndoYUOV45FG8leaNrTvrvBOjNuzNs3kf58/nZSavT9P8NUb/ZrdS8UzbkIyvO7fNkzJrWm6zp44B+9fikdTwo/QOgzQ4wjg1rdkELUyZR3sQ555/QnJ2/x8Q5PoE+P3x8dt7qdINm029kYW34zWbQ7YS9vnd4ekSOYwvO/QXrydtnSiHpaGqko9+8T5ovDfXs/Py8Umm1QqjVqlRw2j/zDg9fAOHLa2Z5duoWk1SRpsWJxPlv9VH+X2o6946AZMW59sXzS3oTMDVxLuRgzqvU3KKSvPWeHBJl4oTmc9Nw5xUIWRKLaja4b7cn6U3SVJxw5/0roAlH3nGWvEX95MsQTeB8Z3HmFUb7XG4JoU2QrxNJFWlanMtz+VeimaVZdeRraEmH0pnTVSKN9gnbc+7eEhrJKMjXIU2OkKMJWZyz84v35i4P9O3pmdzywtCQr2lsJ82pXZJzJ3iqP5dzlzHo3Mx99SNBvp6xPcKctKfz5+zCkjiUHdPLmHFuLrd4F3Ykx9c+tFNNkgt28KQ/tSIt3F26f2+GRLMhSkjfX3IUlSMNeTtWeSenFFASJdb5pcXFxVwud0+Vy91fXFy+O78gjSNlIDqMr3eOHE/TyPEEUSIdKUJ0GP/jHCNAyZNMAdUoxc8iJERi/C+kyLEo40DfINGxchD/t+OIimSJOqwEKx8n/YUR3fgfN+SYFjQlGlD0vxVfliS/m819sLkv7vfXf1P07dAbmf/gZofzX6k1ap8efBKGAAAAAElFTkSuQmCC",
jA:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAE4CAMAAADW5D7KAAAAM1BMVEUAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBprCkqAAAAEHRSTlMAQIC/758wECDPYK/fcFCPt8VnWAAABehJREFUeNrt3N2WmzAMRWHABmx+/f5P20672kwSIBYI8MA+110T+sUWQnGSZeQyqZu2C1+xxpiiaPIak7kUNrzFjH2FzPuy8mEupsjxibT6szHbhj35PyZ8jMfrb/oQlXaAKstsiExX3H55DUGQ0t0bqwwBLsXyDpe4ZH3jqsGKj+3ZhoL4ezb2bViX8Y57sVmJFbobLq7artUKxQ3HM6uxgr9dF1F367Xs7bZitX4jhtCjJelQb7cT2w1a/nY9RFV2lHnJ8sq/MhRFa4Tb0t77g406L1qLlmRr9i1akhXWtGhJvPoOLUEGQwchSG7Q0uVqUXpsxo+1awTpUeo/DnMakL51Xp5boiAjRV5S6C0Dm/i45a3IWZvnOr94OsKyEQWFi27rJQ0bUUmrYyMKtGjkJVoOnpcsPPsYdF6z0EHwRYO3eJaWoDu1jB8EQ4j59gGct/R0poIYqpZgBGG5ISpsRAZbkv6BNv49OadzFRp5uoepGk+JV3iipsQLnnosNIKqRRcvqFrsw6m03A+391qcfJhKx1dVNncPjB4kJV7vBZrSh6Pj236XB1y/axPfHA+154/wFDsWraYLZ8aqTwSq3Q6JVD6cHfUvg08/8vjtyyqkEOXF1e5T4cuQRnQfRvpdKnwqVsqnzvI9PmwdQzpRXVs7bPYmpBTNuuXVV6+zSWFpTn5L9Qcek5aV5hCl0H6BIaQWvbnAoN07dMlh2b1vh+ozsjOjdpDKKX8uXSaI5XfuHVbfQmyCWHpHEnSxUtyFivtQF6tIEmt1G18Vz5n588//qI8dpbVJYplj33obue1NklhBddepreQOrPiVHC6Ftfat709pRGZuufPpVbFW/vRdmSWEddwDySqtMrsn1hqtMrsrllyrzO6LJdWS9L/Xw5JpiZ4VLogl0ZI9V10RK15L+Ax6SaxYLenz+jWx4rTEs42LYsVoyedAV8X6rLViZnZZrE9aa+aL18Va1lo1i70w1pLWurn1lbHmtVbO+C+NNae19vOQa2NNa63+7OjiWFNa64/LXR3rXWvD0cLLY71qbTmGeX2sZ61NR1ZvgPVda9vx3jtgPbQ2HoW+BdY/ra3Hxu+B9Vdr8xH7m2BlrjTbz/XeBUslYIEFFlhggQUWWGCBBRZYYIEFFlhggQUWWGCBBRZYYIEFFlhggQUWWGCBBRZYYIEFFlhggQUWWGCBBRZYYIEFFlhgCbAqc1DGYnA/HevQ367vRgeWICYHS8LlwIqPbcBa+auvYAm0wBJogfU5I1iCDGAJ7ok1WOKNCFZUHFjSOyJYgqoFVlwasIT7EKzI8RZYgtRgxScHS/bIA1Zkih+G5YpD0l0C66AYsMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssMACCyywwAILLLDAAgsssJIIWGCBBRZYYIEFFlhggbUnli/yOqvz3oP1kerxLJkbsBYzPr1WD9ZCmpcXa8CKXFdKa+uiWD765cCanBM6sCbTTb5eC9bc33hPA1b8tN6BNRU3/YJgCf5XYE2lPhArP/PR/gvL/qCadSpWr9A/Hnk3HM7EyhWw/C59lpn8q8WZWJXGBezSwZfpYaksbbNHA9/v81ywdQfVQf8/tn1G4wT39GMyKr1dr/Osyqq8jfr9yNaSpXKLeV5bjQ377MLq7F34O932P2Ue28YpFBZb79OPKOwelWtom6916hqVGjzdu2XleVaPQZQPaWVmYWlsgbUZkqgFy1eWSslqU2n2IhvSLBsTWeplQlZ+bnJy2i601fOFpFO2fC071nxCWajb1K1OW/12SKkiPNWrWSt30hV11eSwyJ5OZZv5We9JN6F25t2ri2SX1e+LO+Wt9AvfNKmL8/o+O7qlDxHOqBLtpy/l5OMZcxA/DsuXdXjF6trGRX0U5PJj45K7pMmi/gv70+gtsjuKIwAAAABJRU5ErkJggg==",
ega:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAADcCAMAAADA8VqlAAAAM1BMVEUAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBprCkqAAAAEHRSTlMAQL8QgO/fn89gMHAgUI+vkrzZGQAAB8pJREFUeNrtXduW2yAM5H63zf9/bdukjdYBjI0t4KHz1Obsnp0INJKQjMl//MeM4I7MDaM4mRk6xo1MDB9/Q5BpYeMLlEwKJ98E5aTbMMj4F4bMCG7iByuZEFv8gYVMBx1/Qk6n1zbuYSZzFBq/oclMcDIm8GQecBUzmGgbmpjDPGmDjnkwMgdElt08aYPNcpsnbXDxADKQ0Qgyy2yatIHnHXietIHFGixpALLAzJM2OPZBBMyZNnzb7SUw9IUpCa5kNsybKGQJSjIb6JxpAoDOmCUcEKT5sLgIT8kApASzP8Le23OMdWktReB6rHLTSkXHzeDYQisF3fZmtrJRMk6PfWT5hL/wMmUgvRF2BJMlVFDkcTmmqt/VmxkDglkt/ERPHMYR/dNoHGzcE4epjNodyJkh5d6RE/O9dushsVAdODHda7cY4CVQPYGIFBnRIekOO4jEsKYgSaQ39IHKsK9lH+LGoqQy4LZD3RgIQrOuaDE24vyVHqTT33tONOhMV4J2hBtzIGiPCIIu9gYQpDWCfIjOmDJBCZV88kE/MCBY00HCRnTzBASSKsF1hBv7CwQ9qGU/0DLB7du16YikmmcJgjCPd+M6QYAaEY3ZBYLbCC9ZswQhtA33Ep8czJRTaNr/kBPcmJUJAj6VgVvZq1clmUCPLUWCLlUV9laeRe0KfkvwAIWdylNPN6zmW9JTQbQiDM4cE4TDEGU6d878IcFQkHVmX1ZznqF3WCgQrARjyM7Uj48Dw55nuUJwzZ21euR5FlYiuKWba8mWLxZ38EskBMtlHIcKNWEoN+EpRqhe4Hy1SpCYUlgEmKfFmycp/0HoXWE1088Bag2Pb0JajXVgbn1ijEnz5zbhBYK8FHZCOlVgn1VCm/+beUu5oq/JQP329KyfLLQ6cwRFSfS4gpNkLuSjzSl9QDBkzc3Kw1bqTXd9kqEFcTsOJRB4eCEvgr1C5XOrzMEodYKsGDbsPrMM5rkmOUs8s9x5EOXsRe5HM7iE/92Er8Y6gIOdlucOy+rk26CO0ps0Q5mgLtgpHPQmA3xxgNKUtMNUlDpNwe1Bdi4KU2ys3Y6+SNAUUnB9kHfI4qC2vbPGPu/dheFNVpL8PQ/21PAVOw4lqd7Jo9xSJSYU3N4rDSwQ/KLiCu0pkoWQ0WhP03alg73RBC6PQ0kqyPRa0cg+v+hb4zHLe6UvqMly+pvDvqSy3VMoEKw2l9SVbM/+HK2zN8ZPFasoNcCLJVyoef6YzXgOdNseFxDgek83sSkNez/f2qQQ/o15bL41O0ruayEcm3PVOoyfc0uMgSgKi3wfDONcXzz2xAUI4fOLbEgz8Lvsy63Epkfjgd1UB/RpHnrThPjTPOzeF8ef5qE3HRl/msc8VdQzpB6DfS3NtDrzt3oR8+oMIeKG0mBP84A+2Hl1hhDdrDT4+QwoTZg0n3lB3anjewz/+nv9e/zhXy4fcZNlt5cndBOHN0jhXm4ya7rwLyCv06YLjW5C/eKQyxIAvxxN3PvoTwcCEMk6POsm20XHf4OFshsPjCY+AgSyG0M08dfCmmHQqiy58ZCkC+IutwoY4rkxJEvuemLgX5vRF914gBQCQWhiSY7pxlCbyIsEIQwJVDcGKVxacj/xMiGmG8MG0i1hF5Kh1I0HrDEQ3Km8QnVjqD+XiwRBASimG4Mh9PnAo/Y7csN0YwilsumsbXntPVQ3hjVuKD8gUKZuPGiNoYCDgTGTbUaMWGPw1r2bBPwZ/rpWp08QA2OPcQaXavV60tQqyQ8Z4hlc/eHvdIo7rQs5+kMGvJpzgdPazEf4T+6aeiQAc6W1P7bOwFaqq6DJkbbIOgO2qedaPveh5LgE4XH/uhq5bF1ocBMuCCZ1V8q7dtQIp5ipwrWdlnODfKUeWCe0tQ2dxCUIQmPbCBKHQLAeJK4MeNjqLbf4m/A4p/K4V0rBJmzWIo1KEDZhe4FqotSOYGKtp1z24M7s4AgylnpPkN9skOL3BPW4a8fPlRWhcWSp3wjR2i53fVpuXLUOH/bqnNPO95Ndf4BeD7wJWJ7501y2jTr0G4BZWoJa10E71vUSuobrbILsc+1N+0CvH3ZV8dm1M2MiHmRc04rhenZz6QY/6TrCwEf5iTp7FuwHxRN/ever7hdYwdL59iFdfKynDcPG5F3htHvSQa8qMadXTo9Z5PW0XbhsYdhzko02HHfgF5/pkRHr7ClA8CxDeahLQwkSK6s3Bo0lSJyJL5hi2BtKEO4iwLdi++VtjjVQ7Dv3Tj8UBbJHg1C3UpQ6EERAqGunGNlCMphgLNjp5KobBOg7eWhY4dWFNtmNUzzBwb2Ci4P3HKd52o7q+AHzgbww1/OK3BvgqPTynCHDYydrblURoLR1jwQRA7XkUxwBRt/ek/rpAw0nTNxhs/f4IZS6fFl3JNVygx/WkRVfBJNgRX6HnyNYCFarGy9Z4Qz44WFhrQydAX6ooKrpXU9eAj9k8IZ7rALDvIc0ZXjVF4XsW92GayZcVPc3bK0X4illsX158Z8PsSo2mw9/VhGyXxZIX4i60nALJQ4lveEqSRO3WxxBD6AOVNd5Fj/QjgzBkv/rYZdUROU5GQX9bwGZ+AvN9qmjXMcYDxgeQenxL4u3ssSO+TlevAmuCmDaz/DeZoCji/gLP8t7Xv/jP87hF6zG3Qlg7TIVAAAAAElFTkSuQmCC",
SN:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAF+CAMAAADDZlLkAAAAz1BMVEX///8MDAwTExP29vYWFhb7+/siIiLm5uYnJyceHh7p6ek5OTlmZmYaGhra2tpRUVGdnZ00NDTx8fHi4uI9PT23t7d6enosLCzf39+CgoKlpaXW1tbt7e1CQkJGRkbFxcWhoaF2dnZxcXFMTEzJycnMzMyvr68wMDBcXFy/v7+zs7PR0dFra2u7u7uMjIx9fX2VlZVYWFjBwcGSkpKsrKyPj4+Hh4dgYGDPz89UVFQqKiqpqalubm5KSkqZmZnz8/NiYmLv7+/T09OJiYmFhYX9Q91KAAAtFElEQVR42uzay07CUBCA4ZlWChWEyiWgICZNERMDIgXlYmJ5/5cypQgs3AAbmvm/7dn+Z3ImOQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdm3CJKmMJ3FcFVhU9DTzKLCIAIwjAOMIwDgCMK7ha2YtsOhNdyKBRQvdGQgsWjABbCMA4wjAOAIwjgCMYw00LmINtK2lmZuOwCICMI4AjCMA4wjgYu5GcowALrW+byfz6EdyigAuE9V0q/QxHvUkh0Z/AfAt/AyNb0cPvP5nK3f3aK0ZvyE4kTv3NVX2dM9/Cl86BcmPWDPDuuA0s7Km+lMpjsa1ku45zUrQdSUfJpppE8BpBktNrYKCbLnTOFnpQbsSP+dhEhDAWYqhs73r7z05Uq8GX2VH90rL+fRWrlugmWEear0WhYmnqdfuP2fVWdi8O4qg/9C6uvfVL3t3tp0oEIQBuFpAVFARFBfccEHFFXHXmEwy7/9ME2DMNKJZXGmH72LuJueEFNZPdTcy2lprOmTkWHXZZ9FWJKV73Y3uNP90H47JZfKlKPpAl3pryU+XlTGQBx1uOSIdCHxi4TT/yIiBT4mZmRFG/3AbYeGbj9kEjY4q+alUfScmO81fjcE3/GpMjRb6EMrORxV/zAyH6JjQKwSOYbYRZFkq8G2iUp1z2A23qg8qLNzbrwg6QoXAMZm00/w1+CllInNYMozWZZ1l4J4EdFiE6KWtq3ptI0vYpOAkkjasu5JhrZBg4F4YDrkFh4Q/VxzSdofcsGf9lE7eiGBFkNoUmgzchY4OeYLAQcIKWZJNOFusOVq2Qmgn1DJGzRjcXh0dsIDAAR2n+ac0uBBqUe2laKzzJvOdWxdBM4Q8ZAh4KbyT3KbPcFGJgpzG/gjxpKzdNBny3gQYLAh4iXknvvM5uDyG1VU8GcbT8kSBG5HoIAF+reA0//oYrobtzJJZPBny1S4FNzBEbmUI7BmXkaW1hisTG4KRxfpByjAXRbgyMYJwoS4EXHJOl4zPRLiJhVDDV5PDxixz3SIQghngJ55nTnPmE3A7VG5dK2O9OfqU1yS4ForDEyCRm1qvZ5JCllIHbk7KqE/4PkNOvVYy1IMEeESzjiyrKtwJOzaTEWxcxM0FRYSLqwczwEOknn3p6WER7omqjHg8GWbn04Z44UIPBQnQgzKd5t/2w8o49TrquZPh4KLJkA8S4D4tvdvx5ReUpPXKcawISvlMAi4jRwcJ0KWZdC7IFnxG6s/KWDKk05tJgoLz5YMEiJFUZ8eXfP89O4fE+tMllgxRmt8q1CWmQXUIWMQsshh+XhSlGlM+hY3vIi9mh4IzbIME+IEpWbeVDn73rFR51wmU5KDDnr43KEiAroZYATIktFopiidD+cSzyZNwkAB3xgihKZBD0t/w1eRQqVfNUfBDTNAAPlARhFqEXQ+xM2vjZ5NTPaEZnO04Zy4S4jukXUCxac5dybC9HQe7e06h7Q539/1+rNeDUtY8fvhg9fTbBydQiKOlkSP8siYwGyUmw1IcX02WNck3JxLJwAgp9Fd8XiXxFmL1fDKKzwxrVQUC3/c8aGGHuAQiX59VrOQNfJ9hli80SAs2d1RFGLo0JfMG+tXctlvYuKi1NBvEJZt7oGQa7SkNCX2yYrqFDRd3nUAhL97eWMWOgTSN3Di5Q2qayq2HZeyTgK4P1757a41vUHn7UiWV2NaII7esmiHzc+BdLCMnI/gJFHXySmpBX9Nryb5HTLBI63ZkvwZedHI/QWOV6dJ1AuWluvDHC0t8Y0qjd08K7BR1fr8GIu0quTUAVKP6kqXxZDgIkuGO8mTPUWcM4KiMmkJu8faIuJcC4xShhh9LjS5nBH+uXY5g9/x0BTyoippGbnRy5Ic9oydjchMV32cYLw81oov6bOwSWWTm2PNU3t6C4R4Q+Hnr0DdInWEZT4bcRvtvk6FgD0+5MXyiOyrRyC09rBD7YOAojrcGvs+Qexl1/7+FRHaOLBsRvpAQliHklpL7hNcAUM1tL4X9Xqv2oPJfFcFkZQdiHb4jJ7TjyC2i6sRfLyohbFzJMDnQSVwKO4FYQxa+CN/Frueeh8P5A1wuJqfv7zPUiVwL+xE9a/8BNfiRmM6vkFvUKJBfAwBsf1B3ff1Fr5Agvcd9glKRxZBO+K+63PI8HJI9INgR+2Y7jCdD3lw8ZhGM0/ZHXQFOQ429A4KySebq8T5qYfKca5+h2Sc+6eyh8siSzMHpmEW+tD8g4N4e5MvYqUShl8bfZ1h/6z/QQmLDLnB6BOd6Nb0DApX0AcGHREYuub8YTSfqi9G+WPmpd+ESEkKSRm6pGrmrx/tYfZCM4vW9EUhPht26fftP4WIk74BgVdMep22KlUE76zqBQnLiHdHYys/FsNqBAcH6ER4O/xK7oxfuAd4tnEsiS56Bi4tleivkFl5WCb5VPJiutuGiRBdAwc40XAWug8p4BgShpZl4iOC0E6uRWwA5A1nUZ7gepjNM79dA2WzCXcSkxrvJpNJoNKUiXEQjS2wBTOwundXhypjFsLxfA9ygAbdDKZmRanCraDz0DiHr32iY47cdFs40phEKEVkARR5Zar/gFhTvgIBTGyJcX6zyVm+F0BHRNC80WDiZEkfod5bEAnBWfrITuJmEUI8jt9bmyjNVtmpE0JeiJX5UKTLwc8of6s5zO3EkiMJ1WxIoIjJIIHLOYIKNAYed93+m9dJrLxlsNaz5/viccZKnr1SlW13VKvAsBe5PALzwi1mQbkow3JCxjdoZX00DiVcLF2N5nUE3+E1Np4AC6fcngJEBAIEC3R69ttdiEGhcwyCQwnFsY0XKjQ9eG3bO0HAQzZgNuhe/pYTmwANR8N4EoPTxD40Y/T/o3U5qVwO2aIPAreM/5LrtjB9j0uc8oaRn4ThyxP7TymTpHNkI4ND9CSBvAIC1Ij+INwhkuxciUVTLGxXJ5DijfAUh1zRwEfPyYlXRlRM6jgMO3Z8AeMtf+f8v1XedPYNgOamKsrc5VmNrqkGNJwUILE1n5bqDjmfhJHL8dfrclo6v/90JIMMrP79jApxU3TcI4r08+eRlBs4yHNxKCiIAEDFX7bevaKhXVp2yipOwgNcZJHa2iEsesKC7EwAv/HptEsDLy1s6nX6sVCoj1x1/fMik09mX7xsEOXlve7mvo+X1HNa8VvYPPpmXRhLtob/XinZdxknY3Hvt1R7TevSDdNsGTLo3AYTKAMAciX6GlA2G8rXCxFk0hrlcPZWSt4cHyPK87pUbi2kh8R58Ub6xg2DfIGhm6Wek61jTp02CDQCGGz3pFvYadQtnkAOpD2QAJt2bAHjPT7zy/fOb8rWwU2rkjADDQRhje/+Uys36q0RGutQg0LBN4GcGQSiCNX9ok2YKqLvKJacUPSziFi7ApDsTQKzBKz8SXUo203V7C9vQ5J17IGKUbdPs//VX4dntViuVtq7rHx+6rttzzEY5Ppc3vtjrTFqXyCD7PAvsGQTjIH2PRxVrHmiTAgMWOl2Iks0POksVh0i5vekHq1aI7kwArra+/i5dQDQ0CidtQ91sj0kZuddkz221MzFdUs78B8YyzXB/5tWt/x4Hyed29LxBYPo0CGpcemxFm7iA7B6RXfaYBay3x8XlXhFhQZ/clwCC/1Z+sueWPp3oveZSDOBYqmHOzFq3HYvS91FilVrPjH8GjpTtJM4dCi01+6k9g+AhRJfxwPj6t2iTJmCNaJ+q8xSfz+dGblgM5w9fmNRO9IYpC1+U0tF7FEBrvl6AxOmTuQrJ/+amyKnyouc2QxIlDMP3abAF5/PkN5ZLnusaUpqOgR3KvUeFzvFiYk2gub0+6vb6B9vddlChjL3T4r4oHPOA04nJIi6DM5+F7k0A2Q5/LQoe39r03C9r7HNqUiNZyOvSxqmqPSFHO7ifx4Nb3jTxdsYg+HPAIKjQSd7jWJPa+bpXYPz1lyaKEYuBWblwAJDLHWcyKZnlCAP3gJNHB4RIHvDKHQO1dl8CaNYBQDsWBCsPn4c1s9Sy6Lb3noUeLF1UJMr3bJ5cqU9uiE6SmSz3DYKqcsbiAOIx2qICdIijFCLYwEj/957T7DUin0nHwQsrAn0iPfNsAii93I8ApOTxyk+20rPnfO1V22llDtsveaBE4sjmH8oBHg2mGeWcQaBhG2PRjNIB2ktwnnb/iBmsIK3pGgDU2SqR7/YBxkzaQqkW+E5mVn5I0w4uUCZOQgUio3sRAC/8agXaIzR4VcH97mLh5PjPBuQMCSVbS/Knbm76rpzZ0THb1UCqtDeHIlRk4JSU3V+lfmbuUwCey781CdlVTdpD6vL5N6zhbgWpjAxV/7qmIcB6dyEA6c/hyo+UcOKM34XF8bnEnDIMQ/GXVp3yUWTeIHRGLe5M3dNAYWMfV6Uog8MeaJcq0Fpnog3AGii0JmihRJZJh1CqDu+TLTXpk6gBtnnPDzTAln6/ADKfwx539+uneLTsJGJ0CcUrHSAV6nkMgGXXpDMa2DcIWKCeG3aSyWQnzgCOlqA9XLAYEUVzQDyzcRpGW5HN40lxkteNOrU0zyN3naUEYPx+AfC0aPm+lYw3TRU812nTpegaPLoO74M4ANT7mbP958kUTrM8JOcC5ChRzABmUfrEQUBRUmU6jtI1Nd7j3s+/PQM7YnGA/G8PAXzYI7aGPVb5Ngx1Mda/J6VrHqma788BYJhQ6DTKiAfow7D+we8P/yOAbBwobnzahKfQOX/DZq88Q54bUPXdoNj47TnAild+NiLXW3jJAKidmvSDg0TrEl0N6fmJAfDC0vlmrGkOB/GOBKkxmE7lnRV6hU30JJ/8dTE2JCk/5YVKZhSfY5sCYpnfLYAg7/nZuCkySRWAPKxl6Qe4QI+uSaaoApj3Lri60GSvUCN7YYUOUwVGU6BDmyQRkaiP0OnEh0sqmOBZBjRvOnr7/Jmd3/0aWNCArZfV/JABMH7cxczdoKuSHRgA1EskQNn3pjstDYdeJJIbvv51aoBXNoA4Q3lbHw+wotRF+OQDIL4hT5e3g2P+tMooZMOK/WYBBBv8lfgr6WnZAJiZ8GMnAiW6Nq0luAREYgMIBGk3ic/Qi5Y7aX7kd6pUE97XgvgQcH6zE1hbizXytdyjMgCtmCFfDLkbdF24VOcDicRRABDedzZcoiS6J2Je59DQg89JWN60/VsF8NYBAFb8+lsbANSpTj55Z2jQDeh6AIyawNBiYa7QNlIKRaKgrLXpMG15/nZsjCiPBrIjzgfQ8+6f0gd/XP9zaau8pKE+jEeZYJSifQZof+nknyIwolvQigOwqyQIyYOcpx2esORxzQ4fqgHHAqieKm/3cgyIJHwLQMmGRoOOp+KL+ZOr+9O7hy+s1DIFsGKM/MPdIIVugVJIAawvkRhiGuK7F+5A04mo+sQAo7hbX8qrqNFp2jaATvBnApCiejVRcDpPcRX7qMU0+aAtA4jkVIDz9EiCmABjug3ZvgwYCXEXPqG9LLDK7+ZEMgLIW/0jA8gtOktYBdTC5QJ4C7bzreeHaamxjAQYdlE/YOBof/yI/y8AnvQWe2wN+jPbJWFI3A26DY82gEWWRKAYkKu0RZAh/PXp0MpmQMThLQPNHCKPF2+zszNcAA5tI0l6LFatdlvjyaS4eCob84AmsyMjCmaTUeztg1j3L5t/TdxPBIzjSq6NCzzQzSgEgHlLjJoYIjt9PREUtxYzUUoBgaE7Mb7RN9GKrJNBKQCYj4/VWm086fVKprnMxesRVdNwElmNLDu9WjW4UyDjexLC9GMqDGDvdAU8HjlvRNDkXqYAHoDhrjvwtCeT1dqGcIJ0MVGHAUZBxcUw658q5mIaruUz+pH4x7s3HfoxDoCcQuJp3vh9d6wCXoYEYO76WEUEooeGF+QV+haPZZyBb6m3zZIzKdSa7ZiknP+hHgAU6adIBoABXYEnyCG6IWkbsGrkH2m5o4A8UCQhhAPb3XFqPeXlco2G6Tirwng0SgezUembspJM+FrCCnAd3+6dYUY3pccAh/yTNQBv8xW7IazCHVwAYKVuLV+tZtL/NI+SfxwAqPy+ILAARnRTmnNgGCXf6PH1K3Z1w75jLVHXaADaXwqJpASgQz9FigCYkHiCFhfWDUnngHiafJPtGQBQLki0psnEKUDqyUB9TCIxgIDkJ12DnCbxTIEa3RbFBFJtIXNpGjKAef+Rp5gMWJEYeJ9RQ2TY/QtAy5dzD5vEE50jpdCNmQKamMiTdiIAmL3uPE/IfBu5GFwVkHsSiaLN4CfhkuoAwiQeFxjQrQlD2ONaSQxlAKnkO1GmDuQyJAi9yIBIS6DrAi1LvoKAlSbxeAjodGvGjPvzQghN6wDQGJPU4E0zgsgvAZhpEsMAwJh+XxDoAn26OQkLLEGikGo2A5CahFYaMORLJsoU0B4UMTqVAdtXtL5SEHji6eWNyVtgIxJHqJ8CYJnJOWDxoCbMFIg3SQRlwAr6uWmw/QPu1w1a02XQHkkgUs2WAQQAIJcnUYw8UXEgDMBXfOoAaJB4OmB5uj1jhnmMhJJxUuCwUkyYsB40MXEgJgM58kFWBfBMwglaWCp0e8JA/IXEIhVscLQHiQSRngHw/MeBoV8zJ8F3RAvH4RbFzXFwjeDzXkxhTd0VJuuEAaBzZvHOCs6FX6vKvE4QeFERUegkb+2u61ZiCgnFvM5Wl+h4yfAPRuGFxKBMNMCanFzjsh06u6EZHvlBV3GVts7CGTeowg+MA4svhJ4ZKsWBBF2DajHAnwIDURJImwAizycj2vS84JEhP4wBqFkSjWJAzZ6b1sawJuWkSRghC2qQxMN7Z7kEVqIkO8oBsCt0GD2AepROU/O/u28GwCThJIDkqdDFzHEmlq6GZ3MAVlLcmtUAm65FtcTPURtESQzhFMA6oWN3d+JsbAoAhkJ+0AO4SsZmg6WPt2PWH7/uq9YTgMCDQoIoASu6Gnoht5aAqDeCqGMBcjF20FA1L/prUSX/QUAn0Twed4NaO4rLNwB4VRKDZFx5W9poEQDfgSCEkMkAufS+t2PjopJKU8CZlMPrBAHz6I6l1d7e4W4ckFckhgpDma5KDQDUMYmB3wDsNbT7Rlu4rBfDdzNG2sI1UueYdWwdwnsCIKnHAFNQZO0DYboiigHN5O31gqi+rp8Csa325NzFJb28/wo+UlESzfRYbtEFmrRLPgIYIRJCBFqQrkcRWFFNBepNEkVoIQOa87UK3qWdGxUIGMzwBGBBonlRjySounYobGVngDoS1Z4wo6uRZ3haH6/AhD4432cAUgXl0wL4c/HjCGrUv3cPdEk0hWOP4iFU6bCRa7VE5R9NuhJvKWgxft+IzZ34oI7ciIiCGiLS5fY3EgKW6hp9ncfcoMSRN7UCE2RLBjUYCl2H0md2FvqbunNdS5WLovAcICqCoqJpZabiMQ/pLk0tO+77v6bv2fCImqDAmlrf+2v/2JbBhLHWPIwVB5JvxIV7bpVuhgrgOYABiWIJK4nPjb736xrLe35AYqpOvp6sMbEILNxrxm6QKk9VQNUlDELN+qofDBnUU0x0WIiZnlfRL9yGMaYIKOztNLgFIAsMkvyjkOUXAIjnQw224pmlwVBjF4GW5KOSC0hN8qIYgzTkWQfW6QS8rAXA/CfTT9CIE7dCIL1fU1CuJZY17wqn6OXUIc19cg8d2e8dkG6SOMZJ8oFDYOKmz4b0AGlcJnZqSSD2JVNAqkAsxdJiiiYxU07D8Ct16r4im2S4qNcS3ombSnKdn23bK68MANXIskdaqg5AG4ZoDbxi6TL333vw9wZ1gazvlkTLs7x8rokZHWiv+yhsm7hZDv+wLj8VYqVZtfcDgVsDuySMcnMKEfjwywZVlpB6vkHTZekM0ImXtiu2DXcko3fp2K4VLv/wxYDrMZUNKHdQMzyzZtKcmMn6VWdbMd/WjSdgRsLU7VcAswAknLu+HaJK/2uFf5R4L56pAzDkgLn8AYkzAvid/pScX6ayBhRk78+wNHaZ3K8AHXhel2pV89vpVVYaqBIvRS1YrjElIVdnmjbEJTFz5/sz//oGuBnnKOe88L4C2sD7gXJjuc5fhJQXwbpbancKcfAZA2LsImAhbfo+Uu++UWMpJMh1jDO7mUhimVqLl9eXUzpQy8TLRwmxPp2PGYACtwi0/EuNhm8Cus6RyHnnnHzrurJ04/Nm6Um4kYmXphTghnAK9ik8JHXAJ4plyzcCVsAjQ+jNiIkrV44ffC/RJTAgZkbHCsPsAce/fS7HYBzo42/4TSzEPsXVpyQTC6aKZX6dMfN9Jg1gRsxYkM4pAvcAquw/1H9Rb2qALnumxCVobyRGm82+egLcue3OTfKhkgNqxEsmFmVrJuYh+UC8fMT9y/OVFbCQfV5+L+L21SviYHMw4NXBxcl1HNIz8TIKElSsIsBfRhkf+BtkC6hWyANDPBsw4xG0RBydj3WrSentiBm/GwHcmRR/frsIHPwb5Ceg8+m98YonhJcf9ySO4TZLvB8LyqHEHgHF83ruyKUTGAm3D66O6kC86P2prrB2L2WOdHbdvRf6sdvF/w4wQmxneWreUE3ipXrwR059fEsHwJ1w5N0x1LQ7zms/3wnwTirGuFdRf4BLOiONE9iHtQ5vkR/TwED2Kr8s86K96TqDAPTIph7o4b5VuXeDBuLhL8Mv85B8B+bkT18DCn2vlHBdNJrVFJcA/AEWFIB+nLnFdgjU6Iz0AO/8PX9vkEuqC8T2o84QXcbfAjXBL77uk5G1oFclowFdmfjQsKJzMjiBCNSB4VHn//fU/raqK/o6m5AIltspNwu+ODarQDVBbEwjPAe/zT6sEkeBDtIrAaXifk23L6oBFbHThO4jpOTkLtDhu2fXEqZ0Tu5OYB/2CkxlOsSHDqCe/76T10U1oE2RyUiu3VU1XCg2gHSRuLiJYgb1yzwklSSgPaSOWqqXdu+XvncufWKeUkLlNXSR7avUdOP3b9h3h5RlzKX26ZykltwiIOsSAKj1Fh2g3AXQzWwLw7cnuF2NSbGbaeqw3iQSihtBAiXBB9d/o6yG7plux4ALhVgwYwGGkH61CHxYgIO0KB49V2Embz/Bf3fWkg7JV/Lj8z4Xj6tJrTu+lZ1Czm3kSpw7LjWJMHDcTNrHGbGwsKXonDyxikBZAwBDhc1BJag0AJSuPjZ2Dy87C4nkuDeuArBM8uRegktOH8qKilF0AWiRzWOknX2iCmjXxMFVlNnN32Mf1kwCQJbMUQc28UbrwP+2AJQadwnZGZJ53XypNHIJWxgKQPzOZ/EV645qtdGLlrZj4FJDNfJUy8i9GKUPCs+bDsSHxEBFxYDOyzOfh2QxDUC1pVy+suBgtBX/eC8AQCxn3KSBXGVbk3tkI18AmHmWzqoZcjCv9DgAREwGziW3b30QeSsxA6RXnmV5PE/npQvwRF3WFu3bjU+sCpvcQ8Lfq3+ShINVJhcNFq1pq17NRNauu1rl0UJUCw0NUl/cc+Y5DdQVlqLwI52XBJMIXNqyX6YN5jQHG/Vl7q9Bt6/1rj693c2HZHcTrpa853ZzT7tcNyRcRnt2v8hGFnKdapWARYWEKWFBofkNHpIDADC+KajSNiTYGI8yBaW9O7tWmewlXFteIbuCFWVSzk38XYjVExIW0JkzPEfnP4lnIe4h+WEA3n2fzZc0bLRpIrCW7LpnKoPvk8RDr3TdLIJ8KgXErl2bC0vUsgjqHcPs5pTOTFnYOSZRgP/QcWK0VoJGK2gAVPZKTCt5J/Ertbyqqc0IujXehEJGfEOF8f8uHews34Ra61tJHDzUQm5bcLAe5ZBvAHfXZyg7q4S2V2fgOHwFoUqbQRCGxZT4UvBVwBdaSAQaYtu/dPuIBft6T/BlRggAetr5gvklLr3MFPWwh2u7T33GXgsIB8DkBljIonaOdTo3ZRXRTRezEoDSLR0h9aDBJj1ohg8A2doxSDG8sj7dsPfwAnigrUEQ8QD4qlSBG5NEmAi8jYVEoPMWedQUuUywE/pgIxltOWQAUCKJ9OaXjLyc6WYhU0FNyT0Evwbcc+ynL0jWgVxZcFdWpLOzAlCP6KgGWB8UjH4jDpvO1AwXANRKI9nbKuCPvJIo/VAC4IZUQkVHZgkAZ+Ri2aToyEmB7qZz24flDQB4V0JcpnHOVYJQAZAvbBcuqx5ls3K40vaW1cMTMCSuAKAxkL6l6NSd3gh++D0kTXf7FwLlbgEH40oOGgDmvQps+UlkPd6T+VKYrzIEFpuxAp34AoBeAfWTItMEsnR+VuGdYz47EXe+85e1EozKQQIg5dz+rW+YV2F51HUnIdpI3ebftyXiFb4AcCKgJPAQa+ypAH4RcLd/sedoV2u83hPozWMBUJk64bKUtqoWM49ti45CmGa+7Oafj8QaADQGDKHu4D6dn2lIEchKTvUvKsOFBJvq1duBAMhPlwDsgzYeANegp6LuN9HPgk8Y9QBjkw2aEF8AeFeW+Ydd+VHC2YfNANHjX+b1tRLMTJ8AkF9L+Ef8MuF0bLkGPbP9VUAtcDY330G6vNkMmOwBIJdEGq0MdBQSQMRDsh9itBCrFIlReSjAJja49QgApabBefoTmzNw627qvaBErQY0gNpWOYCrqx/jbTlSRFIBQ/oBvgLbh8kTAHhiCFPlbqME+d0AkGs5JzhezG1jC7RdnX3dW8a0g/bCdte3jc0nYbhTD3mAVKao5JPQ6ScoABgF3v5dEA/9etw9X3irGvioObe/kdndra4LuIr2faD+LR3sYU5teVJUuSz6lAK2df9a6GjTAdQK/QD9WCAj4XkHvB5DqexaCZ56RDUkFXq8gc0gs9/GrMnex64qHdwHdoN1GLPNeI8AVJXt0lRVyCugRj/BfRAj4WHc2f6xUpysleBuinhtBZunPU3P5wAM3GDofUsEDMIJQDm9jiaO43ik1m5rj0khEQgfJmTteGanJgFQe8RN5iIJmxjg8DT37uLdOdBlt5C2oKN8LDe9fxO24zOM7ynRlpAGzCBl6CdoAkd+9dde9Y9XCVwWc//KpdT3dHMboBD4PAj38yw87x/Jd4OC0LjqXxJATARWx7Z/1RSdiGJXgs2id2CF5PYILnZ72e7RCbLF0jdjGEuZb9K+uFddaf7vUgFEcu6QCLxNgB1bDH4+/ymBMTymU7ojArt13BmS8vF0jdsCrbMNRTUAdPcnPetCQ2I9+hFuAaQzPoFeBXDyjqXK6/Mxh3g3SGs7RqO146fxdzcCMAS6fNdMNb3OzhUZEnshAQSj2fK+8CUAmNKP8wh3yT0B2js5xKBusPT2H3t3upVKDoVheL81QBXIPKMMgogoiDjRilPb5/6vqbtlKRxBpoSpO8/vc1wuCVXJl52d3PBfq3PDQHxaMlTcvyjgIyeH+E/LP6soO+CYzw3XkDf23TvFOZz3Ang8GlUEFvVFAPWpnVPr2+t7pb+HZNEBAi3ZBXaazz28zFiZSAca814A56NUOSb6IoBDmVRQ2dZ1E8RkS2rAw7TdYnIXshuika+XUXa0h5mZk2MWoTZ6bDtRfRFAQaZIWdRkZb+UogD1RsLVyYcupZDsinP43DIrQWahAZB3RmuGS7jTHAFM6hP4cw+jgOFLIJL/1g8Nerbsju5Xd5u8j59aZADEoKP9goaQB3RkqpZSdV+dhC1bcgD0fm+CAseyS9w6EPss6iy78wdAFWpjV7Q09L0v3+QHYZU0MA7XsiUhb3wlEE3syPLvN6nAV/eQLNTmDIBhaJSUiYMgiq4BPzjrM9ynfjEjGYCn4SSk5e/M8m/ydzz/fLjH5w2AB2iNTnLnbH27Z1X5Scinv49RwPAlAFbs7rZ6YAH+biz/JssSA/nhEwurMnsAvIy9w3pwre9XqM8KLFQKg1oKSYXGjn87tfybPNX87H7EJg5ecNYAiEZGU6pTaOurpbfeZxcKdvcyCvjHS45PpZTspJAHZD/fts+jziGTyliVUcWdF9JZBTBLDC+5f1UBQ0fFWABw0je7tPz7zfVoGpCF7uDH+djVWAnjk7ZOXEWYt1Q7h+peRgFDwZNK5VB22N1o7/IBmgRCP/0lw/Zo0Jxp7LLZkdnChN29jAL2xBmQtocXev7c8/J59AKww9ouy2ov0l3rSmXCWYVdnH3vkqMcn/lO1IemTHM1FtYXIK41Aph/oeqDShRwIMZMDeur5X0lQviHApK0Ozr+VBbRWAUwV1dlJtcmcCTGTHH4vIL8jNj0IxujxUFJ2708fwH1xZaKx/sZBeyLg68i0Tpv0z+pXzLWDU5fBOAsNJbeVDp+JKiLMVvyq0g0QVYmXIy9AFIRwrbeKoD5Kir7KJc4UTFme3eAFxE7ws20U++jeDAGJ7ojgPnK5GyFKOBejDmKgNUYnQ6eaAeu/SBIKLBEZ8VTKO7fAYG98gQ07cqU73fDoWyP9uYeXzcYAYwyfYVmAbe7Voixk+w0UCtiRSf/9k5UtB8EuV7ugpIbhTDILkNVjEVaXHmT79ru2ASsA28aI4CqLOxIJQwKenAtxhy3AJQm77Mvj9oIarsh7xfwLEsoqNwI2XAImJXAXF0mX8t2eOyU2zEMRItDC5zDJW+EfFKa46aTYszmlicPaBYYrQsrFg+iRx0oLBtWBV6V7mPqmaXAPHmfbzuvJ+MP6rS2y3iqsPQubQdO1fY8u2LM0f62G/yaGDvccA9XokXIZ/lZmf3IgVIHKrMUmO8vsKLTu8HKoUNJ49bDwQr/y7NldalHnIoYc/PAhnxpWcTGK0L+EC1aq91Reg4VUVBxCOTFmKUCxA7H24HnRftBEDsBVFe6CqggKgZmKTBPHsCqBSdfAKkICVdfBBCTFdSJiZIC9MWY278W//JIRE7GP6czbVnau8WK+7PHyoeRzqy4GDPdpgFoVl2x7xOpsZTwSWMEcLnqDOVClBydiDGHfeUBkM6I2GM93LwjfRFA2F41PhyIsXZHhQgADycyfnmDxiqAiqzEfqQgxgbk2xYAb/mvdduZvqiJtqwoxoMYG1HpAeAFh+s2/KC2CEChs1yNhBgbkknz2eiqC3HR1wugqHCKzTMl/hvjViPAy0dz8WfRowDEVCoWrHcxNiYDOFFJayurvrBQ+lnX5pzfZmWB+iX8JXo8o/azDh1OxdgcOwxA2tVaBbC6oG92dDerYQGRE41VAC1RYHvmiMeG3QF1jVUAbVGS45cYm+SWIZLXNaVUbiyUMCc8Nq2IpkIwuwkURU3dbOduWigCpR2IAIZivImxWQfAoaaDAHkzAPbPOdDVEwFcihkA++fVg7CrpwrADIB99ARU9BwEUBYzk8DNa6BeDnbw9TPMMnDvuGHwXkVFZtR/0gRB+6cLZJQjgIGocx9NFLwFF0B/6xHAsKDQbAZtQxn8kHoVgLqoY8qCt+EGqCqNHy5Fh4opCNmKlAMPKn1odbWWPIU/xNi8GFip1Ys4tJ0qi+Pv6MUr/3EDhSvv+kBN9CiQM21etiHkQ0khAkiKHn1KYmxDH6x31QhAXZq2GNuQAbqKEYC6I2fn7l79v7A9SLgrRgB50aRhVoFbcwxUVosA7kSXOJZp97lWbjBa+ZAPTUYwPK0UAaRd0aVmboBbl+R75qoWC3u+w4eIn6tnB4fftgTtVSKAE9Hm2ZwOX4f8abacs5jCSt+kxmdzpyoRgLqQb/pDaGdXYxYAlp94qF0WB63rf3QG8Wzv0QIiheSoqPNNJQJQ1zJzQO0yYYDHXqF4kpTvLm7qQKIjH0oseXPXawK4FX26+KY7gF73QCLbSMpPrutAzZZ/vADVZSOAB9GoTEwMne7Bj9syU9WH0uFwS5C6LK4xjAD0CUbMFECvFpRSMk+qB5GiiDyAlZeFlYAb0ShjpgCapb/uf3Ebxftut1BtuDLFvQVdkcFSdR1XQNoWjWp4JgXQqQEv8q/MQQSGvKJMkfGgn7QDkF4mArAqopHbNLeA63Xz8Yp2q00o/2pFU6lopRDgRqbIlyD9WgP+UIgA1FzDrRga1Wi6kkng3UTlU7JEVqaw+9C8t6Cw+IFC70/RKUskKIZGx6SDNZwrW8YkH3j6aVHnWCx4B2uyie7vq/1oToVpdoPf5Cwlv3P79F9lirgFi/b4yYLu2P4WzsXQqQMUZVKNZ1umOHUADhSqAFTEyJk1gF62h9WVKS4Jp2SKkwBAqT3Iu9ojgPljyqRA2v2Rg3pQJl3RPJQpomELAKuUrdjyo5dhFYBWBzimIFy71DMkLmTSAH/qes9Nnf/q5wDIFa5lupQP1ololY+YctC1qIFzKpM6lpWRHyQv7mI+QPolOCMC0OrJFIOtyYs1Pd+t+DOXccHbng/4TxdTI4DHV9HqAp7EWItMAPq2TIjmiMssqZcSQK8iv3nNAaeiVwzHPADW5TAB5ZRMSIW5l9laBw5wVvkeAfREr1vMEmCNkj3INWTCUZmsLbPljyNAO/V7BJASrZI5vD/FWJ8uOLcywe1RkXny2Qj4d/b6IgBpY24JWLP49K3+Kg2ZL9oG0p1hvLyGCODc3Pe6fp0AtF355skKyiJaJfh4XaQiwIloFfLwzDbg2l0k4OFIfvcYlgVdRSAdlR5wLHrFzC7QRiRjfA+AW/wli8rHINIG7WVbx5jekJvhtsFryZj6Um1hLgG0f1vjUDZNQTbkEpyBfMksGeheN/VHAB3LTAA2qOjAX6MSnGVLsIJ1yGVEo4aP0xBjY1r+KHTvM1jlhU3tSHQ58c0EcMOiCTizhzWAT7K8Uw+8or7P33SG3bRUHcpBkSrPtqwg2Afq16JBIwBXYmyYfQbhaJVESFZzmwDeLkRVx4cbMTbvCRzKIVmVfemDdaA4BKoWVlyMbbhX3dHPZx2g11LcnzLzv22Jg6/2139vW0B94MpKgj3wTsTYlqIFRVGSP/aB5n1elldJQMmUAG1TRn0ESPCyCUTOOrYs596CtjkFsl2dCBRFkT14toBE9lAW9/4Mjpn+bd0fHhRFWSMbAIjdpGQh7l0ESuZWiB1wEYCiqEsOG9FFHoopmes6DXTN438nXAR0HfGOXoYB/FgxKrPkD4B0RYzdcOLo6/LSKDQBrOfLQ1emCw3LS83u/+7Quxvf6iYASGczrzIhdB8A2uYE6E6J6y3ItRuFMgCBfvxdxh0eB4AH8/TfNU9wLVpF47EAgJWonUdlqNV3gHpHjF0TClAS3YKd44QF4JSPT1P5Qhqweib53Ul3EJc1uIi/ecNB4ACBrFn576jXBIGQrIXduDt7BIi9mCbgu+vv9u4lBWEgCMJwl0QTYVwYIS587BQRMmIgyywCuf+ZcopAQv3fKWa6iu5WSrGY+ytnUp91SxQzvY2VDlTznb2lT8BYop3trb6quAV8dTs9iGidTdIvYGzgL+jtctSJpNbZl0UN5hqpCfjaP9nW562smAZ4a6VzHfCVpT8PQWep6APGSk53AgAAAACA7ZoB7FRpPjg6f/IAAAAASUVORK5CYII=",
qt:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHMAAAB0CAMAAACBmP1sAAAAmVBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRkZHz8/M8PDzLy8ufn5/u7u4UFBT8/PxmZmbz8/NNTU07Ozuvr6/i4uJwcHDm5uZfX1/o6Oi8vLy9vb2AgIAoKCj29vbT09OsrKzZ2dkoKCiGhoagoKDb29vJycnQ0NDHx8f4+Pj///9ot3XMAAAAMnRSTlOyALYLBLrAvRUiGsMxKS004vxC8WfNyPNP2tLP6rXa+NbBgu3eyeibdvTMWuWojp2P5xSTSb8AAAbBSURBVGje5NfrUuJAEAVg1l0SNTEJAUK4KRdRvLu8/8NtTyeHw5CKEwzln21rt7RK+ep09wyh8+vn62TzT7Ucf9HKpPIb5YBbmrAqRfu85oF3ab5Q+sOhex6TILDr60v5ksL/aoNtZ1IEqMTVcRFG2HZmCZqA4G6OC7CyTdSOSwRYcFEUSr0MUHloKipgYRH22yZEyaCe0d7fhqPdYf0dvq3yWN2mascRsoxowPx9Sc6u0XyVxsJqWHT4dJOigun7GECvv05Q/f7eXZYs1cYmSYrxYF5y62SSBYHHCoLNIukjbV6oQJubDFmK26G+5N3rdM/5RcENFrNeEXYgKqICdZkkNaTJqGJvZkBqfrfbxbclu1Z1KFkdUWHaJEKGca7i3W1mQLUqtWefEw37lsbRjUQF6jRJasiPkYoaEeCFVXvXqJmqoy2iAnWZIG+iOB+briYiAqRlu1RfdaxpGBF1mhil9HVlQq4ziAA7VlmsUadmix9epL9Aa02mBDk3IRcmJEVaVXev3puoqzgk+oVJMgpTszz9IiTB2rLU6ZP87ZzoVybJODWj1ElqRogutkSzmUHTGrRTT/ZkXRESYkM1CBJBx4rqkak3i40FOUVfm4ryj+gtUY6Upr2ysj4kbbF5VM9TdBlHV0Atk51tR1IlOheUI62aIOPlEXnRAn3kSGmSxP58yK9OQLoAJ7qtjBQmOxsP5BdvSX5LBSpHZpRLdxWtmvthyoU3I/ktkahcDsOYQWlax0SG+RQErVIyabDpcaQVE53d6v4wZZukvqALmVSuuytBaZK8CtOH3e5eSL9NSiySdnct3WXQqqk7+6TDxLlsjWbS3a1ZIwbtYGk1Zq7HpG1n7ZHey7spgtJkzLns7JlIjvRO3kytiXYQU0yNufE8DvMs3Z3IBwwEhcmlrYnZtrt9K6hlRumIMVntg8p5GTOoMbFBN+GnienY2Qutk4LqRAeRbWKDxrK0jpjFA15ztQgqqzuXoDguNMMXeXrGNOtfYuHz2cEplkEzuepjBu2wtW9yBTlj+rv+ptmaMaheRtuwakbxg2yQ49XkBeQ4vWZUnUGxRWyumBhnrtceYtaZnn5Iuw+wa46ymlsxw5U8z3ou01dTBj/Brdy4uS8YqJgY59Jsrd91mMGurPUzGtxwcz/DqinjdLZWTVSSuVVculN57sRAxcQlJJ9OvJNMedDHWN3NxZuLZQ5kHz2/kcnqO8aKzdU7N42OzXc5nWiV02TNMFbHQGe8/tTU97FHs0KI6TbZ4CRjg+vNpHxvoSkrNNQbobnJultwrLUndGKe/2BibcX0TjQ5Vjwp1qE0Lw/NcQtTxlo2uNbcFI9/tomjcqLJsQKtGaiYOCznMHEdej9ncqyb7n9g/uvVDloTBoIwDBcPkWI0l0K1pZdSELzU///rOpnk6+u6LmucmL0UCuVh1nTdzHzRvZ3/Gdok5lL/K5iLnglm8v8ZPfua+84+PxM4b597xq/9jG+vv1eW/C7TFezR72zEsqnvbEzuJpvJd5Nmwt2ky+4m3YN3sLLII5Tewbj3dc+/a9pjm5rtedqdGvHeO7Ue24t7/BLvDph8oKcJ70iI9TL7dyQ9Qm7qA+3fBTfPexf0jxPTTyJ/58UMv/NCJlu70Lv95kdbK5PNpYfxMlMPg67UW7sdmzWYhnrr9kSh8cUTdGBrzcxab5jzkENPSoeQTG2u994oNE4OZX7YWasyE3PuHiNleo9RT1DS16RQHt0ZyLGX2tHuw0x7xmvQ8M56z5gyZVKoeuPsbsCkN86niUmhwwwg3hxPZwA3+/EMAYZZB2iwdXuynf1VmZl5NdNZx1D7W2Y6hfkKu6vZVQB1ktmVyKL52vqM7jOEOrkeZ3TpzsoEZRYZQP/H2j6L7MmSCeqTZdBVhPzKB725aegO9MmzZQrt0fdk1LuaXuQ4Q4fMzAzdH3RNp9SpWQHIsglKJkIo6pRMREqWTaF59uMe0YtU9iMjMQuoMi6ViIvALOOSk5gllCwPKm7iIZLlKZOYoASIlFlqXIVlAY4BLTJLkLlZRq3U45DNyqNZrFI2C7Jsgt7MoDVpBs2xYgatnZRBA1WpZO0auYJLWTuyYEbWTVAyhd9kCuVq3cwUWpGQBbOe1kyzk8092UnIukmpqMYGMqKBLGy3P1eysCYGsrCgZH53xna3Mr9Hz/w6iAgZyjb7Hveru8g2d87ttg66SJE1s64qUm2yLddNM848gYjBrDqsu/mqZNWjmXxl5N3uf+IhhkxUZwUny34BiBgwYXF9YeEBxk1YX0BwgLOauKyqFzdZWA+sP5AziIxB81g8AAAAAElFTkSuQmCC",
Wfa:115,Yza:115,mga:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHMAAAB1CAMAAABKxC7JAAAAh1BMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJBMTEwAAADz8/M8PDzLy8ugoKDu7u5wcHA6Ojr8/PxmZmYUFBTz8/Pi4uKvr6+AgIAnJyfo6Oi8vLzm5ua9vb1fX1/S0tL4+PjZ2dmPj4/JycmsrKyGhoafn58UFBTb29v///9i05URAAAALHRSTlO0AL0KwyYRGDMuHuPUyfxC8WbN29DzT8jaterfzMGC+e3XnOf15Y52W+fOqAzih28AAAcuSURBVGje1JWJcqpAEEUJkrxBZHHfUNEY1/n/73s9wzQ31ACiUq/qXVKpklKPp7uncT7+ff4TZs/6s9IJEzT9j5O/ArlrZk9ddQG1OybkvnT+mEsHzt0xWTCn2dFoYN9lAmhw/X7/sxy6Y7igvsYEEUDg7PQZi86+xASx4Pm+L4S4DDkzQfH9HEtcyD7JBJEV+zmPaKf7aCp/53t03yqy5oL6KlMhWZF4s9MGuHKmy21MWFCh+gyTq9rPDePTggFRkgWcJJGcDWF9H9QXmKaPueJwaXBZMJh75aT7IGFbKrKhQrUlE2XVxPNIquyuE0K4VhR4v4py2aGhKtXWnqirIQ41MVoBWIPNNHVErlBtwcS8fhnkTBN343kJ6HBK2DTQsvfYqPYorT11XbXkYaqJUDSo4lIBda6p07MQqG8rJuo6W6iqBgWxoHH4JbDzq26rVtX1bcEEUoitksx0VQGsir7L1EmiNsWlqG8DE71k5FJJ7kGs5sHX4QqvJWUrBKDNTIOkJaCGJzGSUGwIqJMjfXYJaDOzVyBVKwOWBK8Nlbq6UtC4BurUI6MxSyKtqQFBFwqKc1rDLCEnjHyOaqBjQGuY0KTxARLEZwLoRvhcXZuJkS0jQXyuvgxdAlrJZKTYAPlaXEAPQu2Gcksdu5kHeusAli8F0LPdUsdq5pDeOIblW6YrWr4zVNdicjNp4a3etIQpLYeROqVVTFSWmnmE5bumaWRaylAwoXlW8wPLt0331ClTXTBLmiL+lnJtbZ93WppRdSFqMfOZPaKZXYjOI5pdFgUTmjN9TGDZhelaym8WBROaS5rZjiwxuzsptyzKTAyt0kyh2ZHoAKLMxNB2qwnTBKIlptKMp9DsiMjnZcGizOx95Jqnek233VUjSh0dKtGCiQla8NBavLaxqa4Z3aUWNUyU9iLljjXtz7WIxlaJzmnVC78oroMJupsVZFuug7YZu5U/ODN7wTC5nb6gtZdWaLpuItsncCu3LooLz/xwHqu66U7kE4lct7a4YHI7t1IGlcyBfCae1RtT3IvPj1GnaOeGplYj3S6YCC/dk+CGOnw6VTsrJ8h7mQlRj/qzMQ2Fpx9LmVSclPeYEOWdCya1cyjl1SNk9568c2OfmTxCJzqd0Ozcc0Xrj7cCMfPn2IFHqEtPNDTIny1l5ggbodbzOE5v+0SWkw1uk3VUzYQofcmBN5HTA9N74JmFYeiF4aqEHIcqt2OjJ5hf7KmOysIw6z2jW+hRwnD32zLMb04eeKZSjgomH08pkwee19DTCztcS2SgbxI0afb0iCkKzx6YzZ57Zg4kEvLNn3pPMD9RWzCdBs8f/vq9RNK/tJnbTsMwDEDFijTESlXYG1TqyxBi4v+/D9eLdZTaklct9QtlgbnHcRxf7MPPlBOdNSeYnnOUnVvMWDnRV7HtddjA2eWcuKi6i/yODNPtw9+/LZxP+X4CJXJWosv01uvD3C9HRVRu5eSshJxQjeOsD/NVNJXzcRlH0Z5wTtF+fiTn0wQzq68ieRzSs0LsU51TwonMonJpd8GXcMY6LcbnnFa7aeS+i5MYfyTG212WcXJq5C9LcZnfn9xl3CvdkTs74QTTXj/nrO/sjjyB3MS9ZO8xy7sBmnL63ERT6tBx0ekwAU046xyMvI9ccy0upyZeybetQYcovyXXhNMqwdNzwOlqh76adaxAT+6tXU5NHv9C7VCL1Ujfi8hPM4YxnFkMayT1b6sd0EmNBGj9T8jqrXQRoQ6IayTqsrgWRHxhy5JfjMuVH9tOOMW4Yc3rxzcbFzFt2U5q+1dq+/greUgWHSa1faXT9TDaSelKvWNa+iZiXO3VANq0V4PXis69Wm9gak8Kr1WdeO6OvTc6GHCKF+3ZY3T9PryofS9VpoSKiQehU+MfPeMWoAd6xmC6PjW98Rag9MbZTXQSFxrNALCszgDCfjwB8NFZB8Ksg7DndDaZ6UDJTEdDkNdJd7PMrh4edxxEdHaFZcN5GTO6/1btXbVhIIqiKKhNm5RJ4f//yIixLgtxjY9Ho3GVNMtHeWCY/f1Et5WV23FH5xco3EWuociHC9DXd66ueQu9PnKrO1dPltmvs6HXpiJ/kWcTCf1xh35hpDt0pMOEjtJEKzA3tcgvpHypm/5KWxMxM1ITUWRoIqDaD1Mn2w9kaFwKbY1LUHvj4sEG0/+G1vLsryxqeazMXY2AqJolkVS57aNtb5asjCb03GZt2PPrXZuVezBqBWH71FODBg4NGhLazY5eb+20YMRger5HxfinKeTyFptCaGgnab2dHCOFuNHs6shgP2pEpanK1GB21NaPWtgsMnNlXEHs6+b38Wx+d5CIzGafSj3c1jaLm2fa5qxih+wM7gBLRE6aVGNbOn5ww8tgNqkS+R0esqPJJ66bxpZb9NDK20HiomlssWxf1hu70bS2Bjve0v2mn234zs0miTV//gHyyprZmiIc9wAAAABJRU5ErkJggg==",
oga:115,lAa:117}});
define("ke","require,jquery.mod,fg,ll,bZ,eO,r".split(","),function(a){var b=a("jquery.mod"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),a=a("r");if(a.Jc()!=a.aA){var g=function(a){return a.requestFullscreen||a.msRequestFullscreen||a.mozRequestFullScreen||a.webkitRequestFullscreen},k=function(){return document.exitFullscreen||document.msExitFullscreen||document.mozCancelFullScreen||document.webkitExitFullscreen},i=document.createElement("div");if(a=!(g(i)||k())){var p;try{p=window.self===window.top}catch(j){p=
y}a=!p}if(a){var l=c.extend(e,function(a){e.call(this);this.J=a}),q=n;l.NZ=function(a){q=a=="out_of_frame"};l.prototype.available=function(){return q};l.prototype.Dh=function(){this.toggle()};l.prototype.Yd=C();l.prototype.toggle=function(){q&&window.open(window.self.location.href,"_blank")};l.prototype.enabled=function(){return l.enabled()};l.enabled=R(y);l.cm=R(r);l.Yd=C();return l}l=c.extend(e,function(a){e.call(this);this.J=a;this.Xr=g(a);this.lQ=k();this.W=this.dS();var c=this;b(document).bind("msfullscreenchange webkitfullscreenchange mozfullscreenchange fullscreenchange",
function(){c.pW()});b(window).bind("resize",function(){c.pW()})});l.NZ=C();l.prototype.available=function(){return!(!g(this.J||i)&&!k())};l.prototype.Dh=function(){this.enabled()||this.toggle()};l.prototype.Yd=function(){this.enabled()&&this.toggle()};l.prototype.toggle=function(){this.enabled()?this.lQ.call(document):this.Xr.call(this.J);this.pW()};l.prototype.enabled=function(){return this.W&&this.dS()};l.prototype.dS=function(){return this.J===l.cm()};l.prototype.pW=function(){var a=this.dS();
if(this.W!=a){this.W=a;this.trigger(new f(d.aa))}};l.enabled=function(){return!!l.cm()};l.cm=function(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement};l.Yd=function(){l.enabled()&&k().call(document)}}else{l=c.extend(e,function(a){e.call(this);this.J=a});l.prototype.available=R(n);l.prototype.Dh=function(){this.enabled()||this.toggle()};l.prototype.Yd=function(){this.enabled()&&this.toggle()};l.prototype.toggle=function(){if(this.enabled()){o();
l.Yq=r}else{l.Yq&&l.Yq.Yd();o();var a=t();a.push("fullscreen");s(a);l.Yq=this}this.trigger(new f(d.aa))};l.prototype.enabled=function(){return this==l.Yq};l.enabled=function(){return!!l.cm()};l.cm=function(){return l.Yq&&l.Yq.J};l.Yd=function(){l.enabled()&&l.Yq.Yd()};l.NZ=C();l.Yq=r;var o=function(){for(var a=t(),b=[],c=0;c<a.length;c++)a[c]!="fullscreen"&&b.push(a[c]);s(b)},t=function(){var a=window.location.hash.substring(1);return a.length?a.split("&"):[]},s=function(a){window.location.hash="#"+
(a.length?a.join("&"):"")}}return l});
define("gL","require,jquery.mod,fg,lk,r,jt,lC,bK,ke,cJ".split(","),function(a){function b(a,b){this.Ata=a;this.Xia=b;this.nW=[];this.Cg=r;this.FD=y}var c=a("jquery.mod"),d=a("fg"),f=a("lk"),e=a("r"),g=a("jt"),k=a("lC"),i=a("bK"),p=a("ke"),j=a("cJ"),l="color:#000; font-family:Arial, Helvetica, sans-serif;",q="",o="border-color:#b2b2b2;",t=o,s="background-color:#009adb; border:none; box-sizing:border-box; color:#fff; cursor:pointer; font-family:Arial, Helvetica, sans-serif; text-align:center;",u="vertical-align:middle; padding:0;",
v='<img style="width:33vmin;" src="'+i.rm+'"/>',w='<img style="width:24vmin;" src="'+i.rm+'"/>',x='<img style="width:34vmin;" src="'+i.SN+'"/>',z='<img style="width:34vmin;" src="'+i.ufa+'"/>',F='<img style="width:24vmin;" src="'+i.$fa+'"/>';if(e.Xa()){s=s+" margin:0 1vmin; min-width:20vmin; padding:2.2vmin 4vmin; font-size:3.6vmin; font-weight:bold; min-width:30vmin;";l=l+" font-size:3.6vmin; line-height:4.3vmin;";q=q+" margin:5vmin 0;";o=o+" margin:5vmin 0;";t=t+" margin:3vmin 0;";u=u+" height:4vmin; margin:0 1vmin 0 0; width:4vmin;"}else s=
s+" font-size:19px; padding:17px 34px;";q=q+l;b.prototype.RQ=function(){if(!this.Cg){this.Cg=c("<div/>");this.Cg.css({position:"fixed","z-index":k.Cfa,left:0,top:0,margin:0,padding:0,height:"100%",width:"100%","background-color":"rgba(255, 255, 255, 0.99)"});this.Cg.html(this.Xia);c(this.Cg).find("button").on("click",function(a){this.wna(c(a.currentTarget).attr("id"))}.bind(this))}};b.prototype.IV=function(a,b){var c={},e;for(e in b)c[e]=a.css(e);this.nW.push({$el:a,css:c});a.css(b)};b.prototype.Kpa=
function(){for(;this.nW.length;){var a=this.nW.pop();a.$el.css(a.css)}};b.prototype.show=function(a,b,e){a||(a=C());b||(b=C());if(this.FD){var d=this.CH;this.CH=function(){d();a()};var i=this.pH;this.pH=function(){i();b()}}else{this.RQ();this.CH=a;this.pH=b;var g=this.Zka();if(g===m){this.FD=n;var f=this,g=c(p.cm()||document.body);if(e!==n)g.children().each(function(){f.IV(c(this),{visibility:"hidden"})});else{this.IV(g,{overflow:"hidden"});g.children().each(function(){f.IV(c(this),{position:"absolute",
"z-index":0})})}g.append(this.Cg)}else{this.FD=y;g?this.CH():this.pH()}}};b.prototype.hide=function(){if(this.FD){this.FD=y;this.Cg.detach();this.Kpa()}};b.prototype.Zka=function(){var a=j.getItem(this.H4());if(a=="true")return n;if(a=="false")return y};b.prototype.H9=function(a){j.setItem(this.H4(),a?"true":"false")};b.prototype.H4=function(){return this.Ata+"DontDisplay:"+window.location.pathname};b.prototype.wna=function(a){var b=c("#tdvvriw_dontdisplay").is(":checked");this.hide();if(a=="tdvvriw_continue"){this.CH();
b&&this.H9(n)}else if(a=="tdvvriw_cancel"){this.pH();b&&this.H9(y)}};var a=d.extend(b,function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>',v,'<div style="'+q+'">'+f("use-cardboard-info")+"</div>",'<div><button style="'+s+'" id="tdvvriw_continue">'+f("use-cardboard")+"</button></div>","</div>",'<hr style="'+o+'">',"<div>",'<div style="'+q+'">','<div style="margin-bottom:2vmin;">'+
f("samsung-internet-vr-app-info")+"</div>",'<div><button style="'+s+'" id="tdvvriw_cancel">'+f("launch-default-browser")+"</button></div>","</div>",z,"</div>\n</div></div>",'<div style="position:absolute; left:12vmin; right:12vmin; bottom:6vmin; '+q+'">','<input type="checkbox" id="tdvvriw_dontdisplay" name="tdvvriw_dontdisplay" value="true" style="'+u+'"><label for="tdvvriw_dontdisplay">'+f("dont-display-again")+"</label>","</div>"].join("\n");b.call(this,"ChromeAppInfoWindow",a)}),A=d.extend(b,
function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>',v,'<div style="'+q+'">'+f("use-cardboard-info")+"</div>",'<div><button style="'+s+'" id="tdvvriw_continue">OK</button></div>',"</div>",'<hr style="'+o+'">',"<div>",'<div style="'+q+'">','<div style="margin-bottom:2vmin;">'+f("samsung-internet-vr-info")+"</div>","</div>",z,"</div>\n</div></div>",
'<div style="position:absolute; left:12vmin; right:12vmin; bottom:6vmin; '+q+'">','<input type="checkbox" id="tdvvriw_dontdisplay" name="tdvvriw_dontdisplay" value="true" style="'+u+'"><label for="tdvvriw_dontdisplay">'+f("dont-display-again")+"</label>","</div>"].join("\n");b.call(this,"SamsungInternetInfoWindow",a)}),K=d.extend(b,function(){b.call(this,"SamsungInternetForGearVRInfoWindow",['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>',
z,'<div style="'+q+'">This content requires access to the WebVR API.<br>To enable WebVR open the "More" menu you\'ll find above this window and then click on the "Labs" item.</div>','<div><button style="'+s+'" id="tdvvriw_cancel">OK</button></div>',"</div>\n</div></div>"].join("\n"))}),E=d.extend(b,function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">','<div style="'+
q+'"></div>','<div style="text-align:center;"><button style="'+s+' box-shadow:0 0 4px rgba(0, 0, 0, 0.5);" id="tdvvriw_continue">'+f("exit-vr")+"</button></div>","</div></div>"].join("\n");b.call(this,"ExternalVRDisplayVRInfoWindow",a)});E.prototype.RQ=function(){b.prototype.RQ.call(this);g.Yg("vrv")===n&&this.Cg.css({background:"none"})};var J=d.extend(b,function(){var a;a=e.browser()==e.Df?window.location.protocol!="https:"?"<div>"+f("giroscope-disabled-http")+"</div>":window.DeviceMotionEvent.requestPermission?
f("giroscope-disabled-safari-request-permission").map(function(a){return"<div>"+a+"</div>"}).join("\n"):f("giroscope-disabled-safari-toggle-on"):"<div>"+f("giroscope-disabled-http")+"</div>";a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>','<div style="'+q+'">',a,"</div>",'<div><button style="'+s+'" id="tdvvriw_continue">OK</button></div>',"</div>\n</div></div>",
'<div style="position:absolute; left:12vmin; right:12vmin; bottom:6vmin; '+q+'">','<input type="checkbox" id="tdvvriw_dontdisplay" name="tdvvriw_dontdisplay" value="true" style="'+u+'"><label for="tdvvriw_dontdisplay">'+f("dont-display-again")+"</label>","</div>"].join("\n");b.call(this,"GiroscopeDisabledInfoWindow",a)}),B=d.extend(b,function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>',
v,'<div style="'+q+'">'+f("use-cardboard-info")+'</div><div><button style="'+s+'" id="tdvvriw_continue">'+f("use-cardboard")+"</button></div>","</div>",'<hr style="'+o+'">',"<div>",z,'<div style="'+q+'">It looks like this device is compatible with Gear VR. If you have a Gear VR headset you can view this content using the Carmel Web Browser (by Oculus).</div>','<div><button style="'+s+'" id="tdvvriw_cancel">Use Carmel web browser</button></div>',"</div>\n</div></div>"].join("\n");b.call(this,"CarmelInstallationPromptVRInfoWindow",
a)}),O=d.extend(b,function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">\n<div>',v,'<div style="'+l+' margin:2vmin 0;">'+f("cardboard-v1")+"</div>",'<div><button style="'+s+'" id="tdvvriw_cancel">'+f("use-default-cardboard")+"</button></div>","</div>",'<hr style="'+t+'">',"<div>",'<div style="'+l+' margin-bottom:2vmin;">'+f("cardboard-v2")+"</div>",'<div><button style="'+
s+'" id="tdvvriw_continue">'+f("use-cardboard-v2")+"</button></div>",x,"</div>\n</div></div>",'<div style="position:absolute; left:12vmin; right:12vmin; bottom:6vmin; '+q+'">','<input type="checkbox" id="tdvvriw_dontdisplay" name="tdvvriw_dontdisplay" value="true" style="'+u+'"><label for="tdvvriw_dontdisplay">'+f("dont-display-again")+"</label>","</div>"].join("\n");b.call(this,"CardboardV2InfoWindow",a)}),N=d.extend(b,function(){var a=['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">',
'<div style="'+q+'"></div>','<div style="text-align:center;"><button style="'+s+'" id="tdvvriw_continue">'+f("enter-vr")+"</button></div>","</div></div>"].join("\n");b.call(this,"EnterVRInfoWindow",a)}),I=d.extend(b,function(){b.call(this,"PreparingVRInfoWindow",['<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">','<div style="'+q+'">Preparing VR...</div>',"</div></div>"].join("\n"))}),
L=d.extend(b,function(){var a=['<div style="position: absolute; top: 7vmin; right:5vmin; ">',w,'</div>\n<div style="box-sizing:border-box; margin:0; padding:0 12vmin; display:table; height:100%; width:100%;"><div style="vertical-align:middle; text-align:center; display:table-cell;">',F,'<div style="'+q+'">'+f("use-safari-for-vr")+"</div>",'<div style="text-align:center;"><button style="'+s+'" id="tdvvriw_continue">OK</button></div>',"</div></div>",'<div style="position:absolute; left:12vmin; right:12vmin; bottom:6vmin; '+
q+'">','<input type="checkbox" id="tdvvriw_dontdisplay" name="tdvvriw_dontdisplay" value="true" style="'+u+'"><label for="tdvvriw_dontdisplay">'+f("dont-display-again")+"</label>","</div>"].join("\n");b.call(this,"UseSafariVRInfoWindow",a)}),d=d.extend(b,function(){var a=['<div style="position: absolute; top: 5vmin; right:5vmin;">','<img style="width:24vmin" src="'+i.rm+'"/>','</div>\n<div style="box-sizing:border-box; padding:0 10vmin; display:table; height:100%; width:100vw;">\n<div style="vertical-align:middle; text-align:center; display:table-cell;">',
'<img style="width:22vmin" src="'+i.jA+'"/>','<div style="color:#000; font-family:Arial, Helvetica, sans-serif; font-size:3.6vmin; line-height:4.3vmin; margin:5vmin 0; text-align:center;">'+f("rotate-device")+"</div>","</div>\n</div>"].join("\n");b.call(this,"RotateVRInfoWindow",a)}),G={};G.aga=new A;G.fAa=new K;G.S_=new E;G.Nza=new B;G.Rza=new N;G.$za=new I;G.e1=new L;G.jA=new d;G.X_=new J;G.gfa=new a;G.SN=new O;return G});define("cw",["require"],function(){return{rm:"Cardboard",qga:"WebVR",rga:"WebXR"}});
define("fK","require,iX,r,gl,jt,V".split(","),function(a){var b=a("iX"),c=a("r"),d=a("gl"),f=a("jt");a("V");var e={ywa:function(a){return this.nF(a)||this.dda(a)?n:y},Yn:function(){var a=c.fxa();e.Yn=function(){return a};return a},dda:function(a){return typeof a=="string"&&d.is(a,d.Ki)?n:y},eBa:function(a){return this.VY(a)||this.WY(a)?n:y},WY:function(a){return typeof a=="string"&&(d.is(a,d.Afa)||d.Zv(a,d.Bfa))?n:y},nF:function(a){return!!a&&!!a.tagName&&a.tagName=="VIDEO"},Es:function(a){return typeof a==
"string"&&d.is(a,d.Pj)||this.nF(a)&&d.is(a.currentSrc,d.Pj)?n:y},Hh:function(a){return typeof a=="string"&&d.is(a,d.Ki)||this.nF(a)&&d.is(a.currentSrc,d.Ki)?n:y},VY:function(a){return!!a&&!!a.tagName&&a.tagName=="IMG"},Uca:function(a){return!!a&&!!a.tagName&&a.tagName=="CANVAS"},bca:function(a){return Math.pow(2,Math.round(Math.log(a)/Math.LN2))},ada:function(a){return a!==0&&(a&a-1)===0},Wca:function(){return c.browser()==c.Ei},rwa:function(){return c.browser()==c.iq},Dj:function(){return c.Zd()==
c.Qj},Yea:function(a){if(k)return n;if(c.ZX()&&c.CF()<15.1)if(c.CF()>=15){if(c.Bca())return n}else if(e.Es(a))return n;if(e.rwa())return n;if(e.Dj()){if(c.xs()==c.Bw&&c.Yv()>=15)return y;if(e.Es(a)){if(!b.Oca||c.Yv()>=14&&c.Yv()<14.6)return n}else if(c.Yv()<12||a&&a.videoWidth&&a.videoHeight&&a.videoWidth*a.videoHeight<=262144)return n}return y},Gca:function(){return e.Wca()||e.Dj()},Fca:function(){return e.Dj()&&b.Oca&&c.Yv()<11}},g=y;e.Qca=function(){g=y};e.hwa=function(){return g};e.Mxa=function(){g=
n};var k=f.ag("vic");e.bxa=function(){e.Dj()&&(k=n)};e.bY=function(a,b){var d={alpha:n,depth:n,stencil:n,antialias:c.bda()||c.lwa()||c.UY()?y:b||y,premultipliedAlpha:n,preserveDrawingBuffer:y,powerPreference:"default",failIfMajorPerformanceCaveat:y,xrCompatible:!e.Wca()};return a.getContext("webgl",d)||a.getContext("experimental-webgl",d)};e.getPixelRatio=function(){if(c.Xa()){var a,b,e;try{a=window.top.innerWidth;b=window.top.innerHeight;e=n}catch(d){e=y}var g=window.devicePixelRatio||1;if(e){a=
[Math.max(document.documentElement.clientWidth,a||0),Math.max(document.documentElement.clientHeight,b||0)].sort(function(a,b){return b-a});g=[screen.width*g,screen.height*g].sort(function(a,b){return b-a});g=[g[0]/a[0],g[1]/a[1]].sort()[0]}if(g!==Infinity)return g}else if(c.Zd()==c.Efa&&c.browser()==c.Di)return 1;return window.devicePixelRatio};return e});
define("dc","require,fg,jquery.mod,do,lk,bK,ll,r,d,ks,kF".split(","),function(a){function b(){this.Ic=y;this.WD=r;this.ha=this.X=100;this.SS=this.Mf=m;this.TS=100;this.J=document.createElement("div");this.J.style.opacity=0;this.J.style.display="none";this.J.style.CBa="opacity 0.3s";this.J.addEventListener("transitionend",this.EW.bind(this));this.Ad=document.createElement("div");this.CZ(n);this.Ad.style.position="absolute";this.Ad.style.left=0;this.Ad.style.top=0;this.Ad.style.right=0;this.Ad.style.bottom=
0;this.J.appendChild(this.Ad);this.yb=document.createElement("img");this.yb.style.cursor="pointer";this.yb.style.position="absolute";this.yb.style.left="50%";this.yb.style.top="50%";this.yb.style.transform="translate(-50%, -50%)";this.J.appendChild(this.yb);this.mP=f(this.J)}function c(a,b){this.reason=a;this.Bp=b}var d=a("fg"),f=a("jquery.mod");a("do");a("lk");var e=a("bK"),g=a("ll"),k=a("r"),i=a("d"),p=a("ks"),j=a("kF"),l=d.extend(i,function(){i.call(this);this.Uc("UserInteractionWindow");this.Ga=
r;this.Vm=[];var a=new p;a.set("duration",500);a.set("easing","cubic_in");var b=new j;b.set("duration",500);b.set("easing","cubic_out");this.M({contentOpaque:n,left:0,top:0,right:0,bottom:0,hideEffect:b,showEffect:a,visible:y});this.bind(g.vb,this.rX,this,n);this.bind(g.U,this.qta,this,n)});l.prototype.rX=function(){this.Ga&&this.Ga.setSize(this.Hd(),this.Gd())};l.prototype.qta=function(){var a=this.Vm.slice();this.Vm=[];this.FL();a.forEach(function(a){a.Bp.call(a.context)})};l.prototype.Fa=function(){i.prototype.Fa.call(this);
if(!this.Ga){this.Ga=new b;this.Ga.setSize(this.Hd(),this.Gd());this.Ga.xe(n);this.Pa().append(this.Ga.Cb().css({position:"absolute",left:0,top:0,right:0,bottom:0,overflow:"hidden"}));this.FL()}};l.prototype.al=function(){i.prototype.al.call(this);this.getParent().bind(g.vb,this.rX,this,n);l.Uga(this)};l.prototype.nj=function(){this.getParent().unbind(g.vb,this.rX,this,n);i.prototype.nj.call(this);l.wpa(this)};l.prototype.yxa=function(a){this.Xr(o,a)};l.prototype.xZ=function(a){this.Xr(q,a)};l.prototype.Xr=
function(a,b){this.Vm.push(new c(a,b));this.Vm.sort(function(a,b){return t[a.reason]-t[b.reason]});this.FL()};l.prototype.cua=function(a){this.cancel(o,a)};l.prototype.aua=function(){this.cancel(q,m)};l.prototype.cancel=function(a,b){var c=this.Hla(a,b);c>=0&&this.Dpa(c)};l.prototype.y2=function(){this.VG(n)};l.prototype.dH=function(){this.VG(y)};l.prototype.Hla=function(a,b){for(var c=0;c<this.Vm.length;c++){var e=this.Vm[c];if(e.reason==a&&e.Bp==b)return c}return-1};l.prototype.FL=function(){if(this.Ga){var a=
this.Qla();if(a){switch(a.reason){case q:this.Ga.pN(b.Z_);break;case o:this.Ga.pN(b.wG)}this.set("visible",n)}else this.set("visible",y)}};l.prototype.Dpa=function(a){this.Vm.splice(a,1);a==this.Vm.length&&this.FL()};l.prototype.Qla=function(){return this.Vm.length>0?this.Vm[0]:r};var q="vr",o="play",t={};t[q]=0;t[o]=1;b.prototype.Cb=Q("mP");b.prototype.setSize=function(a,b){if(this.X!==a||this.ha!==b){this.X=a;this.ha=b;this.GL()}};b.prototype.CZ=function(a){this.Ad.style.backdropFilter=a?"blur(8px)":
"none"};b.prototype.xe=function(a){if(this.Ic!=a){this.Ic=a;if(this.WD){clearTimeout(this.WD);this.WD=r}if(this.Ic){this.J.style.display="block";this.J.style.opacity=0;this.WD=setTimeout(function(){this.WD=r;this.J.style.opacity=1}.bind(this),30)}else this.J.style.opacity=0}};b.prototype.pN=function(a){if(this.Mf!=a){this.Mf=a;this.Psa()}};b.prototype.EW=function(){if(!this.Ic)this.J.style.display="none"};b.prototype.Psa=function(){switch(this.Mf){case b.wG:this.SS=e.qt;this.TS=e.Wfa;break;case b.Z_:this.SS=
e.mga;this.TS=e.oga}this.yb.src=this.SS;this.GL()};b.prototype.GL=function(){if(k.Xa()){this.yb.style.maxWidth=Math.round(this.X*0.5)+"px";this.yb.style.width="20vmin"}else{this.yb.style.maxWidth=Math.round(this.X*0.33)+"px";this.yb.style.width=this.TS+"px"}};b.wG="play";b.Z_="vr";l.CG=b;l.Yc=[];l.CU=[];l.Uga=function(a){l.Yc.push(a);l.CU.forEach(function(b){l.A5(a,b)});l.CU=[]};l.wpa=function(a){l.Yc.splice(l.Yc.indexOf(a),1)};l.ready=function(){return l.Yc.length>0};l.xZ=function(a){l.Yc.length?
l.Yc.forEach(function(b){l.A5(b,a)}):l.CU.push(a)};l.A5=function(a,b){a.xZ(function(){l.Yc.forEach(function(b){b!=a&&b.aua()});b()})};return l});
define("lb",["require"],function(){var a={Oj:{}};a.Oj.NONE="none";a.Oj.qa="left";a.Oj.Ma="right";a.jh=function(){this.y=this.x=0;this.height=this.width=1};a.f1=function(){this.eye=a.Oj.NONE;this.viewport=new a.jh;this.position=new THREE.Vector3;this.orientation=new THREE.Quaternion;this.projectionMatrix=new THREE.Matrix4};a.tfa=function(){this.position=new THREE.Vector3;this.orientation=new THREE.Quaternion;this.views=[];this.tM=[]};a.Gfa=function(){this.VE=r;this.Fk=200;this.yj=100;this.pM=1};return a});
define("dh",["require"],function(){return{qG:"gaze",HO:"gaze_click"}});
define("fA","require,fg,ll,fK,eO,dc,lb,r,gL,jt,dh".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("fK"),f=a("eO"),e=a("dc"),g=a("lb"),k=a("r"),i=a("gL"),p=a("jt"),j=a("dh"),a=b.extend(f,function(){f.call(this);this.u9=j.qG;this.uk=[];this.Ac=new g.tfa;this.og=new g.f1;this.og.eye=g.Oj.qa;this.rg=new g.f1;this.rg.eye=g.Oj.Ma;this.Ac.views=[this.og,this.rg];this.Rc=new g.Gfa;this.bind(c.aa,this.Fu,this,y)});a.prototype.im=C();a.prototype.Dh=C();a.prototype.Yd=C();a.prototype.zM=Q("Rc");a.prototype.zn=
Q("Ac");a.prototype.La=C();a.prototype.isPresenting=C();a.prototype.Qd=C();a.prototype.CM=Q("u9");a.prototype.Sv=C();a.prototype.$y=function(a){this.uk.indexOf(a)<0&&this.uk.push(a)};a.prototype.iN=function(a){this.uk.splice(this.uk.indexOf(a),1);this.Sv()==a&&this.Yd()};a.prototype.tN=function(a){var b=this.uk.indexOf(a);if(!(b<0||b==this.uk.length-1)){this.uk.splice(b,1);this.uk.splice(this.uk.length,0,a)}};a.prototype.Ala=function(){return this.uk.length>0?this.uk[this.uk.length-1]:r};a.prototype.zV=
function(){var a=this.Ala();if(a==r){a=document.createElement("canvas");a=d.bY(a);this.$y(a)}return a};a.prototype.zK=function(a){e.xZ(a)};a.prototype.YV=function(a){if(k.Jc()==k.Aw){this.jV();i.gfa.show(a,function(){this.X1()}.bind(this))}else k.WE()&&k.Jc()==k.bA?i.aga.show(a):k.Jc()==k.eG?i.e1.show(a):k.Jc()==k.fG?i.e1.show():a()};a.prototype.AV=function(a){var b=function(b){this.u9=b;a()}.bind(this);!k.Xa()||k.we()?b(j.qG):p.Fn("cardboard_version")=="1"?b(j.qG):p.Fn("cardboard_version")=="2"?
b(j.HO):i.SN.show(function(){b(j.HO)}.bind(this),function(){b(j.qG)}.bind(this))};a.prototype.Fu=function(){k.Xa()||(this.isPresenting()?i.S_.show(this.Yd.bind(this)):i.S_.hide())};a.prototype.X1=function(){this.jV();var a=this.m5();a.push("vr");this.h2(a)};a.prototype.jV=function(){this.h2(this.m5().filter(function(a){return a!="vr"}))};a.prototype.m5=function(){var a=window.location.hash.substring(1);return a.length?a.split("&"):[]};a.prototype.h2=function(a){window.location.hash="#"+(a.length?
a.join("&"):"")};return a});
define("p",["require","jquery.mod","ke"],function(a){function b(){j.get(0)==document.body&&g.height(window.innerHeight)}function c(a,b){var c={},e;for(e in b)c[e]=a.css(e);l.push({$el:a,css:c});a.css(b)}function d(a){this.J=a}var f=a("jquery.mod"),e=a("ke");d.prototype.Dh=function(){this.enabled()||this.toggle()};d.prototype.Yd=function(){this.enabled()&&this.toggle()};d.prototype.toggle=function(){this.enabled()?d.cancel():d.zg(this.J)};d.prototype.enabled=function(){return d.enabled(this.J)};var g=
f("<div/>").css({position:"fixed",bottom:0,left:0,height:"100vh",width:"100vw"}),k=f("<div/>"),i=r,p=r,j=r,l=[],q=r;d.zg=function(a){if(a!==i){d.cancel();i=a;var l=e.cm()||document.body;p=f(a);j=f(l);k.insertAfter(p);p.appendTo(g);j.children().each(function(){c(f(this),{visibility:"hidden"})});c(p,{position:"absolute",left:0,top:0,width:"100%",height:"100%"});l==document.body?c(g,{position:"fixed",left:0,top:"",right:"",bottom:0,height:"100vh",width:"100vw",margin:0,padding:0}):c(g,{position:"absolute",
left:0,top:0,right:"",bottom:"",width:"100%",height:"100%",margin:0,padding:0});g.appendTo(j);b();q=setInterval(b,300)}};d.cancel=function(){if(i){g.detach();p.insertBefore(k);for(k.detach();l.length;){var a=l.pop();a.$el.css(a.css)}j=p=i=r;l=[];clearInterval(q)}};d.enabled=function(a){return i==a};return d});
define("iD","require,fg,ll,bZ,eO,lk,bK".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("lk"),a=a("bK"),g=['<div style="position: absolute; top: 5vmin; right:5vmin;">','<img style="width:24vmin" src="'+a.rm+'"/>','</div>\n<div style="box-sizing:border-box; padding:0 10vmin; display:table; height:100%; width:100vw;">\n<div style="vertical-align:middle; text-align:center; display:table-cell;">'].join("\n"),k=g+['<img style="width:22vmin" src="'+a.jA+'"/>','<div style="color:#000; font-family:Arial, Helvetica, sans-serif; font-size:3.6vmin; line-height:4.3vmin; margin:5vmin 0; text-align:center;">'+
e("rotate-device")+"</div>"].join("\n")+"</div>\n</div>",i=g+['<img style="width:13vmin; vertical-align:middle;" src="'+a.ega+'"/>','<div style="color:#000; font-family:Arial, Helvetica, sans-serif; font-size:3.6vmin; line-height:4.3vmin; text-align:left; display:inline-block; vertical-align:middle; margin:5vmin 0 0 2vmin;">Please, swipe up to<br>enter Fullscreen Mode</div>'].join("\n")+"</div>\n</div>",b=b.extend(f,function(){f.call(this);this.ei=this.Xj=this.Yj=this.QB=this.RB=this.xT=this.yT=m;
this.HI=y;this.Zr=this.MU=this.wT=this.Bd=r;this.o4=[];this.$S=this.Ml=y;this.jb=this.jb.bind(this)});b.prototype.zg=function(){if(!this.Ml){this.Ml=n;this.QQ();window.addEventListener("resize",this.jb);document.body.appendChild(this.Bd);document.body.appendChild(this.Zr);this.Lra=document.documentElement.style.overflow;this.Kra=document.body.style.overflow;document.documentElement.style.overflow="auto";document.body.style.overflow="auto";this.HC()}};b.prototype.cancel=function(){if(this.Ml){this.Ml=
y;window.removeEventListener("resize",this.jb);document.body.style.overflow=this.Kra;document.documentElement.style.overflow=this.Lra;document.body.removeChild(this.Bd);document.body.removeChild(this.Zr);this.J9(y)}};b.prototype.enabled=Q("HI");b.prototype.QQ=function(){if(!this.Bd){this.Bd=this.GH({position:"fixed",top:0,left:0,zIndex:9999998},n);this.Bd.id="tdvminuictr";this.MU=this.GH({position:"fixed",backgroundColor:"#fff",top:0,left:0,textAlign:"center"},n,k);this.Bd.appendChild(this.MU);this.wT=
this.GH({position:"fixed",backgroundColor:"#fff",top:0,left:0,textAlign:"center"},n,i);this.Bd.appendChild(this.wT);this.Zr=this.GH({position:"absolute",top:0,left:0,right:0,height:"999999999vmax",zIndex:9999999},y);this.Zr.id="tdvminuiscrl";this.Zr.addEventListener("touchend",this.jb)}};b.prototype.GH=function(a,b,c){var e=document.createElement("div");this.xD(e,a);c!==m&&this.Dqa(e,c);b&&this.o4.push(e);return e};b.prototype.jb=function(){[0,250,1E3,2E3].forEach(function(a){setTimeout(this.lU.bind(this),
a)}.bind(this))};b.prototype.lU=function(){(this.Yj!=window.innerWidth||this.Xj!=window.innerHeight)&&this.HC()};b.prototype.HC=function(){this.Yj=window.innerWidth;this.Xj=window.innerHeight;this.ei=this.Yj>this.Xj?"landscape":"portrait";var a;if(this.ei=="landscape"){if(this.yT&&this.xT&&this.Pma(this.yT,this.xT)&&(!this.RB&&!this.QB||this.Qma(this.RB,this.QB))){this.RB=this.Yj;this.QB=this.Xj}if(this.Lma()){this.RB=this.Yj;this.QB=this.Xj}this.yT=this.Yj;this.xT=this.Xj;a=this.RB==this.Yj&&this.QB==
this.Xj}else a=y;this.o4.forEach(function(a){a.style.height=this.Xj+"px";a.style.width=this.Yj+"px"}.bind(this));var b=this.Ml&&this.ei=="portrait",c=this.Ml&&this.ei=="landscape"&&!a,e=this.Ml&&this.ei=="landscape";this.xD(this.Bd,{display:b||c?"block":"none"});this.xD(this.MU,{display:b?"block":"none"});this.xD(this.wT,{display:c?"block":"none"});this.xD(this.Zr,{display:e?"block":"none",right:c?0:"99.9%"});this.J9(a)};b.prototype.J9=function(a){if(this.RK!=r){clearTimeout(this.RK);this.RK=r}if(this.HI!=
a)this.RK=setTimeout(function(){this.RK=r;(this.HI=a)?this.trigger(new d(c.Pk)):this.trigger(new d(c.Ba));this.trigger(new d(c.aa))}.bind(this),a?1E3:0)};b.prototype.Lma=function(){var a=window.innerWidth,b=window.innerHeight,c=Infinity;[[480,320],[960,640],[1136,640],[1334,750],[1920,1080],[2001,1125],[2048,1536],[2172,1125],[2208,1242],[2732,2048],[2436,1125]].forEach(function(e){c=Math.min(c,Math.abs(100-100*a*e[1]/(b*e[0])))});return c<=1?n:y};b.prototype.Pma=function(a,b){return a*window.innerHeight>
b*window.innerWidth};b.prototype.Qma=function(a,b){return a*window.innerHeight>=b*window.innerWidth};b.prototype.xD=function(a,b){for(var c in b)a.style[c]=b[c]};b.prototype.Dqa=function(a,b){a.innerHTML=b};return new b});
define("lq","require,ge,r,ka,ga,bD".split(","),function(a){var b=a("ge"),c=a("r"),d=a("ka"),f=a("ga"),e=a("bD");if(c.browser()==c.Di){a=function(){this.V=new d;this.V.src="data:video/mp4;base64,AAAAIGZ0eXBtcDQyAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAACKBtZGF0AAAC8wYF///v3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE0MiByMjQ3OSBkZDc5YTYxIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAxNCAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTEgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MToweDExMSBtZT1oZXggc3VibWU9MiBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0wIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MCA4eDhkY3Q9MCBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0wIHRocmVhZHM9NiBsb29rYWhlYWRfdGhyZWFkcz0xIHNsaWNlZF90aHJlYWRzPTAgbnI9MCBkZWNpbWF0ZT0xIGludGVybGFjZWQ9MCBibHVyYXlfY29tcGF0PTAgY29uc3RyYWluZWRfaW50cmE9MCBiZnJhbWVzPTMgYl9weXJhbWlkPTIgYl9hZGFwdD0xIGJfYmlhcz0wIGRpcmVjdD0xIHdlaWdodGI9MSBvcGVuX2dvcD0wIHdlaWdodHA9MSBrZXlpbnQ9MzAwIGtleWludF9taW49MzAgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVzaD0wIHJjX2xvb2thaGVhZD0xMCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIwLjAgcWNvbXA9MC42MCBxcG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IHZidl9tYXhyYXRlPTIwMDAwIHZidl9idWZzaXplPTI1MDAwIGNyZl9tYXg9MC4wIG5hbF9ocmQ9bm9uZSBmaWxsZXI9MCBpcF9yYXRpbz0xLjQwIGFxPTE6MS4wMACAAAAAOWWIhAA3//p+C7v8tDDSTjf97w55i3SbRPO4ZY+hkjD5hbkAkL3zpJ6h/LR1CAABzgB1kqqzUorlhQAAAAxBmiQYhn/+qZYADLgAAAAJQZ5CQhX/AAj5IQADQGgcIQADQGgcAAAACQGeYUQn/wALKCEAA0BoHAAAAAkBnmNEJ/8ACykhAANAaBwhAANAaBwAAAANQZpoNExDP/6plgAMuSEAA0BoHAAAAAtBnoZFESwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBnqVEJ/8ACykhAANAaBwAAAAJAZ6nRCf/AAsoIQADQGgcIQADQGgcAAAADUGarDRMQz/+qZYADLghAANAaBwAAAALQZ7KRRUsK/8ACPkhAANAaBwAAAAJAZ7pRCf/AAsoIQADQGgcIQADQGgcAAAACQGe60Qn/wALKCEAA0BoHAAAAA1BmvA0TEM//qmWAAy5IQADQGgcIQADQGgcAAAAC0GfDkUVLCv/AAj5IQADQGgcAAAACQGfLUQn/wALKSEAA0BoHCEAA0BoHAAAAAkBny9EJ/8ACyghAANAaBwAAAANQZs0NExDP/6plgAMuCEAA0BoHAAAAAtBn1JFFSwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBn3FEJ/8ACyghAANAaBwAAAAJAZ9zRCf/AAsoIQADQGgcIQADQGgcAAAADUGbeDRMQz/+qZYADLkhAANAaBwAAAALQZ+WRRUsK/8ACPghAANAaBwhAANAaBwAAAAJAZ+1RCf/AAspIQADQGgcAAAACQGft0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bm7w0TEM//qmWAAy4IQADQGgcAAAAC0Gf2kUVLCv/AAj5IQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHAAAAAkBn/tEJ/8ACykhAANAaBwAAAANQZvgNExDP/6plgAMuSEAA0BoHCEAA0BoHAAAAAtBnh5FFSwr/wAI+CEAA0BoHAAAAAkBnj1EJ/8ACyghAANAaBwhAANAaBwAAAAJAZ4/RCf/AAspIQADQGgcAAAADUGaJDRMQz/+qZYADLghAANAaBwAAAALQZ5CRRUsK/8ACPkhAANAaBwhAANAaBwAAAAJAZ5hRCf/AAsoIQADQGgcAAAACQGeY0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bmmg0TEM//qmWAAy5IQADQGgcAAAAC0GehkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGepUQn/wALKSEAA0BoHAAAAAkBnqdEJ/8ACyghAANAaBwAAAANQZqsNExDP/6plgAMuCEAA0BoHCEAA0BoHAAAAAtBnspFFSwr/wAI+SEAA0BoHAAAAAkBnulEJ/8ACyghAANAaBwhAANAaBwAAAAJAZ7rRCf/AAsoIQADQGgcAAAADUGa8DRMQz/+qZYADLkhAANAaBwhAANAaBwAAAALQZ8ORRUsK/8ACPkhAANAaBwAAAAJAZ8tRCf/AAspIQADQGgcIQADQGgcAAAACQGfL0Qn/wALKCEAA0BoHAAAAA1BmzQ0TEM//qmWAAy4IQADQGgcAAAAC0GfUkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGfcUQn/wALKCEAA0BoHAAAAAkBn3NEJ/8ACyghAANAaBwhAANAaBwAAAANQZt4NExC//6plgAMuSEAA0BoHAAAAAtBn5ZFFSwr/wAI+CEAA0BoHCEAA0BoHAAAAAkBn7VEJ/8ACykhAANAaBwAAAAJAZ+3RCf/AAspIQADQGgcAAAADUGbuzRMQn/+nhAAYsAhAANAaBwhAANAaBwAAAAJQZ/aQhP/AAspIQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHAAACiFtb292AAAAbG12aGQAAAAA1YCCX9WAgl8AAAPoAAAH/AABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAGGlvZHMAAAAAEICAgAcAT////v7/AAAF+XRyYWsAAABcdGtoZAAAAAPVgIJf1YCCXwAAAAEAAAAAAAAH0AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAygAAAMoAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAB9AAABdwAAEAAAAABXFtZGlhAAAAIG1kaGQAAAAA1YCCX9WAgl8AAV+QAAK/IFXEAAAAAAAtaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAFZpZGVvSGFuZGxlcgAAAAUcbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAAE3HN0YmwAAACYc3RzZAAAAAAAAAABAAAAiGF2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAygDKAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAAAyYXZjQwFNQCj/4QAbZ01AKOyho3ySTUBAQFAAAAMAEAAr8gDxgxlgAQAEaO+G8gAAABhzdHRzAAAAAAAAAAEAAAA8AAALuAAAABRzdHNzAAAAAAAAAAEAAAABAAAB8GN0dHMAAAAAAAAAPAAAAAEAABdwAAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAAC7gAAAAAQAAF3AAAAABAAAAAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAEEc3RzegAAAAAAAAAAAAAAPAAAAzQAAAAQAAAADQAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAANAAAADQAAAQBzdGNvAAAAAAAAADwAAAAwAAADZAAAA3QAAAONAAADoAAAA7kAAAPQAAAD6wAAA/4AAAQXAAAELgAABEMAAARcAAAEbwAABIwAAAShAAAEugAABM0AAATkAAAE/wAABRIAAAUrAAAFQgAABV0AAAVwAAAFiQAABaAAAAW1AAAFzgAABeEAAAX+AAAGEwAABiwAAAY/AAAGVgAABnEAAAaEAAAGnQAABrQAAAbPAAAG4gAABvUAAAcSAAAHJwAAB0AAAAdTAAAHcAAAB4UAAAeeAAAHsQAAB8gAAAfjAAAH9gAACA8AAAgmAAAIQQAACFQAAAhnAAAIhAAACJcAAAMsdHJhawAAAFx0a2hkAAAAA9WAgl/VgIJfAAAAAgAAAAAAAAf8AAAAAAAAAAAAAAABAQAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACsm1kaWEAAAAgbWRoZAAAAADVgIJf1YCCXwAArEQAAWAAVcQAAAAAACdoZGxyAAAAAAAAAABzb3VuAAAAAAAAAAAAAAAAU3RlcmVvAAAAAmNtaW5mAAAAEHNtaGQAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAidzdGJsAAAAZ3N0c2QAAAAAAAAAAQAAAFdtcDRhAAAAAAAAAAEAAAAAAAAAAAACABAAAAAArEQAAAAAADNlc2RzAAAAAAOAgIAiAAIABICAgBRAFQAAAAADDUAAAAAABYCAgAISEAaAgIABAgAAABhzdHRzAAAAAAAAAAEAAABYAAAEAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAUc3RzegAAAAAAAAAGAAAAWAAAAXBzdGNvAAAAAAAAAFgAAAOBAAADhwAAA5oAAAOtAAADswAAA8oAAAPfAAAD5QAAA/gAAAQLAAAEEQAABCgAAAQ9AAAEUAAABFYAAARpAAAEgAAABIYAAASbAAAErgAABLQAAATHAAAE3gAABPMAAAT5AAAFDAAABR8AAAUlAAAFPAAABVEAAAVXAAAFagAABX0AAAWDAAAFmgAABa8AAAXCAAAFyAAABdsAAAXyAAAF+AAABg0AAAYgAAAGJgAABjkAAAZQAAAGZQAABmsAAAZ+AAAGkQAABpcAAAauAAAGwwAABskAAAbcAAAG7wAABwYAAAcMAAAHIQAABzQAAAc6AAAHTQAAB2QAAAdqAAAHfwAAB5IAAAeYAAAHqwAAB8IAAAfXAAAH3QAAB/AAAAgDAAAICQAACCAAAAg1AAAIOwAACE4AAAhhAAAIeAAACH4AAAiRAAAIpAAACKoAAAiwAAAItgAACLwAAAjCAAAAFnVkdGEAAAAObmFtZVN0ZXJlbwAAAHB1ZHRhAAAAaG1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAAO2lsc3QAAAAzqXRvbwAAACtkYXRhAAAAAQAAAABIYW5kQnJha2UgMC4xMC4yIDIwMTUwNjExMDA=";this.V.loop=
n;this.V.Lp=n;this.Ka=r};a.prototype.kN=R(n);a.prototype.Qd=function(){return f.Ki};a.prototype.EY=function(){return b.lga};a.prototype.gY=function(a){this.Ka=a;this.Ka.play(r,this.V,0)};a.prototype.bZ=function(){this.Ka=r};var g=y,k=new a;return{enable:function(){if(!g){g=n;e.RX(k)}},disable:function(){if(g){g=y;e.Gz(k)}}}}return{enable:C(),disable:C()}});
define("ia",["require","jquery.mod","lk","bK"],function(a){function b(){this.Cg=r;this.W=y;this.jb=this.jb.bind(this);this.Xj=this.Yj=this.ei=m}var c=a("jquery.mod"),d=a("lk"),f=a("bK");b.prototype.po=function(){this.Cg||(this.Cg=c("<div/>"),this.Cg.css({position:"fixed","z-index":1E6,left:0,top:0,margin:0,padding:0,height:"100%",width:"100%","background-color":"rgba(255, 255, 255, 0.99)"}),this.Cg.html(['<div style="position: absolute; top: 5vmin; right:5vmin;">','<img style="width:24vmin" src="'+
f.rm+'"/>','</div>\n<div style="box-sizing:border-box; padding:0 10vmin; display:table; height:100%; width:100vw;">\n<div style="vertical-align:middle; text-align:center; display:table-cell;">','<img style="width:22vmin" src="'+f.jA+'"/>','<div style="color:#000; font-family:Arial, Helvetica, sans-serif; font-size:3.6vmin; line-height:4.3vmin; margin:5vmin 0; text-align:center;">'+d("rotate-device")+"</div>","</div>\n</div>"].join("\n")))};b.prototype.show=function(a){this.W||(this.W=n,this.po(),
c(a).append(this.Cg),c(window).on("resize",this.jb),this.HC())};b.prototype.hide=function(){this.W&&(this.W=y,c(window).off("resize",this.jb),this.Cg.detach())};b.prototype.jb=function(){[0,250,1E3,2E3].forEach(function(a){setTimeout(this.lU.bind(this),a)}.bind(this))};b.prototype.lU=function(){(this.Yj!=window.innerWidth||this.Xj!=window.innerHeight)&&this.HC()};b.prototype.HC=function(){this.Yj=window.innerWidth;this.Xj=window.innerHeight;this.ei=this.Yj>this.Xj?"landscape":"portrait";this.Cg.toggle("landscape"!=
this.ei)};return new b});
define("is","require,fg,ll,bZ,gW,iX,r,fT,gL,bW,cw,fA,d,V,ke,p,iD,lq,ia".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("gW"),e=a("iX"),g=a("r"),k=a("fT"),i=a("gL"),p=a("bW"),j=a("cw"),l=a("fA"),q=a("d"),o=a("V"),t=a("ke"),s=a("p"),u=a("iD"),v=a("lq"),w=a("ia"),x=b.extend(l,function(){l.call(this);this.Sg=this.Ke=this.zf=this.rD=this.Po=this.Bh=this.ic=r;this.Xd=j.rm;this.La=this.La.bind(this)});x.prototype.im=function(a){if(this.FB()){var b=function(b){if(this.ic=b.length?b[0]:r){this.ic.depthNear=
0.1;this.ic.depthFar=2*f.Kd;this.Bh="VRFrameData"in window?new VRFrameData:r;window.addEventListener("vrdisplaypresentchange",this.RU.bind(this),y);u.bind(c.Ba,this.Yd.bind(this))}a(!!this.ic)}.bind(this),e=window.WebVRConfig||(window.WebVRConfig={});e.BUFFER_SCALE=x.cz;e.ALWAYS_APPEND_POLYFILL_DISPLAY=n;e.LOCK_ORIENTATION=y;p.h1.load(function(){navigator.getVRDisplays().then(b)["catch"](function(){b([])})}.bind(this))}else a(y)};x.prototype.Dh=function(){!this.isPresenting()&&!this.Ke&&this.hv(function(){this.YV(function(){this.AV(function(){if(!this.isPresenting()&&
!this.Ke){this.Ke=this.zV();this.VV();this.ic.requestPresent([{source:this.Ke.canvas}]).then(function(){this.Sg=this.Ke;this.Ke=r;g.Jc()!=g.$z&&w.show(t.cm());this.wy();this.DE()}.bind(this))["catch"](function(){this.Ke=r;this.VD()}.bind(this))}}.bind(this))}.bind(this))}.bind(this))};x.prototype.Yd=function(){this.isPresenting()&&this.ic.exitPresent()};x.prototype.La=function(a){return this.ic.requestAnimationFrame(function(b){var c=this.wy();c&&this.Av();a(b);c&&this.ic.submitFrame()}.bind(this))};
x.prototype.isPresenting=function(){return!!this.ic&&this.ic.isPresenting};x.prototype.Sv=Q("Sg");x.prototype.Qd=Q("Xd");x.prototype.RU=function(){if(this.isPresenting())o.uN(this.La,this.ic.cancelAnimationFrame.bind(this.ic));else{o.yZ();(this.Sg||this.Ke)&&this.VD()}this.trigger(new d(c.aa))};x.prototype.FB=function(){return k.available&&e.r_&&g.Xa()&&g.xs()!=g.Bw};x.prototype.hv=function(a){if(k.disabled)i.X_.show(function(){k.wZ(function(){this.hv(a)}.bind(this))});else if(t.enabled()||!q.lF()){t.Yd();
this.zK(function(){this.hv(a)}.bind(this))}else a()};x.prototype.VV=function(){s.zg(this.Ke.canvas);g.Jc()==g.aA?this.X1():v.enable();g.Jc()==g.$z&&u.zg()};x.prototype.wy=function(){this.ic.getFrameData(this.Bh);if(!this.Bh.pose||!this.Bh.pose.orientation)return y;this.Po=this.ic.getEyeParameters("left");this.rD=this.ic.getEyeParameters("right");var a=this.ic.getLayers();this.zf=a&&a.length&&a[0]||r;return!this.zf?y:n};x.prototype.DE=function(){this.Rc.VE=r;this.Rc.Fk=this.Po.renderWidth*2;this.Rc.yj=
this.Po.renderHeight;this.Rc.pM=1};x.prototype.Av=function(){var a=this.Bh.pose;this.Ac.orientation.fromArray(a&&a.orientation||z);this.Ac.position.fromArray(a&&a.position||F);this.GX()};x.prototype.GX=function(){this.og.position.fromArray(this.Po.offset);this.og.orientation.fromArray(z);this.og.projectionMatrix.fromArray(this.Bh.leftProjectionMatrix);this.og.viewport.x=Math.round(this.Rc.Fk*this.zf.leftBounds[0]);this.og.viewport.y=Math.round(this.Rc.yj*this.zf.leftBounds[1]);this.og.viewport.width=
Math.round(this.Rc.Fk*this.zf.leftBounds[2]);this.og.viewport.height=Math.round(this.Rc.yj*this.zf.leftBounds[3]);this.rg.position.fromArray(this.rD.offset);this.rg.orientation.fromArray(z);this.rg.projectionMatrix.fromArray(this.Bh.rightProjectionMatrix);this.rg.viewport.x=Math.round(this.Rc.Fk*this.zf.rightBounds[0]);this.rg.viewport.y=Math.round(this.Rc.yj*this.zf.rightBounds[1]);this.rg.viewport.width=Math.round(this.Rc.Fk*this.zf.rightBounds[2]);this.rg.viewport.height=Math.round(this.Rc.yj*
this.zf.rightBounds[3])};x.prototype.VD=function(){this.jV();this.Sg=this.Ke=r;u.cancel();s.cancel();v.disable();w.hide()};x.cz=Math.min(1,1280/(Math.max(screen.width,screen.height)*window.devicePixelRatio));var z=[0,0,0,1],F=[0,0,0];return x});
define("gS","require,fg,bZ,ll,r,cw,fA,gW,d,V,p".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("ll"),f=a("r"),e=a("cw"),g=a("fA"),k=a("gW"),i=a("d"),p=a("V"),j=a("p"),a=b.extend(g,function(){g.call(this);this.Sg=this.Ke=this.zf=this.rD=this.Po=this.Bh=this.ic=r;this.La=this.La.bind(this)});a.prototype.im=function(a){if(this.FB()){var b=function(b){if(this.ic=b.length?b[0]:r){this.ic.depthNear=0.1;this.ic.depthFar=2*k.Kd;this.Bh="VRFrameData"in window?new VRFrameData:r;window.addEventListener("vrdisplaypresentchange",
this.RU.bind(this),y);window.addEventListener("vrdisplayactivate",this.x8.bind(this));window.addEventListener("vrdisplaydeactivate",this.Yd.bind(this))}a(!!this.ic)}.bind(this);navigator.getVRDisplays().then(b)["catch"](function(){b([])})}else a(y)};a.prototype.Dh=function(a){!this.isPresenting()&&!this.Ke&&this.hv(a,function(){this.YV(function(){this.AV(function(){!this.isPresenting()&&!this.Ke&&this.x8()}.bind(this))}.bind(this))}.bind(this))};a.prototype.Yd=function(){this.isPresenting()&&this.ic.exitPresent()};
a.prototype.La=function(a){return this.ic.requestAnimationFrame(function(b){var c=this.wy();c&&this.Av();a(b);c&&this.ic.submitFrame()}.bind(this))};a.prototype.isPresenting=function(){return!!this.ic&&this.ic.isPresenting};a.prototype.Sv=Q("Sg");a.prototype.Qd=function(){return e.qga};a.prototype.FB=function(){return"getVRDisplays"in navigator&&!window.WebVRConfig};a.prototype.RU=function(){if(this.isPresenting()){p.uN(this.La,this.ic.cancelAnimationFrame.bind(this.ic));this.wy()&&this.Av()}else{p.yZ();
(this.Sg||this.Ke)&&this.VD()}this.trigger(new c(d.aa))};a.prototype.hv=function(a,b){a||i.lF()?b():this.zK(function(){b()})};a.prototype.x8=function(){this.Ke=this.zV();this.VV();this.ic.requestPresent([{source:this.Ke.canvas,attributes:{foveationLevel:3}}]).then(function(){this.Sg=this.Ke;this.Ke=r;this.wy()&&this.Av()}.bind(this))["catch"](function(){this.Ke=r;this.VD()}.bind(this))};a.prototype.VV=function(){j.zg(this.Ke.canvas)};a.prototype.wy=function(){this.ic.getFrameData(this.Bh);if(!this.Bh.pose||
!this.Bh.pose.orientation)return y;this.Po=this.ic.getEyeParameters("left");this.rD=this.ic.getEyeParameters("right");var a=this.ic.getLayers();this.zf=a&&a.length&&a[0]||r;return!this.zf?y:n};a.prototype.Av=function(){this.DE();var a=this.Bh.pose;this.Ac.orientation.fromArray(a&&a.orientation||l);this.Ac.position.fromArray(a&&a.position||q);this.GX()};a.prototype.DE=function(){this.Rc.VE=r;this.Rc.Fk=this.Po.renderWidth*2;this.Rc.yj=this.Po.renderHeight;this.Rc.pM=f.we()?2048/this.Rc.yj:1};a.prototype.GX=
function(){this.og.position.fromArray(this.Po.offset);this.og.orientation.fromArray(l);this.og.projectionMatrix.fromArray(this.Bh.leftProjectionMatrix);var a=this.zf.leftBounds&&this.zf.leftBounds.length==4?this.zf.leftBounds:o;this.og.viewport.x=Math.round(this.Rc.Fk*a[0]);this.og.viewport.y=Math.round(this.Rc.yj*a[1]);this.og.viewport.width=Math.round(this.Rc.Fk*a[2]);this.og.viewport.height=Math.round(this.Rc.yj*a[3]);this.rg.position.fromArray(this.rD.offset);this.rg.orientation.fromArray(l);
this.rg.projectionMatrix.fromArray(this.Bh.rightProjectionMatrix);a=this.zf.rightBounds&&this.zf.rightBounds.length==4?this.zf.rightBounds:t;this.rg.viewport.x=Math.round(this.Rc.Fk*a[0]);this.rg.viewport.y=Math.round(this.Rc.yj*a[1]);this.rg.viewport.width=Math.round(this.Rc.Fk*a[2]);this.rg.viewport.height=Math.round(this.Rc.yj*a[3])};a.prototype.VD=function(){this.Sg=this.Ke=r;j.cancel()};var l=[0,0,0,1],q=[0,0,0],o=[0,0,0.5,1],t=[0.5,0,0.5,1];return a});
define("ik","require,fg,bZ,ll,r,jE,cw,fA,gW,d,V,p,jg,fx".split(","),function(a){function b(a){setTimeout(a,10)}var c=a("fg"),d=a("bZ"),f=a("ll"),e=a("r"),g=a("jE"),k=a("cw"),i=a("fA"),p=a("gW"),j=a("d"),l=a("V"),q=a("p"),o=a("jg"),t=a("fx"),s=c.extend(i,function(){i.call(this);this.Bv=this.FE=this.wg=this.Sg=r;this.Ey="stopped";this.La=this.La.bind(this);this.EV=this.EV.bind(this);this.FV=this.FV.bind(this);this.GV=this.GV.bind(this);this.ns=y;o.Vz(function(){b(function(){this.ns=n}.bind(this))}.bind(this))});
s.prototype.im=function(a){if(this.FB())this.Yra().then(function(b){b?a(n):a(y)})["catch"](function(){a(y)});else a(y)};s.prototype.Dh=function(){this.Ey=="stopped"&&this.hv(function(){this.YV(function(){this.AV(function(){setTimeout(function(){this.Cra()}.bind(this),200)}.bind(this))}.bind(this))}.bind(this))};s.prototype.Cra=function(){if(this.Ey=="stopped"){this.Ey="starting";this.trigger(new d(f.aa));l.SZ(n);navigator.xr.requestSession("immersive-vr").then(function(a){this.wg=a;this.wg.addEventListener("end",
this.EV);this.wg.addEventListener("select",this.FV);this.wg.addEventListener("visibilitychange",this.GV);return this.wg.requestReferenceSpace("local")}.bind(this)).then(function(a){this.FE=a;this.Sg=this.zV();return this.Sg.makeXRCompatible()}.bind(this)).then(function(){e.Xa()&&q.zg(this.Sg.canvas);var a=XRWebGLLayer.getNativeFramebufferScaleFactor(this.wg),a=Math.max(a,1);e.UY()?a=a*1:e.we()?a=a*1.42222:e.Xa()&&(a=a*s.cz);this.Bv=new XRWebGLLayer(this.wg,this.Sg,{antialias:y,framebufferScaleFactor:a});
this.wg.updateRenderState({baseLayer:this.Bv,depthNear:0.1,depthFar:2*p.Kd});this.DE();this.Ey="started";l.uN(this.La,this.wg.cancelAnimationFrame.bind(this.wg));l.SZ(y)}.bind(this))["catch"](function(){l.SZ(y);this.z9();this.trigger(new d(f.aa))}.bind(this))}};s.prototype.Yd=function(){this.isPresenting()&&this.wg.end()};s.prototype.La=function(a){return this.wg.requestAnimationFrame(function(b,c){this.IX=c;this.Av();a(b)}.bind(this))};s.prototype.isPresenting=function(){return this.Ey!="stopped"};
s.prototype.Qd=function(){return k.rga};s.prototype.Sv=Q("Sg");s.prototype.FB=function(){return"xr"in navigator};s.prototype.Yra=function(){return"isSessionSupported"in navigator.xr?navigator.xr.isSessionSupported("immersive-vr"):"supportsSession"in navigator.xr?navigator.xr.supportsSession("immersive-vr"):Promise.reject()};s.prototype.hv=function(a){e.Jc()==e.Rn?this.ns?a():j.lF()?b(a):this.zK(function(){b(a)}):j.lF()?a():this.zK(function(){a()})};s.prototype.EV=function(){l.yZ();this.z9();this.trigger(new d(f.aa))};
s.prototype.FV=function(){this.trigger(new d(f.Ii))};s.prototype.GV=function(){t.$Z(!this.wg||this.wg.Hza!="visible");g.qfa&&this.wg.Hza!="visible"&&this.Yd()};s.prototype.z9=function(){this.Bv=this.FE=this.wg=this.Sg=r;this.Ey="stopped";q.cancel()};s.prototype.DE=function(){this.Rc.VE=this.Bv.framebuffer;this.Rc.Fk=this.Bv.framebufferWidth;this.Rc.yj=(e.Jc()==e.Rn?2:1)*this.Bv.framebufferHeight;this.Rc.pM=1};s.prototype.Av=function(){var a=this.IX.getViewerPose(this.FE);if(a){var b=a&&a.transform.orientation||
u;this.Ac.orientation.set(b.x,b.y,b.z,b.w);b=a&&a.transform.position||v;this.Ac.position.set(b.x,b.y,b.z);for(var a=this.IX.getViewerPose(this.FE.getOffsetReferenceSpace(a.transform)),c=0;c<a.views.length;c++){var e=a.views[c],d;if(e.eye=="left")d=this.og;else if(e.eye=="right")d=this.rg;else continue;b=e.transform.position;d.position.set(b.x,b.y,b.z);b=e.transform.orientation;d.orientation.set(b.x,b.y,b.z,b.w);d.projectionMatrix.fromArray(e.projectionMatrix);e=this.Bv.getViewport(e);d.viewport.x=
e.x;d.viewport.y=e.y;d.viewport.width=e.width;d.viewport.height=e.height}var i=[];this.wg.inputSources.forEach(function(a){if(a.targetRayMode=="tracked-pointer"&&a.gamepad){var b=a.gamepad;if(!b.pose)b.PY=this.IX.getPose(a.targetRaySpace,this.FE);if(!b.hand)b.dwa=a.handedness;if(!b.id)b.ewa=b.mapping+" "+a.handedness;i.push(b)}}.bind(this));this.Ac.tM=i}};s.cz=Math.min(1,1280/(Math.max(screen.width,screen.height)*window.devicePixelRatio));var u={x:0,y:0,z:0,w:1},v={x:0,y:0,z:0};return s});
define("bi","require,fg,ll,eO,r,fT,jt,is,dh,cw,lb,gS,ik,fx".split(","),function(a){function b(a,c){if(a.length){var e=new a[0];e.im(function(d){d?c(e):b(a.slice(1),c)})}else c(r)}var c=a("fg"),d=a("ll"),f=a("eO"),e=a("r"),g=a("fT"),k=a("jt"),i=a("is"),p=a("dh"),j=a("cw"),l=a("lb"),q=a("gS"),o=a("ik"),t=a("fx"),s=y,u=[],v=new f;v.Oj=l.Oj;v.fga=p;v.iP=j;v.available=R(n);v.zn=R(r);v.zM=R(r);v.isPresenting=R(y);v.Dh=function(){s=n};v.Yd=function(){s=y};v.XAa=R(r);v.$y=function(a){u.indexOf(a)<0&&u.push(a)};
v.iN=function(a){a=u.indexOf(a);a==-1||u.splice(a,1)};v.tN=C();v.Lya=function(a){i.cz=a;o.cz=a};v.vva=function(){return i.cz};v.Qd=R(r);v.CM=R(r);v.log=function(){v.available()?v.Qd()?c.log("VR: "+v.Qd()):c.log("VR: not ready"):c.log("VR: not available");c.log("gyroscope: "+g.available)};var w;w=e.browser()==e.Di&&!e.Xa()?[o,q,i]:e.UY()?[o,q]:k.Fn("vr_mode")=="cardboard"?[i]:[q,o,i];v.im=function(a){var c=setTimeout(function(){c=r;a()},250);b(w,function(b){var i=b;if(i){i.bind(d.aa,function(){v.trigger(d.aa)},
v,n);i.bind(d.Ii,function(){v.trigger(d.Ii)},v,n);v.available=R(n);v.zM=function(){return i.zM()};v.zn=function(){return i.zn()};v.isPresenting=function(){return i.isPresenting()};v.Dh=function(){i.Dh()};v.Yd=function(){i.Yd()};v.Sv=function(){return i.Sv()};v.$y=function(a){i.$y(a)};v.iN=function(a){i.iN(a)};v.tN=function(a){i.tN(a)};v.Qd=function(){return i.Qd()};v.CM=function(){return i.CM()};u.forEach(function(a){i.$y(a)});e.Jc()==e.Ws?function(){function a(){e++;c=setTimeout(b,e*1E3)}function b(){c=
r;if(e>5)window.location.reload();else if(!document.hidden&&!i.isPresenting()){i.Dh(n);a()}}var c,e;document.addEventListener("visibilitychange",function(){if(!document.hidden){if(c){clearTimeout(c);c=r}e=0;a()}},y);if(c){clearTimeout(c);c=r}e=0;a()}():s&&i.Dh()}else v.available=R(y);if(c){clearTimeout(c);c=r;a()}})};v.bind(d.aa,function(){t.qN(v.isPresenting())},window,n);window.addEventListener("vrdisplayblur",function(){t.$Z(n)},n);window.addEventListener("vrdisplayfocus",function(){t.$Z(y)},n);
return v});
define("db","require,ll,iN,eO,V,bi".split(","),function(a){function b(a){this.AH=a;this.Hg=r;this.hQ={};for(a=0;a<this.AH.buttons.length;a++)this.hQ[this.AH.buttons[a]]=y;this.gQ=0;this.Qr=r;this.Yu=[new THREE.Quaternion,new THREE.Quaternion];this.yh=this.Yu[0];this.Rg=[new THREE.Vector3,new THREE.Vector3];this.va=this.Rg[0];this.ty=new THREE.Vector3;this.Vu=new THREE.Quaternion;this.P2=0}function c(a,b,c){this.Zva=a;this.buttons=b;this.gxa=c}function d(){if(!(F||x==j.wd)){x=j.wd;var a,c=l.isPresenting()&&
l.zn();if(a=c&&c.tM&&c.tM.length?c.tM:navigator.getGamepads&&navigator.getGamepads()){for(c=0;c<u.length;c++)u[c].nea(r);for(c=0;c<a.length;c++){var e=a[c];if(e&&(e.pose||e.PY)){var d=e.id||e.ewa,g=w[d];if(!g){var k;a:{k=d;for(var p=0;p<q.length;p++){var s=q[p];if(k.indexOf(t[s].Zva)==0){k=s;break a}}k=m}k&&u.push(g=w[d]=new b(t[k]))}g&&w[d].nea(e)}}(a=v)&&!v.YY()&&(v=r);for(c=0;c<u.length;c++){g=u[c];if(g.YY()&&g.pressed()){v=g;break}}if(!v)for(c=0;c<u.length;c++){g=u[c];if(g.YY()){if(g.hand()==
o){v=g;break}v||(v=g)}}a!=v&&i.jw(f)}}}function f(){s.trigger(k.aa)}function e(){d()}function g(){if(l.isPresenting()){if(z){clearInterval(z);z=r}d();z=setInterval(e,500)}else if(z){clearInterval(z);z=r}}var k=a("ll"),i=a("iN"),p=a("eO"),j=a("V"),l=a("bi"),q=["oculus go","oculus touch","xr-standard","gear vr","daydream","vive","vive focus","microsoft","unknown"],o="right",t={};t["oculus go"]=new c("Oculus Go",["trackpad","trigger"],"trigger");t["oculus touch"]=new c("Oculus Touch",["thumbstick","trigger",
"grip","abutton","bbutton","surface"],"trigger");t["xr-standard"]=new c("xr-standard",["trigger","grip","unknow_button_0","thumbstick","abutton","bbutton","unknow_button"],"trigger");t["gear vr"]=new c("Gear VR",["trackpad","trigger"],"trigger");t.daydream=new c("Daydream Controller",["trackpad","menu","system"],"trackpad");t.vive=new c("OpenVR",["trackpad","trigger","grip","menu","system"],"trigger");t["vive focus"]=new c("HTC Vive Focus",["trackpad","trigger","grip"],"trigger");t.microsoft=new c("Spatial Controller (Spatial Interaction Source)",
["thumbstick","trigger","grip","menu","thumbpad"],"trigger");t.unknown=new c("",[],m);b.prototype.nea=function(a){if(this.Hg=a){this.Yla=this.Hg.hand||this.Hg.dwa;if(this.Hg.pose){this.Qr=this.Hg.pose;if(this.Qr.orientation){this.yh=this.Yu[0]==this.yh?this.Yu[1]:this.Yu[0];this.yh.fromArray(this.Qr.orientation)}if(this.Qr.position){this.va=this.Rg[0]==this.va?this.Rg[1]:this.Rg[0];this.va.fromArray(this.Qr.position)}else this.va=r}else if(this.Hg.PY){this.Qr=this.Hg.PY.transform;this.yh=this.Yu[0]==
this.yh?this.Yu[1]:this.Yu[0];this.yh.copy(this.Qr.orientation);this.va=this.Rg[0]==this.va?this.Rg[1]:this.Rg[0];this.va.copy(this.Qr.position)}for(var a=0,b=Math.min(this.Hg.buttons.length,this.Hg.buttons.length);a<b;a++)this.hQ[this.AH.buttons[a]]=this.Hg.buttons[a].pressed;for(a=this.gQ=0;a<this.Hg.buttons.length;a++)this.Hg.buttons[a].pressed&&this.gQ++;(a=!!this.ty!=!!this.va||this.va&&this.ty.x!=this.va.x&&this.ty.y!=this.va.y&&this.ty.z!=this.va.z)&&(this.va?this.ty.copy(this.va):this.ty.set(0,
0,0,0));(b=!!this.Vu!=!!this.yh||this.yh&&(this.Vu.x!=this.yh.x||this.Vu.y!=this.yh.y||this.Vu.z!=this.yh.z||this.Vu.w!=this.yh.w))&&(this.yh?this.Vu.copy(this.yh):this.Vu.set(0,0,0));if(a||b)this.P2=j.wd}};b.prototype.pulse=function(a,b){var c=this.Hg&&this.Hg.hapticActuators;(c=c&&c.length&&c[0])&&c.pulse&&c.pulse(a,b)};b.prototype.YY=function(){return!!this.Hg};b.prototype.nwa=function(){return j.wd-this.P2>500};b.prototype.hand=Q("Yla");b.prototype.quaternion=Q("yh");b.prototype.position=Q("va");
b.prototype.pressed=function(a){a||(a=this.AH.gxa);return!a?this.gQ>0:this.hQ[a]};var s=new p;s.all=function(){d();return u};s.YM=function(){d();return v};s.qa="left";s.Ma=o;var u=[],v=r,w={},x=m,z=r,F=URL.Yg("disable-controller",y);l.bind(k.aa,g);g();return s});
define("cB",["require","fk","a"],function(a){function b(a,b){this.Rd=a||new c(0,0,0);this.yg=b||new c(1,0,0)}var c=a("fk"),d=a("a");b.prototype.clone=function(){return new b(this.Rd.clone(),this.yg.clone())};b.prototype.apply=function(a){a.az(this.Rd);a.az(this.yg)};b.prototype.jca=function(){return d.zs(this.Rd,this.yg)};return b});
define("gm",["cB","fk"],function(a,b){function c(a,b,c){this.X=a||100;this.ha=b||100;this.ba=c||Math.PI;this.WU=m;this.Cm=n}c.prototype.nw=function(a){this.ba!=a&&(this.ba=a,this.Cm=n)};c.prototype.Ip=Q("ba");c.prototype.RF=function(a){this.X!=a&&(this.X=a,this.Cm=n)};c.prototype.ad=Q("X");c.prototype.pea=function(a){this.ha!=a&&(this.ha=a,this.Cm=n)};c.prototype.Od=Q("ha");c.prototype.project=function(a){if(0!=a.z){this.zaa();var b=1/a.z,c=this.WU*b;a.x=0.5*this.X-a.x*c;a.y=0.5*this.ha-a.y*c;a.z=
b}};c.prototype.unproject=function(c){this.zaa();return new a(new b(0,0,0),new b(0.5*this.X-c.x,0.5*this.ha-c.y,this.WU))};c.prototype.zaa=function(){this.Cm&&(this.WU=0.5*this.X/Math.tan(0.5*this.ba),this.Cm=y)};return c});
define("dS",["require","jquery.mod"],function(a){function b(){this.J=c("<div/>");this.J.css({position:"absolute",left:0,top:0,right:0,bottom:0,"z-index":0,"pointer-events":"none","background-color":"#ffffff"});this.J.hide()}var c=a("jquery.mod");b.prototype.Cb=Q("J");b.prototype.trigger=function(){this.J.fadeIn(100).fadeOut(100)};return b});
define("lr",["require"],function(){function a(){this.md=this.pitch=this.ma=0;this.Bf=this.bd=90;this.LE=this.cM=this.height=this.width=100;this.bh=1;this.gF=this.Db=y;this.zi=0;this.sM=this.XL=this.aN=y;this.Xv=this.yF=n;this.Kc=this.SE=this.RE=this.ye=r;this.enabled=y;this.wd=0;this.SF=m}a.prototype.clone=function(){var b=new a;b.ma=this.ma;b.pitch=this.pitch;b.md=this.md;b.bd=this.bd;b.Bf=this.Bf;b.width=this.width;b.height=this.height;b.cM=this.cM;b.LE=this.LE;b.bh=this.bh;b.Db=this.Db;b.gF=this.gF;
b.zi=this.zi;b.aN=this.aN;b.sM=this.sM;b.XL=this.XL;b.yF=this.yF;b.Xv=this.Xv;b.ye=this.ye;b.RE=this.RE;b.SE=this.SE;b.Kc=this.Kc;b.enabled=this.enabled;b.wd=this.wd;b.SF=this.SF;return b};return a});
define("cR","require,jquery.mod,do,ll,jY,V,dK".split(","),function(a){function b(a){this.b_=a;this.element=document.createElement("div");this.h_=document.createElement("span");this.element.appendChild(this.h_);this.h_.innerHTML=a.text.split("<br>").join("\n").split("\n").map(d).join("<br>");this.eM=y}function c(a){this.C=a;this.kE=e.throttle(this.kE.bind(this),100);this.lE=e.throttle(this.lE.bind(this),100);this.J=document.createElement("div");this.J.style.position="absolute";this.J.style.left=0;
this.J.style.top=0;this.J.style.right=0;this.J.style.bottom=0;this.J.style.zIndex=1;this.J.style.cursor="inherit";this.J.style.display="none";this.mP=f(this.J);this.gi=document.createElement("div");this.gi.style.position="absolute";this.gi.style.left=0;this.gi.style.right=0;this.gi.style.zIndex=1;this.gi.style.cursor="inherit";this.J.appendChild(this.gi);this.es=r;this.Ny=[];this.tf=[];this.yU={};this.Xy=k.lb;this.C.bind(g.D("subtitlesEnabled"),this.SW,this);c.C0.forEach(function(a){this.C.bind(g.D(a),
this.kE,this)}.bind(this));c.D0.forEach(function(a){this.C.bind(g.D(a),this.lE,this)}.bind(this));this.SW();this.kE();this.lE()}function d(a){j.innerHTML=a;return j.innerText}var f=a("jquery.mod"),e=a("do"),g=a("ll"),k=a("jY"),i=a("V"),p=a("dK");c.prototype.clear=function(){this.YZ(r);if(this.C){this.C.unbind(g.D("subtitlesEnabled"),this.SW,this);c.C0.forEach(function(a){this.C.unbind(g.D(a),this.kE,this)}.bind(this));c.D0.forEach(function(a){this.C.unbind(g.D(a),this.lE,this)}.bind(this));this.C=
r}};c.prototype.Cb=Q("mP");c.prototype.YZ=function(a){if(this.es!=a){this.es&&this.es.unbind(g.D("activeSubtitles"),this.YT,this,n);(this.es=a)&&this.es.bind(g.D("activeSubtitles"),this.YT,this,n);this.YT()}};c.prototype.YT=function(){this.bra(this.es&&this.es.get("activeSubtitles")||[])};c.prototype.SW=function(){this.W=this.C.get("subtitlesEnabled");this.gX()};c.prototype.kE=function(){this.Xy=this.qB("subtitlesVerticalAlign",[k.mb,k.tc,k.lb],k.lb);this.gi.style["text-align"]=this.qB("subtitlesHorizontalAlign",
[k.qa,k.Ma,k.Mc],k.Mc);this.gi.style.bottom=this.Xy==k.lb?this.oh("subtitlesBottom",0):"";this.gi.style.top=this.Xy==k.mb?this.oh("subtitlesTop",0):this.Xy==k.tc?"50%":"";this.gi.style.transform=this.Xy==k.tc?"translate(0, -50%)":"";this.gX()};c.prototype.lE=function(){var a={};a["background-color"]=this.wS("subtitlesBackgroundColor","subtitlesBackgroundOpacity");a.border=[this.oh("subtitlesBorderSize"),"solid",this.Kf("subtitlesBorderColor")].join(" ");a["box-shadow"]=this.Kf("subtitlesShadow",y)?
[this.oh("subtitlesShadowHorizontalLength"),this.oh("subtitlesShadowVerticalLength"),this.oh("subtitlesShadowBlurRadius"),this.wS("subtitlesShadowColor","subtitlesShadowOpacity","#000000",0)].join(" "):"";a.display="inline-block";a["font-family"]=p.ys(this.Kf("subtitlesFontFamily"));a["font-size"]=this.oh("subtitlesFontSize");a.color=this.Kf("subtitlesFontColor");a["font-weight"]=this.qB("subtitlesFontWeight",["bold","bolder","lighter","100","200","300","400","500","600","700","800","900","normal"],
"normal");a["font-style"]=this.qB("subtitlesFontStyle",["italic","normal"],"normal");a["margin-bottom"]=this.oh("subtitlesGap");a.opacity=this.Kf("subtitlesOpacity");a["padding-top"]=this.oh("subtitlesPaddingTop");a["padding-bottom"]=this.oh("subtitlesPaddingBottom");a["padding-left"]=this.oh("subtitlesPaddingLeft");a["padding-right"]=this.oh("subtitlesPaddingRight");a.position="relative";a["text-align"]=this.qB("subtitlesHorizontalAlign",["left","right","center"],"center");a["text-decoration"]=this.Kf("subtitlesTextDecoration",
["underline","overline","line-through","none"],"none");a["text-shadow"]=[this.oh("subtitlesTextShadowHorizontalLength"),this.oh("subtitlesTextShadowVerticalLength"),this.oh("subtitlesTextShadowBlurRadius"),this.wS("subtitlesTextShadowColor","subtitlesTextShadowOpacity","#000000",0)].join(" ");this.yU=a;this.yha()};c.prototype.bra=function(a){this.Ny=a;this.gX()};c.prototype.gX=function(){for(var a=this.W?this.Ny:[],c=this.tf.length-1;c>=0;c--){var e=this.tf[c];if(a.indexOf(e.b_)>=0)break;this.gi.removeChild(e.element)}for(var d=
[],g=y;c>=0;c--){e=this.tf[c];if(!e.eM&&a.indexOf(e.b_)<0){e.eM=n;e.element.style.visibility="hidden";g=n}d.splice(0,0,e)}g&&i.La(this.h3,this);this.tf=d;var f=this.tf.filter(function(a){return!a.eM}).map(function(a){return a.b_});a.filter(function(a){return f.indexOf(a)<0}).forEach(function(a){a=new b(a);this.k2(a);this.Xy==k.lb&&this.tf.length>0?this.gi.insertBefore(a.element,this.tf[this.tf.length-1].element):this.gi.appendChild(a.element);this.tf.push(a)}.bind(this));this.J.style.display=this.tf.length>
0?"block":"none"};c.prototype.h3=function(a){for(var b=y,a=Math.round(200*a/1E3),c=0;c<this.tf.length;c++){var e=this.tf[c];if(e.eM){b=n;if(a>=e.element.clientHeight){a=a-e.element.clientHeight;this.gi.removeChild(e.element);this.tf.splice(c,1);c--}else{e.element.style.height=e.element.clientHeight-a+"px";break}}}b&&i.La(this.h3,this)};c.prototype.yha=function(){this.tf.forEach(this.k2.bind(this))};c.prototype.k2=function(a){for(var b in this.yU)a.h_.style[b]=this.yU[b]};c.prototype.Kf=function(a,
b){return this.C.get(a,b)};c.prototype.oh=function(a,b){var c=this.C.get(a,b);isNaN(c)||(c=Math.round(c)+"px");return c};c.prototype.qB=function(a,b,c){a=this.C.get(a);return b.indexOf(a)<0?c:a};c.prototype.wS=function(a,b,c,e){a=this.C.get(a,c);b=this.C.get(b,e);return"rgba("+parseInt("0x"+a.substr(1,2))+", "+parseInt("0x"+a.substr(3,2))+", "+parseInt("0x"+a.substr(5,2))+", "+b+")"};c.C0=["subtitlesHorizontalAlign","subtitlesVerticalAlign","subtitlesTop","subtitlesBottom"];c.D0=["subtitlesBackgroundColor",
"subtitlesBackgroundOpacity","subtitlesBorderColor","subtitlesBorderSize","subtitlesFontFamily","subtitlesFontColor","subtitlesFontSize","subtitlesFontStyle","subtitlesFontWeight","subtitlesGap","subtitlesOpacity","subtitlesPaddingTop","subtitlesPaddingBottom","subtitlesPaddingLeft","subtitlesPaddingRight","subtitlesShadow","subtitlesShadowBlurRadius","subtitlesShadowHorizontalLength","subtitlesShadowVerticalLength","subtitlesShadowColor","subtitlesTextDecoration","subtitlesTextShadowBlurRadius",
"subtitlesTextShadowColor","subtitlesTextShadowHorizontalLength","subtitlesTextShadowOpacity","subtitlesTextShadowVerticalLength"];var j=document.createElement("div");return c});
define("hy",["require","fg","ll","cR"],function(a){var b=a("fg"),c=a("ll"),d=a("cR"),a=b.extend(d,function(a,b){d.call(this,a);this.Tb=b;this.Tb.bind(c.D("panorama"),this.gU,this);this.gU()});a.prototype.clear=function(){this.Tb&&(this.Tb.unbind(c.D("panorama"),this.gU,this),this.Tb=r);d.prototype.clear.call(this)};a.prototype.gU=function(){this.YZ(this.Tb.get("panorama"))};return a});
define("it",["require","r"],function(a){var b=a("r"),a={},c=180/Math.PI,d=Math.PI/180;a.Hk=function(a,b,c){return this.Fv(a,b,c)};a.On=function(a,b,c){return this.Fv(a,c,b)};a.Fv=function(a,b,g){return 2*Math.atan(g*Math.tan(0.5*a*d)/b)*c};a.YAa=function(a){return b.browser()==b.Yz?Math.max(a,20):a};return a});define("cT",["require"],function(){return{Qn:0,qa:1,Ma:2}});
define("hI",["require"],function(){THREE.CopyShader={uniforms:{tDiffuse:{value:r},opacity:{value:1}},vertexShader:"varying vec2 vUv;\nvoid main() {\n\tvUv = uv;\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",fragmentShader:"uniform float opacity;\nuniform sampler2D tDiffuse;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texel = texture2D( tDiffuse, vUv );\n\tgl_FragColor = opacity * texel;\n}"};return THREE.CopyShader});
define("gM",["require"],function(){THREE.Pass=function(){this.kZ=this.enabled=n;this.Tp=this.clear=y};Object.assign(THREE.Pass.prototype,{setSize:C(),render:function(){console.error("THREE.Pass: .render() must be implemented in derived pass.")}});return THREE.Pass});
define("ig",["require","gM"],function(a){a("gM");THREE.Pass.FullScreenQuad=function(){function a(b){this.iJ=new THREE.Mesh(d,b)}var c=new THREE.OrthographicCamera(-1,1,1,-1,0,1),d=new THREE.PlaneBufferGeometry(2,2);Object.defineProperty(a.prototype,"material",{get:function(){return this.iJ.material},set:function(a){this.iJ.material=a}});Object.assign(a.prototype,{dispose:function(){this.iJ.geometry.dispose()},render:function(a){a.render(this.iJ,c)}});return a}();return THREE.Pass.FullScreenQuad});
define("fL",["require","gM","ig"],function(a){a("gM");a("ig");THREE.ShaderPass=function(a,c){THREE.Pass.call(this);this.TF=c!==m?c:"tDiffuse";a instanceof THREE.ShaderMaterial?(this.uniforms=a.uniforms,this.material=a):a&&(this.uniforms=THREE.UniformsUtils.clone(a.uniforms),this.material=new THREE.ShaderMaterial({defines:Object.assign({},a.defines),uniforms:this.uniforms,vertexShader:a.vertexShader,fragmentShader:a.fragmentShader}));this.rM=new THREE.Pass.FullScreenQuad(this.material)};THREE.ShaderPass.prototype=
Object.assign(Object.create(THREE.Pass.prototype),{constructor:THREE.ShaderPass,render:function(a,c,d){this.uniforms[this.TF]&&(this.uniforms[this.TF].value=d.texture);this.rM.material=this.material;this.Tp?a.setRenderTarget(r):(a.setRenderTarget(c),this.clear&&a.clear(a.BAa,a.CAa,a.DAa));this.rM.render(a)}});return THREE.ShaderPass});
define("cN",["require","hI","fL"],function(a){a("hI");a("fL");THREE.EffectComposer=function(a,c){this.ef=a;if(c===m){var d={minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter,format:THREE.RGBAFormat,stencilBuffer:y},f=a.getSize(new THREE.Vector2);this.Hl=a.getPixelRatio();this.X=f.width;this.ha=f.height;c=new THREE.WebGLRenderTarget(this.X*this.Hl,this.ha*this.Hl,d);c.texture.name="EffectComposer.rt1"}else this.Hl=1,this.X=c.width,this.ha=c.height;this.Kz=c;this.Lz=c.clone();this.Lz.texture.name=
"EffectComposer.rt2";this.aG=this.Kz;this.zF=this.Lz;this.Tp=n;this.Hs=[];this.nua=new THREE.ShaderPass(THREE.CopyShader);this.kua=new THREE.Clock};Object.assign(THREE.EffectComposer.prototype,{swapBuffers:function(){var a=this.zF;this.zF=this.aG;this.aG=a},addPass:function(a){this.Hs.push(a);a.setSize(this.X*this.Hl,this.ha*this.Hl)},insertPass:function(a,c){this.Hs.splice(c,0,a)},pwa:function(a){for(a+=1;a<this.Hs.length;a++)if(this.Hs[a].enabled)return y;return n},render:function(a){a===m&&(a=
this.kua.getDelta());var c=this.ef.getRenderTarget(),d=y,f,e,g=this.Hs.length;for(e=0;e<g;e++)if(f=this.Hs[e],f.enabled!==y){f.Tp=this.Tp&&this.pwa(e);f.render(this.ef,this.aG,this.zF,a,d);if(f.kZ){if(d){var k=this.ef.getContext(),i=this.ef.state.buffers.stencil;i.setFunc(k.NOTEQUAL,1,4294967295);this.nua.render(this.ef,this.aG,this.zF,a);i.setFunc(k.EQUAL,1,4294967295)}this.swapBuffers()}THREE.MaskPass!==m&&(f instanceof THREE.MaskPass?d=n:f instanceof THREE.ClearMaskPass&&(d=y))}this.ef.setRenderTarget(c)},
reset:function(a){a===m&&(a=this.ef.getSize(new THREE.Vector2),this.Hl=this.ef.getPixelRatio(),this.X=a.width,this.ha=a.height,a=this.Kz.clone(),a.setSize(this.X*this.Hl,this.ha*this.Hl));this.Kz.dispose();this.Lz.dispose();this.Kz=a;this.Lz=a.clone();this.aG=this.Kz;this.zF=this.Lz},setSize:function(a,c){this.X=a;this.ha=c;var d=this.X*this.Hl,f=this.ha*this.Hl;this.Kz.setSize(d,f);this.Lz.setSize(d,f);for(var e=0;e<this.Hs.length;e++)this.Hs[e].setSize(d,f)},setPixelRatio:function(a){this.Hl=a;
this.setSize(this.X,this.ha)}});return THREE.EffectComposer});
define("w",["require"],function(){THREE.w_={uniforms:{tDiffuse1:{value:r},tDiffuse2:{value:r},mixRatio:{value:0.5},opacity:{value:1}},vertexShader:"varying vec2 vUv;\nvoid main() {\n\tvUv = uv;\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",fragmentShader:"uniform float opacity;\nuniform float mixRatio;\nuniform sampler2D tDiffuse1;\nuniform sampler2D tDiffuse2;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texel1 = texture2D( tDiffuse1, vUv );\n\tvec4 texel2 = texture2D( tDiffuse2, vUv );\n\tgl_FragColor = opacity * mix( texel1, texel2, mixRatio );\n}"};return THREE.w_});
define("iK",["require","gM"],function(a){a("gM");THREE.CustomRenderPass=function(a){THREE.Pass.call(this);this.xxa=a;this.Kc=this.Ej=r;this.clear=n;this.kZ=this.clearDepth=y};THREE.CustomRenderPass.prototype=Object.assign(Object.create(THREE.Pass.prototype),{constructor:THREE.CustomRenderPass,render:function(a,c,d){c=a.autoClear;a.autoClear=y;this.xxa(a,this.Ej,this.Kc,this.Tp?r:d,this.clear);a.autoClear=c}});return THREE.CustomRenderPass});
define("iS",["require","gM","hI","ig"],function(a){a("gM");a("hI");a("ig");THREE.SavePass=function(a){THREE.Pass.call(this);var c=THREE.CopyShader;this.TF="tDiffuse";this.uniforms=THREE.UniformsUtils.clone(c.uniforms);this.material=new THREE.ShaderMaterial({uniforms:this.uniforms,vertexShader:c.vertexShader,fragmentShader:c.fragmentShader});this.renderTarget=a;this.renderTarget===m&&(this.renderTarget=new THREE.WebGLRenderTarget(window.innerWidth,window.innerHeight,{minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter,
format:THREE.RGBFormat,stencilBuffer:y}),this.renderTarget.texture.name="SavePass.rt");this.kZ=y;this.rM=new THREE.Pass.FullScreenQuad(this.material)};THREE.SavePass.prototype=Object.assign(Object.create(THREE.Pass.prototype),{constructor:THREE.SavePass,render:function(a,c,d){this.uniforms[this.TF]&&(this.uniforms[this.TF].value=d.texture);a.setRenderTarget(this.renderTarget);this.clear&&a.clear();this.rM.render(a)}});return THREE.SavePass});
define("cA","require,cN,w,iK,hI,iS,fL".split(","),function(a){function b(a,b){this.g=a;this.xy=b;this.Kl=new THREE.CustomRenderPass(b);this.Kl.Tp=y;this.KK=new THREE.SavePass;this.KK.enabled=n;this.Bq=new THREE.ShaderPass(THREE.w_,"tDiffuse1");this.Bq.uniforms.tDiffuse2.value=this.KK.renderTarget.texture;this.Bq.uniforms.mixRatio.value=0.8;this.Bq.Tp=n;this.Bq.enabled=n;this.a8=new THREE.ShaderPass(THREE.CopyShader);this.a8.Tp=n;this.Ri=new THREE.EffectComposer(a);this.Ri.addPass(this.Kl);this.Ri.addPass(this.Bq);
this.Ri.addPass(this.KK);this.Ri.addPass(this.a8);this.Jq=this.Kq=m}a("cN");a("w");a("iK");a("hI");a("iS");a("fL");var c=new THREE.Vector2;b.prototype.destroy=function(){this.Ri=this.Bq=this.KK=this.Kl=this.xy=this.g=r};b.prototype.start=function(){this.Bq.uniforms.mixRatio.value=0;this.UR=3};b.prototype.render=function(a,b){this.g.getSize(c);if(this.Kq!==c.width||this.Jq!==c.height){this.Kq=c.width;this.Jq=c.height;this.Ri.setSize(this.Kq,this.Jq)}this.Kl.Ej=a;this.Kl.Kc=b;if(this.UR>0){this.UR--;
if(this.UR===0)this.Bq.uniforms.mixRatio.value=0.65}this.Ri.render()};return b});
define("jw",["require"],function(){THREE.W_={uniforms:{tDiffuse:{value:r},resolution:{value:new THREE.Vector2(1/1024,1/512)}},vertexShader:"varying vec2 vUv;\nvoid main() {\n\tvUv = uv;\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",fragmentShader:'precision highp float;\n\nuniform sampler2D tDiffuse;\n\nuniform vec2 resolution;\n\nvarying vec2 vUv;\n\n// FXAA 3.11 implementation by NVIDIA, ported to WebGL by Agost Biro (biro@archilogic.com)\n\n//----------------------------------------------------------------------------------\n// File: es3-keplerFXAAassetsshaders/FXAA_DefaultES.frag\n// SDK Version: v3.00\n// Email: gameworks@nvidia.com\n// Site: http://developer.nvidia.com/\n//\n// Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// * Neither the name of NVIDIA CORPORATION nor the names of its\n// contributors may be used to endorse or promote products derived\n// from this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS\'\' AND ANY\n// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n//----------------------------------------------------------------------------------\n\n#define FXAA_PC 1\n#define FXAA_GLSL_100 1\n#define FXAA_QUALITY_PRESET 12\n\n#define FXAA_GREEN_AS_LUMA 1\n\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_PC_CONSOLE\n //\n // The console algorithm for PC is included\n // for developers targeting really low spec machines.\n // Likely better to just run FXAA_PC, and use a really low preset.\n //\n #define FXAA_PC_CONSOLE 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_120\n #define FXAA_GLSL_120 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_130\n #define FXAA_GLSL_130 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_3\n #define FXAA_HLSL_3 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_4\n #define FXAA_HLSL_4 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_5\n #define FXAA_HLSL_5 0\n#endif\n/*==========================================================================*/\n#ifndef FXAA_GREEN_AS_LUMA\n //\n // For those using non-linear color,\n // and either not able to get luma in alpha, or not wanting to,\n // this enables FXAA to run using green as a proxy for luma.\n // So with this enabled, no need to pack luma in alpha.\n //\n // This will turn off AA on anything which lacks some amount of green.\n // Pure red and blue or combination of only R and B, will get no AA.\n //\n // Might want to lower the settings for both,\n // fxaaConsoleEdgeThresholdMin\n // fxaaQualityEdgeThresholdMin\n // In order to insure AA does not get turned off on colors\n // which contain a minor amount of green.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_GREEN_AS_LUMA 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_EARLY_EXIT\n //\n // Controls algorithm\'s early exit path.\n // On PS3 turning this ON adds 2 cycles to the shader.\n // On 360 turning this OFF adds 10ths of a millisecond to the shader.\n // Turning this off on console will result in a more blurry image.\n // So this defaults to on.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_EARLY_EXIT 1\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_DISCARD\n //\n // Only valid for PC OpenGL currently.\n // Probably will not work when FXAA_GREEN_AS_LUMA = 1.\n //\n // 1 = Use discard on pixels which don\'t need AA.\n // For APIs which enable concurrent TEX+ROP from same surface.\n // 0 = Return unchanged color on pixels which don\'t need AA.\n //\n #define FXAA_DISCARD 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_FAST_PIXEL_OFFSET\n //\n // Used for GLSL 120 only.\n //\n // 1 = GL API supports fast pixel offsets\n // 0 = do not use fast pixel offsets\n //\n #ifdef GL_EXT_gpu_shader4\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifndef FXAA_FAST_PIXEL_OFFSET\n #define FXAA_FAST_PIXEL_OFFSET 0\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GATHER4_ALPHA\n //\n // 1 = API supports gather4 on alpha channel.\n // 0 = API does not support gather4 on alpha channel.\n //\n #if (FXAA_HLSL_5 == 1)\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifndef FXAA_GATHER4_ALPHA\n #define FXAA_GATHER4_ALPHA 0\n #endif\n#endif\n\n\n/*============================================================================\n FXAA QUALITY - TUNING KNOBS\n------------------------------------------------------------------------------\nNOTE the other tuning knobs are now in the shader function inputs!\n============================================================================*/\n#ifndef FXAA_QUALITY_PRESET\n //\n // Choose the quality preset.\n // This needs to be compiled into the shader as it effects code.\n // Best option to include multiple presets is to\n // in each shader define the preset, then include this file.\n //\n // OPTIONS\n // -----------------------------------------------------------------------\n // 10 to 15 - default medium dither (10=fastest, 15=highest quality)\n // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality)\n // 39 - no dither, very expensive\n //\n // NOTES\n // -----------------------------------------------------------------------\n // 12 = slightly faster then FXAA 3.9 and higher edge quality (default)\n // 13 = about same speed as FXAA 3.9 and better than 12\n // 23 = closest to FXAA 3.9 visually and performance wise\n // _ = the lowest digit is directly related to performance\n // _ = the highest digit is directly related to style\n //\n #define FXAA_QUALITY_PRESET 12\n#endif\n\n\n/*============================================================================\n\n FXAA QUALITY - PRESETS\n\n============================================================================*/\n\n/*============================================================================\n FXAA QUALITY - MEDIUM DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 10)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 3.0\n #define FXAA_QUALITY_P2 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 11)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 3.0\n #define FXAA_QUALITY_P3 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 12)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 4.0\n #define FXAA_QUALITY_P4 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 13)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 4.0\n #define FXAA_QUALITY_P5 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 14)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 4.0\n #define FXAA_QUALITY_P6 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 15)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 12.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - LOW DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 20)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 2.0\n #define FXAA_QUALITY_P2 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 21)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 22)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 23)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 24)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 3.0\n #define FXAA_QUALITY_P6 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 25)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 26)\n #define FXAA_QUALITY_PS 9\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 4.0\n #define FXAA_QUALITY_P8 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 27)\n #define FXAA_QUALITY_PS 10\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 4.0\n #define FXAA_QUALITY_P9 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 28)\n #define FXAA_QUALITY_PS 11\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 4.0\n #define FXAA_QUALITY_P10 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 29)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - EXTREME QUALITY\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 39)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.0\n #define FXAA_QUALITY_P2 1.0\n #define FXAA_QUALITY_P3 1.0\n #define FXAA_QUALITY_P4 1.0\n #define FXAA_QUALITY_P5 1.5\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n\n\n/*============================================================================\n\n API PORTING\n\n============================================================================*/\n#if (FXAA_GLSL_100 == 1) || (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1)\n #define FxaaBool bool\n #define FxaaDiscard discard\n #define FxaaFloat float\n #define FxaaFloat2 vec2\n #define FxaaFloat3 vec3\n #define FxaaFloat4 vec4\n #define FxaaHalf float\n #define FxaaHalf2 vec2\n #define FxaaHalf3 vec3\n #define FxaaHalf4 vec4\n #define FxaaInt2 ivec2\n #define FxaaSat(x) clamp(x, 0.0, 1.0)\n #define FxaaTex sampler2D\n#else\n #define FxaaBool bool\n #define FxaaDiscard clip(-1)\n #define FxaaFloat float\n #define FxaaFloat2 float2\n #define FxaaFloat3 float3\n #define FxaaFloat4 float4\n #define FxaaHalf half\n #define FxaaHalf2 half2\n #define FxaaHalf3 half3\n #define FxaaHalf4 half4\n #define FxaaSat(x) saturate(x)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_100 == 1)\n #define FxaaTexTop(t, p) texture2D(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r), 0.0)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_120 == 1)\n // Requires,\n // #version 120\n // And at least,\n // #extension GL_EXT_gpu_shader4 : enable\n // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9)\n #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0)\n #if (FXAA_FAST_PIXEL_OFFSET == 1)\n #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o)\n #else\n #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0)\n #endif\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_130 == 1)\n // Requires "#version 130" or better\n #define FxaaTexTop(t, p) textureLod(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o)\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_3 == 1)\n #define FxaaInt2 float2\n #define FxaaTex sampler2D\n #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0))\n #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0))\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_4 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_5 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p)\n #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o)\n #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p)\n #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o)\n#endif\n\n\n/*============================================================================\n GREEN AS LUMA OPTION SUPPORT FUNCTION\n============================================================================*/\n#if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.w; }\n#else\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; }\n#endif\n\n\n\n\n/*============================================================================\n\n FXAA3 QUALITY - PC\n\n============================================================================*/\n#if (FXAA_PC == 1)\n/*--------------------------------------------------------------------------*/\nFxaaFloat4 FxaaPixelShader(\n //\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy} = center of pixel\n FxaaFloat2 pos,\n //\n // Used only for FXAA Console, and not used on the 360 version.\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy_} = upper left of pixel\n // {_zw} = lower right of pixel\n FxaaFloat4 fxaaConsolePosPos,\n //\n // Input color texture.\n // {rgb_} = color in linear or perceptual color space\n // if (FXAA_GREEN_AS_LUMA == 0)\n // {__a} = luma in perceptual color space (not linear)\n FxaaTex tex,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 2nd sampler.\n // This sampler needs to have an exponent bias of -1.\n FxaaTex fxaaConsole360TexExpBiasNegOne,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 3nd sampler.\n // This sampler needs to have an exponent bias of -2.\n FxaaTex fxaaConsole360TexExpBiasNegTwo,\n //\n // Only used on FXAA Quality.\n // This must be from a constant/uniform.\n // {x_} = 1.0/screenWidthInPixels\n // {_y} = 1.0/screenHeightInPixels\n FxaaFloat2 fxaaQualityRcpFrame,\n //\n // Only used on FXAA Console.\n // This must be from a constant/uniform.\n // This effects sub-pixel AA quality and inversely sharpness.\n // Where N ranges between,\n // N = 0.50 (default)\n // N = 0.33 (sharper)\n // {x__} = -N/screenWidthInPixels\n // {_y_} = -N/screenHeightInPixels\n // {_z_} = N/screenWidthInPixels\n // {__w} = N/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt,\n //\n // Only used on FXAA Console.\n // Not used on 360, but used on PS3 and PC.\n // This must be from a constant/uniform.\n // {x__} = -2.0/screenWidthInPixels\n // {_y_} = -2.0/screenHeightInPixels\n // {_z_} = 2.0/screenWidthInPixels\n // {__w} = 2.0/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt2,\n //\n // Only used on FXAA Console.\n // Only used on 360 in place of fxaaConsoleRcpFrameOpt2.\n // This must be from a constant/uniform.\n // {x__} = 8.0/screenWidthInPixels\n // {_y_} = 8.0/screenHeightInPixels\n // {_z_} = -4.0/screenWidthInPixels\n // {__w} = -4.0/screenHeightInPixels\n FxaaFloat4 fxaaConsole360RcpFrameOpt2,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_SUBPIX define.\n // It is here now to allow easier tuning.\n // Choose the amount of sub-pixel aliasing removal.\n // This can effect sharpness.\n // 1.00 - upper limit (softer)\n // 0.75 - default amount of filtering\n // 0.50 - lower limit (sharper, less sub-pixel aliasing removal)\n // 0.25 - almost off\n // 0.00 - completely off\n FxaaFloat fxaaQualitySubpix,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // The minimum amount of local contrast required to apply algorithm.\n // 0.333 - too little (faster)\n // 0.250 - low quality\n // 0.166 - default\n // 0.125 - high quality\n // 0.063 - overkill (slower)\n FxaaFloat fxaaQualityEdgeThreshold,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // 0.0833 - upper limit (default, the start of visible unfiltered edges)\n // 0.0625 - high quality (faster)\n // 0.0312 - visible limit (slower)\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaQualityEdgeThresholdMin,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_SHARPNESS define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_SHARPNESS for PS3.\n // Due to the PS3 being ALU bound,\n // there are only three safe values here: 2 and 4 and 8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // For all other platforms can be a non-power of two.\n // 8.0 is sharper (default!!!)\n // 4.0 is softer\n // 2.0 is really soft (good only for vector graphics inputs)\n FxaaFloat fxaaConsoleEdgeSharpness,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_THRESHOLD for PS3.\n // Due to the PS3 being ALU bound,\n // there are only two safe values here: 1/4 and 1/8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // The console setting has a different mapping than the quality setting.\n // Other platforms can use other values.\n // 0.125 leaves less aliasing, but is softer (default!!!)\n // 0.25 leaves more aliasing, and is sharper\n FxaaFloat fxaaConsoleEdgeThreshold,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // The console setting has a different mapping than the quality setting.\n // This only applies when FXAA_EARLY_EXIT is 1.\n // This does not apply to PS3,\n // PS3 was simplified to avoid more shader instructions.\n // 0.06 - faster but more aliasing in darks\n // 0.05 - default\n // 0.04 - slower and less aliasing in darks\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaConsoleEdgeThresholdMin,\n //\n // Extra constants for 360 FXAA Console only.\n // Use zeros or anything else for other platforms.\n // These must be in physical constant registers and NOT immediates.\n // Immediates will result in compiler un-optimizing.\n // {xyzw} = float4(1.0, -1.0, 0.25, -0.25)\n FxaaFloat4 fxaaConsole360ConstDir\n) {\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posM;\n posM.x = pos.x;\n posM.y = pos.y;\n #if (FXAA_GATHER4_ALPHA == 1)\n #if (FXAA_DISCARD == 0)\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #endif\n #if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1));\n #else\n FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1));\n #endif\n #if (FXAA_DISCARD == 1)\n #define lumaM luma4A.w\n #endif\n #define lumaE luma4A.z\n #define lumaS luma4A.x\n #define lumaSE luma4A.y\n #define lumaNW luma4B.w\n #define lumaN luma4B.z\n #define lumaW luma4B.x\n #else\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 0.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 0.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy));\n #endif\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat maxSM = max(lumaS, lumaM);\n FxaaFloat minSM = min(lumaS, lumaM);\n FxaaFloat maxESM = max(lumaE, maxSM);\n FxaaFloat minESM = min(lumaE, minSM);\n FxaaFloat maxWN = max(lumaN, lumaW);\n FxaaFloat minWN = min(lumaN, lumaW);\n FxaaFloat rangeMax = max(maxWN, maxESM);\n FxaaFloat rangeMin = min(minWN, minESM);\n FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold;\n FxaaFloat range = rangeMax - rangeMin;\n FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled);\n FxaaBool earlyExit = range < rangeMaxClamped;\n/*--------------------------------------------------------------------------*/\n if(earlyExit)\n #if (FXAA_DISCARD == 1)\n FxaaDiscard;\n #else\n return rgbyM;\n #endif\n/*--------------------------------------------------------------------------*/\n #if (FXAA_GATHER4_ALPHA == 0)\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 1.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n #else\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNS = lumaN + lumaS;\n FxaaFloat lumaWE = lumaW + lumaE;\n FxaaFloat subpixRcpRange = 1.0/range;\n FxaaFloat subpixNSWE = lumaNS + lumaWE;\n FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS;\n FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNESE = lumaNE + lumaSE;\n FxaaFloat lumaNWNE = lumaNW + lumaNE;\n FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE;\n FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNWSW = lumaNW + lumaSW;\n FxaaFloat lumaSWSE = lumaSW + lumaSE;\n FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2);\n FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2);\n FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW;\n FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE;\n FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4;\n FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4;\n/*--------------------------------------------------------------------------*/\n FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE;\n FxaaFloat lengthSign = fxaaQualityRcpFrame.x;\n FxaaBool horzSpan = edgeHorz >= edgeVert;\n FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE;\n/*--------------------------------------------------------------------------*/\n if(!horzSpan) lumaN = lumaW;\n if(!horzSpan) lumaS = lumaE;\n if(horzSpan) lengthSign = fxaaQualityRcpFrame.y;\n FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM;\n/*--------------------------------------------------------------------------*/\n FxaaFloat gradientN = lumaN - lumaM;\n FxaaFloat gradientS = lumaS - lumaM;\n FxaaFloat lumaNN = lumaN + lumaM;\n FxaaFloat lumaSS = lumaS + lumaM;\n FxaaBool pairN = abs(gradientN) >= abs(gradientS);\n FxaaFloat gradient = max(abs(gradientN), abs(gradientS));\n if(pairN) lengthSign = -lengthSign;\n FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange);\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posB;\n posB.x = posM.x;\n posB.y = posM.y;\n FxaaFloat2 offNP;\n offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\n offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\n if(!horzSpan) posB.x += lengthSign * 0.5;\n if( horzSpan) posB.y += lengthSign * 0.5;\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posN;\n posN.x = posB.x - offNP.x * FXAA_QUALITY_P0;\n posN.y = posB.y - offNP.y * FXAA_QUALITY_P0;\n FxaaFloat2 posP;\n posP.x = posB.x + offNP.x * FXAA_QUALITY_P0;\n posP.y = posB.y + offNP.y * FXAA_QUALITY_P0;\n FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0;\n FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN));\n FxaaFloat subpixE = subpixC * subpixC;\n FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP));\n/*--------------------------------------------------------------------------*/\n if(!pairN) lumaNN = lumaSS;\n FxaaFloat gradientScaled = gradient * 1.0/4.0;\n FxaaFloat lumaMM = lumaM - lumaNN * 0.5;\n FxaaFloat subpixF = subpixD * subpixE;\n FxaaBool lumaMLTZero = lumaMM < 0.0;\n/*--------------------------------------------------------------------------*/\n lumaEndN -= lumaNN * 0.5;\n lumaEndP -= lumaNN * 0.5;\n FxaaBool doneN = abs(lumaEndN) >= gradientScaled;\n FxaaBool doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1;\n FxaaBool doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1;\n/*--------------------------------------------------------------------------*/\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 3)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 4)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 5)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 6)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 7)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 8)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 9)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 10)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 11)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 12)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12;\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n/*--------------------------------------------------------------------------*/\n FxaaFloat dstN = posM.x - posN.x;\n FxaaFloat dstP = posP.x - posM.x;\n if(!horzSpan) dstN = posM.y - posN.y;\n if(!horzSpan) dstP = posP.y - posM.y;\n/*--------------------------------------------------------------------------*/\n FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero;\n FxaaFloat spanLength = (dstP + dstN);\n FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero;\n FxaaFloat spanLengthRcp = 1.0/spanLength;\n/*--------------------------------------------------------------------------*/\n FxaaBool directionN = dstN < dstP;\n FxaaFloat dst = min(dstN, dstP);\n FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP;\n FxaaFloat subpixG = subpixF * subpixF;\n FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5;\n FxaaFloat subpixH = subpixG * fxaaQualitySubpix;\n/*--------------------------------------------------------------------------*/\n FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0;\n FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH);\n if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign;\n if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign;\n #if (FXAA_DISCARD == 1)\n return FxaaTexTop(tex, posM);\n #else\n return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM);\n #endif\n}\n/*==========================================================================*/\n#endif\n\nvoid main() {\n gl_FragColor = FxaaPixelShader(\n vUv,\n vec4(0.0),\n tDiffuse,\n tDiffuse,\n tDiffuse,\n resolution,\n vec4(0.0),\n vec4(0.0),\n vec4(0.0),\n 0.75,\n 0.166,\n 0.0833,\n 0.0,\n 0.0,\n 0.0,\n vec4(0.0)\n );\n\n // TODO avoid querying texture twice for same texel\n gl_FragColor.a = texture2D(tDiffuse, vUv).a;\n}'};return THREE.W_});
define("hh",["require","cN","jw","iK","fL"],function(a){function b(a,b){this.g=a;this.xy=b;this.Ri=new THREE.EffectComposer(a);this.Kl=new THREE.CustomRenderPass(b);this.Kl.Tp=y;this.Ri.addPass(this.Kl);this.hI=new THREE.ShaderPass(THREE.W_);this.Ri.addPass(this.hI);this.Jq=this.Kq=m}a("cN");a("jw");a("iK");a("fL");var c=new THREE.Vector2;b.prototype.destroy=function(){this.Ri=this.hI=this.Kl=this.xy=this.g=r};b.prototype.render=function(a,b){this.g.getSize(c);if(this.Kq!==c.width||this.Jq!==c.height)this.Kq=
c.width,this.Jq=c.height,this.Ri.setSize(this.Kq,this.Jq),this.hI.material.uniforms.resolution.value.x=1/this.Kq,this.hI.material.uniforms.resolution.value.y=1/this.Jq;this.Kl.Ej=a;this.Kl.Kc=b;this.Ri.render()};return b});
define("iw",["require","cA","hh"],function(a){function b(a,e){this.g=a;this.xy=e;this.mJ=new c(a,e);this.YR=new d(a,e);this.VH=b.NONE}var c=a("cA"),d=a("hh");b.V_="fxaa";b.LO="motionBlur";b.NONE="none";b.prototype.destroy=function(){this.mJ.destroy();this.mJ=r;this.YR.destroy();this.xy=this.g=this.YR=r};b.prototype.MZ=function(a){this.VH!=a&&(this.VH=a,this.VH==b.LO&&this.mJ.start())};b.prototype.render=function(a,c){switch(this.VH){case b.V_:this.YR.render(a,c);break;case b.LO:this.mJ.render(a,c);
break;default:this.xy(this.g,a,c,r,y)}};return b});define("io",["require","ge"],function(a){function b(){this.status=b.AG;this.uZ=this.fw=0;this.tZ=[]}a("ge");b.LOADING="loading";b.T="loaded";b.AG="not loaded";return b});
define("iG","require,do,fg,bZ,ll,id,io".split(","),function(a){function b(){this.b4={};this.Qc=[];this.vr=[];this.fd={}}var c=a("do"),d=a("fg");a("bZ");var f=a("ll"),e=a("id"),g=a("io");b.prototype.g_=function(a){for(var a=a.Gn(),b=0,c=a.length;b<c;b++)if(this.pB(a[b]).status!=g.T)return y;return n};b.prototype.In=function(a,b){this.Qc.push(a);this.Vga(a,b)};b.prototype.Ai=function(a,b){var e=c(this.Qc).indexOf(a);e<0&&h("Unloading item not loaded");this.Qc.splice(e,1);this.xpa(a,b)};b.prototype.ve=
function(a,b){return this.fd[a].ve(b)};b.prototype.Vga=function(a,b){this.vr.push(a);for(var c=a.Gn(),e=0,d=c.length;e<d;e++){var f=c[e],o=this.pB(f);o.fw++;o.tZ.push(b);if(o.status==g.AG){o.status=g.LOADING;this.$ma(f,Math.min.apply(Math,o.tZ))}}this.taa()};b.prototype.xpa=function(a,b){this.vr=c(this.vr).without(a);for(var e=a.Gn(),d=0,f=e.length;d<f;d++){var q=e[d],o=this.pB(q);o.fw--;var t=o.tZ,s=t.indexOf(b);s>=0&&t.splice(s,1);if(o.fw==0&&o.status!=g.AG){o.status=g.AG;o.uZ=0;this.Asa(q)}}};
b.prototype.taa=function(a){for(var a=(a==m?this.vr:this.T4(a)).slice(),b=0;b<a.length;b++){for(var e=a[b],d=e.Gn(),f=0,q=0,o=d.length,t=0;t<d.length;t++){var s=this.pB(d[t]),f=f+s.uZ;s.status==g.T&&q++}e.uya(f/o);if(q==o){e.OZ();this.vr=c(this.vr).without(e)}}};b.prototype.pB=function(a){var b=this.b4[a];b||(this.b4[a]=b=new g);return b};b.prototype.T4=function(a){for(var b=[],e=0;e<this.vr.length;e++){var d=this.vr[e];c(d.Gn()).contains(a)&&b.push(d)}return b};b.prototype.$ma=function(a,b){var c=
new e(b);this.fd[a]=c;c.bind(f.T,this.sC,this,n);c.bind(f.ne,this.tC,this,n);c.load(a)};b.prototype.Asa=function(a){var b=this.fd[a];delete this.fd[a];b.unbind(f.T,this.sC,this);b.unbind(f.ne,this.tC,this);b.cancel()};b.prototype.sC=function(a){var a=a.source.Bj(),b=this.pB(a);b.uZ=100;b.status=g.T;this.taa(a)};b.prototype.tC=function(a){for(var a=a.source.Bj(),b=this.T4(a),c=0;c<b.length;c++){var e=b[c];this.Ai(e);e.Wxa()}d.log("Error loading: "+a)};b.Id=new b;return b.Id});
define("kz",["require","iG","fK","r"],function(a){var b=a("iG"),c=a("fK"),d=a("r"),f={QT:m,xya:P("QT"),nR:m,Txa:P("nR"),createTexture:function(){var a=new THREE.Texture;a.image=f.pz();a.userData={};a.userData.Oea={};return a},iua:function(a){a.image!=this.pz()&&(a.image=this.pz(),a.needsUpdate=n)},DN:function(a,b){b=this.Rua(b);a.generateMipmaps=this.lia(b);if(a.generateMipmaps)a.minFilter=THREE.LinearMipMapLinearFilter,a.anisotropy=Math.min(this.Hka(b),d.lca().ida),!c.ada(b.width)||!c.ada(b.height)?
(a.Nm||(a.Nm=document.createElement("canvas"),a.Nm.oL=n),a.image=a.Nm,a.Nm.ia=b,a.image.width=c.bca(b.width),a.image.height=c.bca(b.height),a.image.getContext("2d").drawImage(b,0,0,a.image.width,a.image.height)):a.image=b;else if(a.minFilter=THREE.LinearFilter,c.nF(b)&&c.Yea(b)){a.pl||(a.pl=document.createElement("canvas"),a.zma=a.pl.getContext("2d"),a.pl.oL=n);var k=b.videoWidth;c.Dj()&&(k=Math.min(4096,k));var i=k*b.videoHeight/b.videoWidth;if(a.pl.width!=k||a.pl.height!=i)a.pl.width=k,a.pl.height=
i;b.readyState>=b.HAVE_CURRENT_DATA&&a.zma.drawImage(b,0,0,k,i);a.image=a.pl}else a.image=b;a.Nm&&a.image!=a.Nm&&(f.kM(a.Nm),delete a.Nm);a.needsUpdate=n;if((k=f.GY(a))&&k.isShaderMaterial)k.needsUpdate=n;c.Qca()},Rua:function(a){a?c.WY(a)?a=b.ve(a,y):c.dda(a)?a=this.pz():c.nF(a)&&!(a.readyState>=a.HAVE_CURRENT_DATA&&0<a.videoWidth&&0<a.videoHeight)&&(a=this.pz()):a=this.pz();return a},sua:function(a,b,d,i,f){var j=document.createElement("canvas");j.width=c.Yn();j.height=c.Yn();j.oL=n;var l=j.getContext("2d");
if(!l)return r;l.drawImage(a,b,d,i,f,0,0,c.Yn(),c.Yn());this.oM(j);return j},kM:function(a){c.Uca(a)&&a.oL&&(delete a.oL,a.width=0,a.height=0)},dispose:function(a){a.pl&&a.pl!=a.image&&this.kM(a.pl);a.image&&this.kM(a.image);a.dispose()},EN:function(a,b,c){b?(a.F$=n,a.E$=c||1):(delete a.F$,delete a.E$)},Hka:function(a){return a&&a.E$||1},Rya:function(a,b){a.userData.Oea.material=b},GY:function(a){return a.userData.Oea.material},Xta:function(a){return c.VY(a)},vba:function(a){c.WY(a)&&(a=b.ve(a,y));
c.VY(a)&&this.oM(a)},oM:function(a){var b=document.createElement("canvas");b.width=1;b.height=1;var c=b.getContext("2d");f.oM=function(a){c.drawImage(a,0,0,1,1,0,0,1,1)};return f.oM(a)},kR:r,pz:function(){if(!this.kR){var a=document.createElement("canvas");a.width=128;a.height=128;a.getContext("2d").clearRect(0,0,a.width,a.height);this.kR=a}return this.kR},lia:function(a){if(c.ywa(a))return y;if(c.Uca(a))return!!a.F$;if(d.Xa()){if(this.QT!==m)return this.QT}else if(this.nR!==m)return this.nR;return y}};
return f});
define("bU",["require","fK","kz"],function(a){function b(a){this.YF=(a=c.Es(a))&&c.Gca();this.iF=a&&c.Fca();this.ts=0;this.sn=m;this.NE=this.OE=0;this.premultipliedAlpha=y;this.side=m;this.lZ={}}var c=a("fK"),d=a("kz"),f={yY:function(a){return a.map||a.uniforms&&a.uniforms.texture&&a.uniforms.texture.value},ws:function(a,b){a||(a=d.createTexture());b||(b=new f.Sn);var c;c=b.Axa()?this.pua(a,b):this.aY(a);b.side&&(c.side=b.side);for(var i in b.lZ)c[i]=b.lZ[i];return c},aY:function(a){var b=new THREE.MeshBasicMaterial;
b.map=a;this.l2(b);return b},pua:function(a,b){var c={uniforms:{},transparent:n};c.uniforms.texture={type:"sampler2D",value:a};a.flipY=!b.YF;c.vertexShader=["varying vec2 vUV;\nvoid main() {","\tvUV = vec2( uv.x, "+(b.YF?"1.0 - uv.y":"uv.y")+");","\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}"].join("\n");if(b.iF||b.ts||b.sn||b.premultipliedAlpha){var d=[],f=[],d=d.concat(["uniform sampler2D texture;","uniform float opacity;","varying vec2 vUV;"]);c.uniforms.opacity=
{type:"float",value:1};f=f.concat([" vec4 color = texture2D(texture, vUV);"," float alpha = color.a * opacity;"]);b.premultipliedAlpha&&(f=f.concat([" if (color.a > 0.0)"," color.rgb /= color.a;"]));if(b.ts){var j=a.image.width||a.image.videoWidth,l=a.image.height||a.image.videoHeight,q=0.5*Math.min(j,l)*b.ts;c.uniforms.blendingLimit={type:"v2",value:new THREE.Vector2(q/j,q/l)};d=d.concat(["uniform vec2 blendingLimit;"]);f=f.concat(" float xCoef = 0.0;, float yCoef = 0.0;, if (vUV.x < blendingLimit.x) {, xCoef = 1.0 - (vUV.x / blendingLimit.x);, xCoef = xCoef * xCoef;, } else if ((1.0 - vUV.x) < blendingLimit.x) {, xCoef = 1.0 - ((1.0 - vUV.x) / blendingLimit.x);, xCoef = xCoef * xCoef;, }, if (vUV.y < blendingLimit.y) {, yCoef = 1.0 - (vUV.y / blendingLimit.y);, yCoef = yCoef * yCoef;, } else if ((1.0 - vUV.y) < blendingLimit.y) {, yCoef = 1.0 - ((1.0 - vUV.y) / blendingLimit.y);, yCoef = yCoef * yCoef;, }, alpha = alpha * (1.0 - sqrt(xCoef + yCoef));".split(","))}b.sn&&
(c.uniforms.chromaColor={type:"v3",value:new THREE.Vector3(parseInt(b.sn.substr(1,2),16)/255,parseInt(b.sn.substr(3,2),16)/255,parseInt(b.sn.substr(5,2),16)/255)},c.uniforms.chromaThreshold={type:"f",value:b.OE},c.uniforms.chromaSmoothing={type:"f",value:b.NE},d=d.concat(["uniform vec3 chromaColor;","uniform float chromaThreshold;","uniform float chromaSmoothing;"]),f=f.concat(" float maskY = 0.2989 * chromaColor.r + 0.5866 * chromaColor.g + 0.1145 * chromaColor.b;{ float maskCr = 0.7132 * (chromaColor.r - maskY);{ float maskCb = 0.5647 * (chromaColor.b - maskY);{ float Y = 0.2989 * color.r + 0.5866 * color.g + 0.1145 * color.b;{ float Cr = 0.7132 * (color.r - Y);{ float Cb = 0.5647 * (color.b - Y);{ float chromaBlendValue = smoothstep(chromaThreshold, chromaThreshold + chromaSmoothing, distance(vec2(Cr, Cb), vec2(maskCr, maskCb)));{ alpha = alpha * chromaBlendValue;".split("{")));
f=f.concat(["\tgl_FragColor = vec4(color"+(b.iF?".bgr":".rgb")+", alpha);"]);a.format=THREE.RGBAFormat;c.fragmentShader=[].concat(d,["void main() {"],f,["}"]).join("\n")}else c.fragmentShader="uniform sampler2D texture;\nvarying vec2 vUV;\nvoid main() {\n\tgl_FragColor = texture2D(texture, vUV);\n}";c=new THREE.ShaderMaterial(c);this.l2(c);return c},dispose:function(a){Array.isArray(a)||(a=[a]);a.forEach(function(a){var b=f.yY(a);b&&d.dispose(b);a.dispose()})},l2:function(a){a.side=THREE.FrontSide;
a.transparent=n;a.depthTest=y;a.needsUpdate=n;a.userData={};a.userData.hda={};d.Rya(f.yY(a),a)},QZ:function(a,b){a.userData.hda.Jk=b},Xba:function(a){return a.userData.hda.Jk}};b.prototype.Axa=function(){return this.YF||this.iF||this.ts||this.sn||this.premultipliedAlpha};b.prototype.isEqual=function(a){return this.YF===a.YF&&this.iF===a.iF&&this.ts===a.ts&&this.sn===a.sn&&this.OE===a.OE&&this.NE===a.NE&&this.premultipliedAlpha===a.premultipliedAlpha&&this.side===a.side};f.Sn=b;return f});
define("dv",["require","gW","bU"],function(a){function b(a){return Array.isArray(a)?a:a?[a]:[]}var c=a("gW"),d=a("bU"),f={create:function(a,c){var f=new THREE.Mesh(a,c);f.overdraw=y;f.matrixAutoUpdate=y;f.userData.Pp={};f.userData.Pp.attributes={};b(c).forEach(function(a){d.QZ(a,f)});return f},qba:function(a){var b=new THREE.Group;f.forEach(a,function(a){b.add(a)});return b},wya:function(a,c){b(c).forEach(function(a){d.QZ(a,r)});d.dispose(a.material);a.material=c;b(c).forEach(function(b){d.QZ(b,a)})},
Cs:function(a){return b(a.material)},qva:function(a,b){if(a.layers.mask&b.layers.mask){var d=f.Cs(a);return c.pva(a.geometry,b,a.matrixWorld).map(function(a){return d[a]})}return[]},Zxa:function(a,b){a.geometry=b},mva:function(a,b){var k=[];f.Xg(a,function(a){var e=f.Cs(a);b.forEach(function(b){var g=c.lva(a.geometry,a.matrixWorld,b);if(g){var f=d.yY(e[g.materialIndex]),b=f.image;b==f.Nm&&(b=f.Nm.ia);f=Math.round(g.Rea*b.width-0.5);f=0>f?0:f>b.width-1?b.width-1:f;g=Math.round((1-g.Uea)*b.height-0.5);
g=0>g?0:g>b.height-1?b.height-1:g;k.push({x:f,y:g,source:b})}})});return k},vN:function(a,b){f.forEach(a,function(a){b?b.add(a):a.parent&&a.parent.remove(a)})},Ts:"panoramaId",yw:"panoramaFrameId",LN:"panoramaOverlayId",KN:"levelIndex",setAttribute:function(a,b,c){f.Xg(a,function(a){a.userData.Pp.attributes[b]=c})},getAttribute:function(a,b){return a.userData.Pp.attributes[b]},Dba:function(a,b,c){for(var d=[],f=0,j=a.length;f<j;f++){var l=a[f];l.userData.Pp.attributes[b]!==c&&d.push(l)}return d},
mM:function(a,b,c){for(var d=[],f=0,j=a.length;f<j;f++){var l=a[f];l.userData.Pp.attributes[b]===c&&d.push(l)}return d},nca:function(a,b){for(var c={},d=0,f=a.length;d<f;d++){var j=a[d],l=j.userData.Pp.attributes[b];l!==m&&(c[l]||(c[l]=[])).push(j)}return c},uM:function(a){a=a.userData.Pp.alpha;return a===m?1:a},xd:function(a,b){f.Xg(a,function(a){a.userData.Pp.alpha=b;f.Cs(a).forEach(function(a){a.opacity=b;"ShaderMaterial"==a.type&&a.uniforms&&a.uniforms.opacity&&(a.uniforms.opacity.value=b)})})},
bm:function(a,b){f.Xg(a,function(a){a.matrix.copy(b);a.matrixWorldNeedsUpdate=n})},kca:function(a){return a.renderOrder},yN:function(a,b){f.forEach(a,function(a){a.renderOrder=b})},dispose:function(a){f.Xg(a,function(a){a.geometry&&(a.geometry.dispose(),a.geometry=m);a.material&&(d.dispose(a.material),a.material=m)})},Eh:function(a){var b=[];f.Xg(a,function(a){b.push(a)});return b},forEach:function(a,b){Array.isArray(a)?a.forEach(b):a&&a.isObject3D&&(a.isMesh||"Group"==a.type)&&b(a)},Xg:function(a,
b){if(Array.isArray(a))for(var c=0,d=a.length;c<d;c++)f.Xg(a[c],b);else if(a&&a.children){c=0;for(d=a.children.length;c<d;c++)f.Xg(a.children[c],b)}a&&a.isObject3D&&a.isMesh&&b(a)}};return f});
define("M",["require","dv"],function(a){var b=a("dv");return{Eh:function(a){var d=[];a.children&&a.children.forEach(function(a){b.Xg(a,function(a){a.userData&&a.userData.Pp&&d.push(a)})});return d},LZ:function(a,b){a.userData.bM=b},nY:function(a){return a.userData.bM||[]},As:function(a){return a.userData.bM&&0<a.userData.bM.length&&a.userData.bM[0]||r}}});
define("X","require,bi,r,cT,M,fK".split(","),function(a){var b=a("bi");a("r");var c=a("cT"),d=a("M"),f=a("fK"),e=180/Math.PI;return{Rfa:function(a,b){var c,e;this.setSize=function(b,d){if(c!=b||e!=d){c=b;e=d;a.setSize(b,d)}};this.start=function(c){d.LZ(c,[b]);a.setPixelRatio(f.getPixelRatio())};this.stop=C();this.fov=function(){return b.fov};this.n_=C();this.Kc=function(){return b};this.render=function(c,d,e){a.setRenderTarget(d);e&&a.clear();a.render(c,b)}},nga:function(a,f){var i,p,j,l,q=new THREE.Vector2,
o=new THREE.PerspectiveCamera;o.layers.enable(c.qa);var t=new THREE.PerspectiveCamera;t.layers.enable(c.Ma);this.start=function(c){a.getSize(q);i=a.getPixelRatio();p=q.width;j=q.height;l=a.getContext().getParameter(a.getContext().FRAMEBUFFER_BINDING);var e=b.zM();e.VE&&a.getContext().bindFramebuffer(a.getContext().FRAMEBUFFER,e.VE);a.setClearColor(0,1);a.setDrawingBufferSize(e.Fk,e.yj,e.pM);d.LZ(c,[o,t])};this.stop=function(){a.getContext().bindFramebuffer(a.getContext().FRAMEBUFFER,l);a.setClearColor(0,
0);a.setDrawingBufferSize(p,j,i)};this.setSize=function(a,b){p=a;j=b};this.fov=function(){return t.fov};this.Kc=function(){return t};this.n_=function(){f.updateProjectionMatrix();f.updateMatrixWorld();b.zn().views.forEach(function(a){var c=a.eye==b.Oj.qa?o:a.eye==b.Oj.Ma?t:r;if(c){f.matrixWorld.decompose(c.position,c.quaternion,c.scale);c.applyQuaternion(a.orientation);c.translateOnAxis(a.position,1);c.projectionMatrix.copy(a.projectionMatrix);c.fov=2*Math.atan(1/c.projectionMatrix.elements[5])*e}})};
this.render=function(c,d,e){var i=c.autoUpdate;if(i){c.updateMatrixWorld();c.autoUpdate=y}if(d){a.setRenderTarget(d);d.scissorTest=n}else{a.setRenderTarget(r);a.setScissorTest(n)}(a.autoClear||e)&&a.clear();b.zn().views.forEach(function(e){var i=e.eye==b.Oj.qa?o:e.eye==b.Oj.Ma?t:r;if(i){if(d){d.viewport.set(e.viewport.x,e.viewport.y,e.viewport.width,e.viewport.height);d.scissor.set(e.viewport.x,e.viewport.y,e.viewport.width,e.viewport.height)}else{a.setViewport(e.viewport.x,e.viewport.y,e.viewport.width,
e.viewport.height);a.setScissor(e.viewport.x,e.viewport.y,e.viewport.width,e.viewport.height)}a.render(c,i)}});a.getSize(q);if(d){d.viewport.set(0,0,q.width,q.height);d.scissor.set(0,0,q.width,q.height);d.scissorTest=y;a.setRenderTarget(r)}else{a.setViewport(0,0,q.width,q.height);a.setScissorTest(y)}if(i)c.autoUpdate=n}},gga:function(a,b){var e,p,j=1,l=new THREE.WebGLCubeRenderTarget(1024),q=new THREE.CubeCamera(0.1,1E4,l);q.layers.enable(c.Qn);q.layers.enable(c.qa);l=new THREE.ShaderMaterial;l.uniforms=
{tCube:{value:q.renderTarget.texture},tFlip:{value:1},opacity:{value:1}};l.fragmentShader="uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldPosition;\nvoid main() {\n\tgl_FragColor = textureCube( tCube, vec3( tFlip * vWorldPosition.x, vWorldPosition.yz ) );\n\tgl_FragColor.a *= opacity;\n}\n";l.vertexShader="varying vec3 vWorldPosition;\n#include <common>\nvoid main() {\n\tvWorldPosition = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n\tgl_Position.z = gl_Position.w;\n}\n";
l.side=THREE.BackSide;l.depthWrite=y;l.transparent=n;l.depthTest=y;l.needsUpdate=n;var o=new THREE.Mesh(new THREE.SphereBufferGeometry(5,64,64),l);o.overdraw=y;o.matrixAutoUpdate=y;o.renderOrder=1E3;var t=new THREE.Matrix4;this.sw=function(a){j=a};this.setSize=function(b,c){if(e!=b||p!=c)a.setSize(e=b,p=c)};this.start=function(c){c.add(o);c.add(q);c.traverse(function(a){if(a.layers.test(q.layers)){a.userData.aZ=a.layers.mask;a.layers.mask=q.layers.mask}});q.visible=n;o.visible=n;d.LZ(c,[b]);a.setClearColor(16777215,
1);a.setPixelRatio(f.getPixelRatio())};this.stop=function(b){a.setClearColor(0,0);b.traverse(function(a){if(a.userData.aZ!==m){a.layers.mask=a.userData.aZ;delete a.userData.aZ}});q.visible=y;o.visible=y;b.remove(o);b.remove(q)};this.fov=function(){return b.fov};this.n_=function(){if(j>0){o.matrix.copy(b.matrixWorld);o.matrix.multiply(t.makeTranslation(0,0,-j*5));o.matrixWorldNeedsUpdate=n}};this.Kc=function(){return b};var s=0;this.render=function(c,d,e){if(j>0){s++;if(!f.hwa()||s%10==0){f.Mxa();
o.visible=y;q.update(a,c);o.visible=n}}a.setRenderTarget(d);e&&a.clear();a.render(c,b)}}}});
define("dG","require,jquery.mod,it,ku,cT,iw,X,gW,fK,bi".split(","),function(a){function b(){this.J=c("<div/>");this.J.css({position:"absolute",left:0,top:0,right:0,bottom:0,"z-index":0,cursor:"inherit"});this.wb=new THREE.PerspectiveCamera(90,16/9,0.1,2*i.Kd);this.wb.layers.enable(e.qa);this.JH=new THREE.PerspectiveCamera;this.qj=new THREE.Scene;this.C3=new THREE.Scene;this.D3=new THREE.Scene;window.iAa=THREE;this.qj.add(this.wb);this.so=this.Pq=this.g=r;this.tu=0;this.ep=this.ig=this.dW=this.AX=
r;this.r6=this.VQ=y}var c=a("jquery.mod"),d=a("it"),f=a("ku"),e=a("cT"),g=a("iw"),k=a("X"),i=a("gW"),p=a("fK"),j=a("bi");b.prototype.As=Q("JH");b.prototype.Tua=function(){return this.ig.fov(this.wb)};b.prototype.getPixelRatio=function(){return this.g.getPixelRatio()};b.prototype.Cb=Q("J");b.prototype.Wua=function(){return this.g?this.g.domElement.width:this.J.width()};b.prototype.Vua=function(){return this.g?this.g.domElement.height:this.J.height()};b.prototype.xg=function(){return this.g.domElement};
b.prototype.update=function(a){this.eta(a);this.Msa(a);this.Fsa(a);this.bta(a)};b.prototype.render=function(){this.uK()};b.prototype.eta=function(a){if(a.enabled){this.tu=(new Date).getTime();this.g||this.hra(a);if(a.Db&&j.Qd()==j.iP.rm)this.r6=n;j.tN(this.g.getContext())}if(this.VQ=a.enabled&&!a.Db){this.Pq.setSize(a.width,a.height);this.so.setSize(a.width,a.height)}};b.prototype.hra=function(a){if(!this.g&&a.enabled){for(;l.length>=q;){l.sort(function(a,b){return a.tu-b.tu});l[0].Aia()}l.push(this);
var b=this.Cb().get(0);this.Pq=new THREE.CSS3DRenderer;this.Pq.domElement.style.position="absolute";this.Pq.domElement.style.zIndex=0;b.appendChild(this.Pq.domElement);var c={precision:"mediump",alpha:n};if(l.length==1&&a.Db){a=j.Sv();c.context=a;c.canvas=a.canvas}else{c.canvas=document.createElement("canvas");c.context=p.bY(c.canvas,a.XL)}this.g=new THREE.WebGLRenderer(c);this.g.domElement.style.position="absolute";this.g.domElement.style.zIndex=1;this.g.domElement.style.pointerEvents="none";this.g.setClearColor(0,
0);b.appendChild(this.g.domElement);this.so=new THREE.CSS3DRenderer;this.so.domElement.style.position="absolute";this.so.domElement.style.zIndex=2;this.so.domElement.style.pointerEvents="none";b.appendChild(this.so.domElement);this.ep=new g(this.g,function(a,b,c,d,e){this.r6&&this.g.resetState();this.ig.render(b,d,e)}.bind(this));this.dW=new k.Rfa(this.g,this.wb);this.t$=new k.gga(this.g,this.wb);this.AX=new k.nga(this.g,this.wb);j.$y(this.g.getContext())}};b.prototype.Aia=function(){if(this.g){l.splice(l.indexOf(this),
1);this.ig=this.dW=this.AX=r;this.ep.destroy();this.ep=r;j.iN(this.g.getContext());var a=this.Cb().get(0);a.removeChild(this.so.domElement);this.so=r;a.removeChild(this.g.domElement);this.g.dispose();this.g=r;a.removeChild(this.Pq.domElement);this.Pq=r}};b.prototype.Fsa=function(a){this.wb.quaternion.copy(f.Hba(a.ma,a.pitch,a.md));this.wb.fov=d.Hk(a.bd,a.width,a.height);this.wb.aspect=a.width/a.height;this.wb.updateProjectionMatrix();this.wb.updateMatrixWorld();this.ig&&this.ig.n_();this.ig&&this.JH.copy(this.ig.Kc());
this.JH.updateProjectionMatrix();this.JH.updateMatrixWorld();this.qj.autoUpdate===n&&this.qj.updateMatrixWorld()};b.prototype.Msa=function(a){var b=a.Db?this.AX:a.zi>0?this.t$:this.dW;if(this.ig!=b){this.ig&&this.ig.stop(this.qj);(this.ig=b)&&this.ig.start(this.qj)}if(this.ig){this.ig.setSize(a.width,a.height);this.ig==this.t$&&this.ig.sw(a.zi)}};b.prototype.bta=function(a){this.ep&&(a.aN?this.ep.MZ(g.LO):a.sM&&!a.Db?this.ep.MZ(g.V_):this.ep.MZ(g.NONE))};b.prototype.uK=function(){this.ep&&this.ep.render(this.qj,
this.wb);if(this.VQ){this.Pq.render(this.C3,this.wb);this.so.render(this.D3,this.wb)}};var l=[],q=10;return b});
define("gU",["require","fg","eO","fK"],function(a){var b=a("fg"),c=a("eO"),d=a("fK"),a=b.extend(c,function(){c.call(this);this.Q=this.Ua=r;this.zc=[];this.GI=this.Ug=y;this.oC=r;this.ph=[this];this.ln={};this.Cm={};this.yB=y;this.$U={};this.aV={};this.$k(["blendingActive"]);this.Nga();this.set("alpha",1);this.set("translationX",0);this.set("translationY",0);this.set("translationZ",0);this.set("deltaYaw",0);this.set("deltaPitch",0);this.set("deltaRoll",0);this.set("flipHorizontally",y);this.set("index",
0)});a.prototype.Nga=function(){var a="alpha,deltaYaw,deltaPitch,deltaRoll,translationX,translationY,translationZ".split(",");Array.isArray(a)||(a=[a]);a.forEach(function(a){this.$U[a]=n}.bind(this))};a.prototype.$k=function(a){Array.isArray(a)||(a=[a]);a.forEach(function(a){this.aV[a]=n}.bind(this))};a.prototype.set=function(a,b){this.ln[a]!==b&&(this.aV[a]&&this.zc.forEach(function(c){c.set(a,b)}),this.mha(a,b),this.vD(a))};a.prototype.get=function(a){return this.ln[a]};a.prototype.vD=function(a){this.Cm[a]||
(this.Cm[a]=n,this.yB||(this.yB=n,this.Ha()),this.$U[a]&&this.zc.forEach(function(b){b.vD(a)}))};a.prototype.Cia=function(){this.yB&&(this.yB=y,this.Cm={})};a.prototype.p=function(){if(this.yB)for(var a=0;a<arguments.length;a++)if(this.Cm[arguments[a]])return n;return y};a.prototype.mha=function(a,b){this.ln[a]=b};a.prototype.Oa=Q("zc");a.prototype.bg=function(a){for(var b=a||[],c=this.zc.slice(),a=b.length!=c.length,d=0;d<b.length&&!a;d++)a=b[d]!=c[d];a&&(a=c.filter(function(a){return-1==b.indexOf(a)}),
d=b.filter(function(a){return-1==c.indexOf(a)}),this.zc=b,a.forEach(function(a){a.SK(r)}),d.forEach(function(a){a.remove();a.SK(this)}.bind(this)),this.Ha())};a.prototype.SK=function(a){this.Q!=a&&(this.Q&&this.nj(),(this.Q=a)&&this.al(),this.PV(this.Q&&this.Q.Ua))};a.prototype.al=function(){for(var a in this.Q.$U)this.vD(a);for(a in this.Q.aV)this.set(a,this.Q.get(a))};a.prototype.nj=C();a.prototype.PV=function(a){this.Ua!=a&&(a||this.Za(),(this.Ua=a)&&this.Sa(),this.zc.forEach(function(a){a.PV(this.Ua)}.bind(this)))};
a.prototype.Sa=function(){this.eha()};a.prototype.Za=function(){this.spa()};a.prototype.eha=function(){this.ph.forEach(function(a){this.Ua.oC.add(a,this)}.bind(this))};a.prototype.spa=function(){this.ph.forEach(function(a){this.Ua.oC.remove(a,this)}.bind(this))};a.prototype.Ck=function(){this.Q&&this.Q.TX(this)};a.prototype.TX=function(a){var b=this.zc.indexOf(a);-1==b&&h("Child not found");b!=this.zc.length-1&&(this.zc.splice(b,1),this.zc.push(a),this.Ha())};a.prototype.Hua=function(a){var b=this.zc.indexOf(a);
-1==b&&h("Child not found");this.zc.splice(b,1);a.SK(r);this.Ha()};a.prototype.appendChild=function(a){a.remove();this.zc.push(a);a.SK(this);this.Ha()};a.prototype.remove=function(){this.Q&&this.Q.Hua(this)};a.prototype.Jj=C();a.prototype.Ha=function(){this.Ug||(this.Ug=n,this.Q&&this.Q.Ha(this))};a.prototype.Jia=function(){this.Ug=y};a.prototype.rV=function(){this.GI||(this.GI=n,this.Q&&this.Q.rV())};a.prototype.Fia=function(){this.GI=y};a.prototype.L=function(){this.naa();this.p("translationX",
"translationY","translationZ")&&(this.set("composedTranslationX",this.get("translationX")+(this.Q?this.Q.get("composedTranslationX"):0)),this.set("composedTranslationY",this.get("translationY")+(this.Q?this.Q.get("composedTranslationY"):0)),this.set("composedTranslationZ",this.get("translationZ")+(this.Q?this.Q.get("composedTranslationZ"):0)));this.p("deltaYaw","deltaPitch","deltaRoll")&&(this.set("composedDeltaYaw",this.get("deltaYaw")+(this.Q?this.Q.get("composedDeltaYaw"):0)),this.set("composedDeltaPitch",
this.get("deltaPitch")+(this.Q?this.Q.get("composedDeltaPitch"):0)),this.set("composedDeltaRoll",this.get("deltaRoll")+(this.Q?this.Q.get("composedDeltaRoll"):0)),d.Qca())};a.prototype.naa=function(){this.p("alpha")&&this.set("composedAlpha",this.get("alpha")*(this.Q?this.Q.get("composedAlpha"):1))};return a});
define("jZ","require,fg,ll,ge,eO,bU,kz".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("ge"),f=a("eO"),e=a("bU"),g=a("kz"),k=b.extend(f,function(){f.call(this);this.Xd=m;this.ub=g.createTexture();this.m=k.kA;this.UB=d.Sj});k.prototype.type=Q("Xd");k.prototype.texture=Q("ub");k.prototype.material=function(){return this.ub&&g.GY(this.ub)};k.prototype.Jk=function(){var a=this.ub&&g.GY(this.ub);return a&&e.Xba(a)};k.prototype.tya=P("UB");k.prototype.load=function(){if(this.m==k.kA){this.m=k.GG;this.aQ()}};
k.prototype.bua=function(){if(this.Dwa()){this.m==k.GG?this.kL():this.QD();this.m=k.kA}};k.prototype.unload=function(){if(this.m!=k.kA){this.m==k.GG?this.kL():this.m==k.$O?this.QD():this.ks();this.m=k.kA}};k.prototype.aQ=C();k.prototype.kL=C();k.prototype.ZP=C();k.prototype.QD=C();k.prototype.ks=function(){g.iua(this.texture)};k.prototype.Dwa=function(){return this.m==k.GG||this.m==k.$O};k.prototype.cZ=function(){return this.m==k.ZO||this.m==k.P0};k.prototype.dispose=function(){g.dispose(this.ub);
this.ub=r};k.prototype.dy=function(a){this.m=a?k.$O:k.P0;a?this.ZP():this.trigger(c.ne)};k.prototype.z6=function(){this.m=k.ZO;this.trigger(c.T)};k.kA="initial";k.GG="loading";k.$O="adding";k.P0="error loading";k.ZO="added";k.jga="custom";k.kga="image tile";k.jAa="image animation";k.kAa="video 360";return k});
define("dX","require,fg,ll,bS,iG,kz,jZ".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bS"),f=a("iG"),e=a("kz"),g=a("jZ"),a=b.extend(g,function(a){g.call(this);this.Xd=g.jga;this.Nd=a;if(!this.Nd)this.m=g.ZO;this.te=this.ge=r;this.KP=this.tE=m});a.prototype.yi=function(a){this.te=a;e.DN(this.ub,this.te);this.te&&this.tE!==m&&e.EN(this.te,this.tE,this.KP)};a.prototype.EN=function(a,b){if(this.tE!==a){this.tE=a;this.KP=b;this.te&&e.EN(this.te,this.tE,this.KP)}};a.prototype.ve=function(){return f.ve(this.Nd)};
a.prototype.update=function(){e.DN(this.ub,this.te)};a.prototype.aQ=function(){this.Nd?this.TQ():this.dy(n)};a.prototype.kL=function(){this.yo()};a.prototype.ZP=function(){this.z6()};a.prototype.ks=function(){this.yo()};a.prototype.dispose=function(){this.yo();g.prototype.dispose.call(this)};a.prototype.Rf=function(){this.dy(n)};a.prototype.yr=function(){this.dy(y)};a.prototype.TQ=function(){if(!this.ge){this.ge=new d;this.ge.ZZ([this.Nd]);this.ge.bind(c.T,this.Rf,this,n);this.ge.bind(c.ne,this.yr,
this,n);f.In(this.ge,this.UB)}};a.prototype.yo=function(){if(this.ge){this.ge.unbind(c.T,this.Rf,this,n);this.ge.unbind(c.ne,this.yr,this,n);f.Ai(this.ge,this.UB);this.ge=r}};return a});
define("jN","require,fg,ll,eO,dv,M".split(","),function(a){function b(a,b){return a.reduce(function(a,c){return a?n:!!(b.layers.mask&c.layers.mask)},y)}function c(a){a=e(a).loaded;return a===m?y:a}function d(a){a=e(a).NX;return a===m?n:a}function f(a){a=e(a).blending;return a===m?y:a}function e(a){return a.userData.Mwa||(a.userData.Mwa={})}var g=a("fg"),k=a("ll"),i=a("eO"),p=a("dv"),j=a("M"),a=g.extend(i,function(){i.call(this);this.m=m;this.NT=y});a.prototype.update=function(a){var b=a.Db&&this.m&&
!this.m.Db;this.m=a.clone();this.NT||(b?this.ema():this.Ssa())};a.prototype.Ssa=function(){var a=y,e=j.nY(this.m.ye),i=j.Eh(this.m.ye);p.mM(i,p.yw,m).forEach(function(c){var i=b(e,c)&&p.uM(c)>0&&d(c);if(c.visible!=i){c.visible=i;a=n}});var i=p.Dba(i,p.yw,m),i=p.nca(i,p.Ts),g;for(g in i){var s=i[g],u=e.map(R(y));s.sort(function(a,b){return p.kca(b)-p.kca(a)});var v=s.some(f);s.forEach(function(i){var g=b(e,i)&&p.uM(i)>0&&d(i)&&(!v||c(i));if(g){for(var g=n,f=v||c(i)&&p.uM(i)>0.999,j=0;j<e.length;j++)if(i.layers.mask&
e[j].layers.mask&&!u[j]){g=y;f&&(u[j]=n)}g=!g}if(i.visible!=g){i.visible=g;a=n}})}a&&this.trigger(k.aa)};a.prototype.ema=function(){this.NT=n;j.Eh(this.m.ye).forEach(function(a){a.visible=y});setTimeout(function(){this.NT=y;this.update(this.m)}.bind(this),300);this.trigger(k.aa)};a.OZ=function(a,b){e(a).loaded=b};a.setActive=function(a,b){e(a).NX=b};a.gea=function(a,b){p.Xg(a,function(a){e(a).blending=b})};return a});
define("hZ","require,fg,ll,ge,eO,jN,bU,dv,M,r".split(","),function(a){function b(a){return(a=a.userData.Ok)&&!(!a.gZ&&!a.eZ)}function c(a){return a.userData.Ok||(a.userData.Ok={})}function d(a){return c(a).vw}function f(a){return c(a).enabled||y}function e(a){return!d(a).cZ()}var g=a("fg"),k=a("ll");a("ge");var i=a("eO"),p=a("jN"),j=a("bU"),l=a("dv"),q=a("M"),o=a("r"),t=g.extend(i,function(){i.call(this);this.Xx=[];this.ur=[];this.Tw=[];this.m=m;this.hn=r;this.ls=this.ls.bind(this)});t.prototype.update=
function(a){this.m=a.clone();this.Bsa()?this.ls():this.vaa()};t.prototype.vaa=function(){if(!this.hn)this.hn=setTimeout(this.ls,1E3)};var s=Math.PI/180;t.prototype.Bsa=function(){var a=this.m.zi>0?1E3:this.m.LE/Math.tan(Math.min(this.m.Bf*0.5,89.99)*s);o.Xa()||(a=a*1.5);var d=q.nY(this.m.ye),e=q.Eh(this.m.ye).filter(b),i=e.filter(f),g={},g=l.Dba(i,l.yw,m),g=l.nca(g,l.yw);g.none=l.mM(i,l.yw,m);var i=[],j;for(j in g)for(var k=g[j],u=0,J=k.length;u<J;u++){var B=k[u];(c(B).gZ||t.xG)==t.Xk&&i.push(B)}for(var O=
0,N=d.length;O<N;O++){var I=d[O];for(j in g){for(var k=g[j],L=r,G=Number.NEGATIVE_INFINITY,D=r,H=Number.POSITIVE_INFINITY,u=0,J=k.length;u<J;u++){B=k[u];if(B.layers.mask&I.layers.mask&&(c(B).gZ||t.xG)==t.xG){var M=c(B).Zwa*90;if(M<a&&M>G){L=B;G=M}else if(M>=a&&M<H){D=B;H=M}}}if(this.m.Db&&D&&L)G>0.75*a?i.push(L):i.push(D);else{D&&i.indexOf(D)<0&&i.push(D);L&&i.indexOf(L)<0&&i.push(L)}}}a=[];for(d=0;d<i.length;d++){j=i[d];a.indexOf(j)<0&&a.push(j)}i=a;a:{a=this.Tw;d=i;for(j=0;j<a.length;j++)if(d.indexOf(a[j])<
0){a=y;break a}for(j=0;j<d.length;j++)if(a.indexOf(d[j])<0){a=y;break a}a=n}a=!a;this.Tw=i;u=0;for(J=e.length;u<J;u++){B=e[u];f(B)&&p.setActive(B,this.Tw.indexOf(B)>=0)}return a};t.prototype.ls=function(){this.hn=r;for(var a=[],b=[],d=[],i=(new Date).getTime()-u,g=q.nY(this.m.ye),f=q.Eh(this.m.ye),j=0,p=f.length;j<p;j++){var o=f[j],s=o.userData.Ok;if(s){var O=l.Cs(o);if(s.enabled){var N=[];if(this.Tw.indexOf(o)>=0){if(this.m.zi>0||(c(o).eZ||t.KO)==t.Rj)N=O;else for(var I=0,L=g.length;I<L;I++){var G=
l.qva(o,g[I]);if(I==0)N=G;else for(var D=0,H=G.length;D<H;D++){var M=G[D];N.indexOf(M)<0&&N.push(M)}}D=0;for(H=N.length;D<H;D++){M=N[D];(M.userData.Ok||(M.userData.Ok={})).eda=i}}this.SP(o,N);D=0;for(H=s.km.length;D<H;D++)a.push(s.km[D]);D=0;for(H=s.Up.length;D<H;D++)b.push(s.Up[D])}else{s.Up||this.SP(o,[]);D=0;for(H=s.Up.length;D<H;D++){M=s.Up[D];s.km.indexOf(M)<0&&b.push(M)}}D=0;for(H=O.length;D<H;D++)d.push(O[D])}}j=[];D=0;for(H=this.ur.length;D<H;D++){M=this.ur[D];d.indexOf(M)<0?M.userData.Ok.vw.unload():
e(M)?this.MV(M,y):j.push(M)}this.ur=j;D=Math.max(t.jda(),Math.round(b.length*1.25))-a.length;if(this.ur.length>D){this.ur.sort(function(a,b){return c(a).eda-c(b).eda});j=this.ur.splice(0,this.ur.length-D);D=0;for(H=j.length;D<H;D++){M=j[D];M.userData.Ok.vw.unload();this.MV(M,y)}}b=[];j=0;for(p=this.Tw.length;j<p;j++){o=this.Tw[j];s=o.userData.Ok;s.km.length>0&&b.push(o)}d=Number.POSITIVE_INFINITY;j=0;for(p=b.length;j<p;j++){o=b[j];s=o.userData.Ok;D=s.Sd;D=D!==m?D:Number.POSITIVE_INFINITY;D<d&&(d=
D)}a=[];j=0;for(p=b.length;j<p;j++){o=b[j];s=o.userData.Ok;D=s.Sd;D=D!==m?D:Number.POSITIVE_INFINITY;if(D==d){G=s.km;D=0;for(H=G.length;D<H;D++){M=G[D];a.push(M)}}}D=0;for(H=this.Xx.length;D<H;D++){M=this.Xx[D];if(a.indexOf(M)<0){M=M.userData.Ok.vw;M.unbind(k.T,this.tW,this,n);M.unbind(k.ne,this.uW,this,n);M.bua()}}j=this.Xx;this.Xx=a;p=this.Xx.slice();D=0;for(H=p.length;D<H;D++){M=p[D];if(j.indexOf(M)<0){M=M.userData.Ok.vw;M.bind(k.T,this.tW,this,n);M.bind(k.ne,this.uW,this,n);M.load()}}};t.prototype.tW=
function(a){this.L$(a.source);this.trigger(k.T)};t.prototype.uW=function(a){this.L$(a.source)};t.prototype.L$=function(a){a.unbind(k.T,this.tW,this,n);a.unbind(k.ne,this.uW,this,n);var b=a.material(),d=this.Xx,e=d.indexOf(b);e>=0&&d.splice(e,1);this.ur.push(b);this.MV(b,n);a=a.Jk();c(a).km.indexOf(b)>=0&&this.SP(a,c(a).Up);this.vaa()};t.prototype.SP=function(a,b){var d=c(a).Up,d=d?d.length:m,i=c(a).km,i=i?i.length:m;c(a).Up=b;c(a).km=b.filter(e);p.OZ(a,c(a).km.length==0&&(c(a).eZ||t.KO)==t.Rj);var g=
c(a).Up,g=g?g.length:m,f=c(a).km,f=f?f.length:m;if(i!==f||d!==g)a.dispatchEvent({type:k.vc,Ih:g?100-100*f/g:100});i!==f&&f===0&&a.dispatchEvent({type:k.T})};t.prototype.MV=function(a,c){if(c!=a.visible){var e=j.Xba(a),i=l.getAttribute(e,l.Ts),g=l.getAttribute(e,l.KN);if(i===m||g===m)a.visible=c;else{for(var f=q.Eh(this.m.ye).filter(b),i=l.mM(f,l.Ts,i),g=l.mM(i,l.KN,g),k=l.Cs(e).indexOf(a),e=g.map(function(a){return l.Cs(a)[k]}),g=c,i=0;i<e.length&&g;i++)g=g&&d(e[i]).cZ();for(i=0;i<e.length;i++)e[i].visible=
g}}};t.jda=function(){var a;if(o.Xa()){o.Zd();a=384}else a=1536;a=128;t.jda=function(){return a};return a};t.nd=function(a,b){l.Xg(a,function(a){c(a).enabled=b})};t.enabled=f;t.sN=function(a,b){l.Xg(a,function(a){c(a).Zwa=b})};t.Rj="all";t.KO="in view";t.Kn=function(a,b){l.Xg(a,function(a){c(a).eZ=b})};t.Xk="always";t.xG="on demand";t.Ln=function(a,b){l.Xg(a,function(a){c(a).gZ=b})};t.Qz=function(a,b){l.Xg(a,function(a){c(a).Sd=b})};t.Ms=function(a,b){l.Xg(a,function(a){c(a).lBa=b;l.Cs(a).forEach(function(a){d(a).tya(b)})})};
t.iBa=function(a){return 100-100*c(a).km.length/c(a).Up.length};t.hBa=function(a){return c(a).km.length==0};t.Rz=function(a,b){(c(a).vw=b)&&(a.visible=b.cZ())};t.vw=d;var u=(new Date).getTime();return t});
define("eg","require,fg,gU,dX,bU,dv,M,hZ,jN".split(","),function(a){var b=a("fg"),c=a("gU"),d=a("dX"),f=a("bU"),e=a("dv"),g=a("M"),k=a("hZ"),i=a("jN"),a=b.extend(c,function(){c.call(this);this.set("tag","ComposedWebGLObject");this.set("webglScene",r);this.set("meshGroup",r);this.set("camera",r);this.set("textureSource",r);this.set("materialConfig",this.JT=new f.Sn);this.qo&&this.qo();this.Ut&&this.Ut();this.Oq&&this.Oq();this.Wj&&this.Wj()});a.prototype.Sa=function(){c.prototype.Sa.call(this);this.qk&&
this.qk();this.$B&&this.$B();this.ny&&this.ny()};a.prototype.Za=function(){this.Zx&&this.Zx();this.oy&&this.oy();this.sk&&this.sk();e.dispose(this.get("meshGroup"));e.vN(this.get("meshGroup"),r);this.set("meshGroup",r);c.prototype.Za.call(this)};a.prototype.L=function(a){this.Zf&&this.Zf(a);c.prototype.L.call(this,a);this.set("camera",g.As(a.ye));this.set("webglScene",a.ye);if(!this.get("meshGroup")){this.set("meshGroup",e.qba(this.Si()));this.get("meshGroup").userData.Vwa=this}this.p("webglScene",
"meshGroup")&&e.vN(this.get("meshGroup"),this.get("webglScene"));this.oi();this.Uy&&this.Uy(a);this.lta();this.xp&&this.xp(a);this.Yl&&this.Yl(a);this.uv();this.p("loadingActive","meshGroup")&&k.nd(this.get("meshGroup"),this.get("loadingActive"));this.p("blendingActive","meshGroup")&&i.gea(this.get("meshGroup"),this.get("blendingActive"))};a.prototype.oi=function(){this.p("composedAlpha","meshGroup")&&this.yq()};a.prototype.yq=function(){e.xd(this.get("meshGroup"),this.get("composedAlpha"))};a.prototype.lta=
function(){if(this.p("textureSource")||this.p("materialConfig")&&!this.JT.isEqual(this.get("materialConfig"))){var a=this.lI();if(a){e.wya(a,this.px());this.yq()}}};a.prototype.uv=function(){if(this.p("index","meshGroup")){var a=this.get("meshGroup");a&&a.children.forEach(function(a,b,c){e.yN(a,this.get("index")+b/c.length)}.bind(this))}};a.prototype.px=function(){var a=this.get("textureSource")||new d;this.JT=this.get("materialConfig");var b=f.ws(a.texture(),this.JT);k.Rz(b,a);return[b]};a.prototype.w3=
function(){var a=new d,b=f.ws(a.texture());k.Rz(b,a);return[b]};a.prototype.Do=function(a){return e.mva(this.get("meshGroup"),a)};return a});
define("hK",["require","it","jY","jn"],function(a){var b=a("it"),c=a("jY"),d=a("jn"),f=180/Math.PI,e=Math.PI/180;return{sY:function(a,b,e,f,j,l,q){b||(b=a*f/e);j||(j=d.Vn);var o={};switch(j){case d.Vn:o.width=a;o.height=b;break;case d.NONE:o.width=e;o.height=f;break;case d.Se:o.width=Math.min(b*e/f,a);o.height=Math.min(a*f/e,b);break;case d.tm:o.width=Math.max(b*e/f,a);o.height=Math.max(a*f/e,b);break;case d.Wk:o.width=a;o.height=a*f/e;break;case d.ih:o.width=b*e/f,o.height=b}o.width>a?(o.dq=a/o.width,
o.XF=l==c.qa?0:l==c.Ma?1-o.dq:0.5*(1-o.dq),o.width=a):(o.XF=0,o.dq=1);o.height>b?(o.fq=b/o.height,o.$F=q==c.mb?1-o.fq:q==c.lb?0:0.5*(1-o.fq),o.height=b):(o.$F=0,o.fq=1);return o},AY:function(a,k,i,p,j,l,q,o){k||(k=b.Hk(a,i,p));j||(j=d.Vn);l||(l=4096/360);var t={};switch(j){case d.Vn:t.bd=a;t.pm=k;break;case d.NONE:t.bd=2*Math.atan2(0.5*i,45*l)*f;t.pm=b.Hk(t.bd,i,p);break;case d.Se:t.bd=Math.min(b.On(k,i,p),a);t.pm=Math.min(b.Hk(a,i,p),k);break;case d.tm:t.bd=Math.max(b.On(k,i,p),a);t.pm=Math.max(b.Hk(a,
i,p),k);break;case d.Wk:t.bd=a;t.pm=b.Hk(a,i,p);break;case d.ih:t.bd=b.On(k,i,p),t.pm=k}t.bd>a?(t.dq=Math.tan(0.5*a*e)*i/Math.tan(0.5*t.bd*e)/i,t.XF=q==c.qa?0:q==c.Ma?1-t.dq:0.5*(1-t.dq),t.bd=a):(t.XF=0,t.dq=1);t.pm>k?(t.fq=Math.tan(0.5*k*e)*p/Math.tan(0.5*t.pm*e)/p,t.$F=o==c.mb?1-t.fq:o==c.lb?0:0.5*(1-t.fq),t.pm=k):(t.$F=0,t.fq=1);return t}}});
define("kO","require,ge,gW,dv,hK,hZ,it,ku,jY".split(","),function(a){var b=a("ge"),c=a("gW"),d=a("dv"),f=a("hK"),e=a("hZ"),g=a("it"),k=a("ku"),i=a("jY"),p=new THREE.Matrix4,j=Math.PI/180;return{qo:function(){this.set("distance",m);this.set("rotationX",0);this.set("rotationY",0);this.set("rotationZ",0);this.set("yaw",0);this.set("pitch",0);this.set("roll",0);this.set("scale",1);this.set("contentWidth",100);this.set("contentHeight",100);this.set("hfov",m);this.set("vfov",r);this.set("scaleMode",r);
this.set("horizontalAlign",r);this.set("verticalAlign",r);this.set("attachToCamera",y);this.Xi=this.Nq();this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.rk=new THREE.Matrix4;this.Ui=new THREE.Matrix4;this.sg=new THREE.Matrix4;this.UP=new THREE.Matrix4;this.n2=new THREE.Quaternion;this.p3=new THREE.Matrix4;this.IA=new THREE.Matrix4;this.TA=new THREE.Matrix4;this.Dq=new THREE.Matrix4;this.nf=new THREE.Matrix4},xp:function(a){this.Vl(a);this.jX()},jX:function(){if(this.p("hfov","vfov","contentWidth",
"contentHeight","panoramaPixelsPerDegree","scaleMode","horizontalAlign","verticalAlign")){var a=f.AY(this.get("hfov"),this.get("vfov"),this.get("contentWidth"),this.get("contentHeight"),this.get("scaleMode"),this.get("panoramaPixelsPerDegree"),this.get("horizontalAlign"),this.get("verticalAlign"));c.xea(this.Xi[1],a.XF,a.$F,a.dq,a.fq)}},lI:function(){var a=this.get("meshGroup");return a?d.Eh(a)[1]:r},Si:function(){return[0,1].map(function(a){var c=a==0?this.w3():this.px(),a=d.create(this.Xi[a],c);
e.Kn(a,e.Rj);e.Ln(a,e.Xk);e.Ms(a,b.Lw);e.Qz(a,1);return a}.bind(this))},Nq:function(){return[c.hz(),c.hz()]},Vl:function(a){var b=y;if(this.p("composedTranslationX","composedTranslationY","composedTranslationZ")){this.bf.makeTranslation(-this.get("composedTranslationX")*0.5*c.Kd,this.get("composedTranslationY")*0.5*c.Kd,this.get("composedTranslationZ")*0.5*c.Kd);b=n}if(this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")){this.gc.makeRotationY(-a.ma*j);this.gc.multiply(p.makeRotationX(-this.get("composedDeltaPitch")*
j));this.gc.multiply(p.makeRotationY(this.get("composedDeltaYaw")*j));this.gc.multiply(p.makeRotationY(a.ma*j));b=n}if(this.p("yaw","pitch")){this.rk.makeRotationY(-this.get("yaw")*j);this.rk.multiply(p.makeRotationX(this.get("pitch")*j));b=n}if(this.p("distance","flipHorizontally","scale","hfov","vfov","contentWidth","contentHeight","scaleMode","horizontalAlign","verticalAlign","composedTranslationX","composedTranslationY","composedTranslationZ")){var e=this.Q.get("composedTranslationX")==0&&this.Q.get("composedTranslationY")==
0&&this.Q.get("composedTranslationZ")==0&&this.get("distance")!==m?c.Qv(this.get("distance")):c.Hp();this.Ui.makeTranslation(0,0,-e);var t=this.get("contentWidth"),s=this.get("contentHeight"),u=this.get("hfov"),v=this.get("vfov")||g.Hk(u,t,s),w=(this.get("flipHorizontally")?-1:1)*this.get("scale"),x=this.get("scale"),z=this.get("scaleMode"),F=this.get("panoramaPixelsPerDegree"),b=this.get("horizontalAlign")||i.Mc,A=this.get("verticalAlign")||i.tc,t=f.AY(u,v,t,s,z,F,b,A),u=w*c.BY(e,u),v=x*c.CY(e,v);
this.IA.makeScale(u,v,1);w=w*c.BY(e,t.bd);e=x*c.CY(e,t.pm);this.TA.makeScale(w,e,1);this.p3.makeTranslation(b==i.qa?-(u-w)*0.5:b==i.Ma?(u-w)*0.5:0,A==i.mb?(v-e)*0.5:A==i.lb?-(v-e)*0.5:0,0);b=n}if(this.p("rotationX","rotationY","rotationZ","roll")){this.sg.makeRotationZ(this.get("roll")*j);this.sg.multiply(p.makeRotationY(this.get("rotationY")*j));this.sg.multiply(p.makeRotationX(this.get("rotationX")*j));this.sg.multiply(p.makeRotationZ(this.get("rotationZ")*j));b=n}this.set("cameraYaw",a.ma);this.set("cameraPitch",
a.pitch);this.set("cameraRoll",a.md);if(this.get("attachToCamera")&&this.p("cameraYaw","cameraPitch","cameraRoll")){this.n2.copy(k.Hba(a.ma,a.pitch,a.md));this.UP.makeRotationFromQuaternion(this.n2);b=n}else if(this.p("attachToCamera")){this.UP.identity();b=n}if(b||this.p("meshGroup")){this.nf.copy(this.bf);this.nf.multiply(this.gc);this.nf.multiply(this.UP);this.nf.multiply(this.rk);this.nf.multiply(this.Ui);this.nf.multiply(this.sg);this.Dq.copy(this.nf);this.Dq.multiply(this.IA);this.nf.multiply(this.p3);
this.nf.multiply(this.TA);a=d.Eh(this.get("meshGroup"));d.bm(a[0],this.Dq);d.bm(a[1],this.nf)}}}});define("hk",["require","fg","eg","kO"],function(a){var b=a("fg"),c=a("eg"),a=a("kO");return b.extend(c,a,function(){c.call(this);this.set("tag","Plane")})});
define("cW","require,fg,ll,eO,kz,V".split(","),function(a){function b(){if(!p){p=n;k.La(c,r)}}function c(){for(p=y;i.length;){var a=i.shift();a.add();if(a.Kwa())break}i.length&&b()}var d=a("fg"),f=a("ll"),e=a("eO"),g=a("kz"),k=a("V"),i=[],p=y,j=d.extend(e,function(a,b){e.call(this);this.texture=a;this.source=b});j.prototype.Kwa=function(){return!this.source.P1&&g.Xta(this.source)};j.prototype.vba=function(){if(!this.source.P1){g.vba(this.source);this.source.P1=n}};j.prototype.add=function(){g.DN(this.texture,
this.source);this.trigger(f.T)};j.prototype.remove=function(){var a=i.indexOf(this);a>=0&&i.splice(a,1);g.DN(this.texture,r)};return{add:function(a,c){var d=new j(a,c);i.push(d);b();return d}}});
define("jS","require,fg,ll,bS,iG,cW,jZ".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bS"),f=a("iG"),e=a("cW"),g=a("jZ"),a=b.extend(g,function(a){g.call(this);this.Xd=g.kga;this.Nd=a;this.te=this.uy=this.ge=r});a.prototype.ve=Q("te");a.prototype.aQ=function(){this.TQ()};a.prototype.kL=function(){this.yo()};a.prototype.ZP=function(){this.yja()};a.prototype.QD=function(){this.yo();this.sR()};a.prototype.ks=function(){this.yo();this.sR()};a.prototype.dispose=function(){this.yo();this.sR();g.prototype.dispose.call(this)};
a.prototype.Rf=function(){this.te=f.ve(this.Nd);this.dy(n)};a.prototype.yr=function(){this.dy(y)};a.prototype.A6=function(){this.z6()};a.prototype.TQ=function(){if(!this.ge){this.ge=new d;this.ge.ZZ([this.Nd]);this.ge.bind(c.T,this.Rf,this,n);this.ge.bind(c.ne,this.yr,this,n);f.In(this.ge,this.UB)}};a.prototype.yo=function(){if(this.ge){this.ge.unbind(c.T,this.Rf,this,n);this.ge.unbind(c.ne,this.yr,this,n);f.Ai(this.ge,this.UB);this.ge=r}};a.prototype.yja=function(){this.uy=e.add(this.ub,this.te);
this.uy.bind(c.T,this.A6,this,n)};a.prototype.sR=function(){if(this.uy){this.uy.unbind(c.T,this.A6,this,n);this.uy.remove();this.uy=r}};return a});
define("gf",["require"],function(){function a(){this.jr=b++;this.YB="_map_"+this.jr+"_key";this.SI={};this.Xe=[];this.length=0}var b=0;a.prototype.set=a.prototype.add=function(a,b){var f;0>this.Xe.indexOf(a)&&this.Xe.push(a);if("object"===typeof a&&a!==r){if(f=a[this.YB],!f){f=this.YB;for(var e=[],g=0;8>g;g++)e.push(Math.floor(16*Math.random()).toString(16));f=a[f]=e.join("")}}else f=a;this.SI[f]=b;this.length=this.Xe.length};a.prototype.get=function(a){return this.SI["object"===typeof a&&a!==r?a[this.YB]:
a]};a.prototype.uca=function(a){return 0<=this.Xe.indexOf(a)};a.prototype.remove=function(a){var b=this.Xe.indexOf(a);0>b||(this.Xe.splice(b,1),"object"===typeof a&&a!==r?(b=a[this.YB],delete a[this.YB]):b=a,delete this.SI[b],this.length=this.Xe.length)};a.prototype.forEach=function(a){this.Xe.slice().forEach(function(b){a(b,this.get(b))}.bind(this))};a.prototype.dispose=function(){for(;this.Xe.length;)this.remove(this.Xe.pop());this.Xe=this.SI=r};return a});
define("hS",["require","fg","eO","gf"],function(a){function b(){this.Jv=[]}var c=a("fg"),d=a("eO"),f=a("gf"),a=c.extend(d,function(a){d.call(this);this.ae=a;this.Yc=[];this.Ho=new f;this.BE=[];this.FR=[];this.cy=this.cy.bind(this)});a.prototype.yd=function(a){this.Yc.forEach(function(a){a.removeEventListener?a.removeEventListener(this.ae,this.cy):a.unbind?a.unbind(this.ae,this.cy,this,n):h("invalid instance type")}.bind(this));this.Yc=a.slice();this.Yc.forEach(function(a){a.addEventListener?a.addEventListener(this.ae,
this.cy):a.bind?a.bind(this.ae,this.cy,this,n):h("invalid instance type");this.Ho.uca(a)||this.Ho.set(a,new b)}.bind(this));this.QW()};a.prototype.dispose=function(){this.yd([]);this.Yc=r;this.Ho.dispose();this.FR=this.BE=this.Ho=r};a.prototype.Ci=function(a){this.BE.push(a);this.QW();return this};a.prototype.Kk=function(a){this.FR.push(a);return this};a.prototype.vn=function(a){this.Yc.forEach(function(b){a(b,this.Ho.get(b).Jv)}.bind(this))};a.prototype.vi=function(a){a=this.Ho.get(a).Jv;return 0==
a.length?r:a[a.length-1]};a.prototype.cy=function(a){var b=a.target||a.source;if(b=this.Ho&&this.Ho.get(b))b.Jv.push(a),this.FR.forEach(function(b){b(a,this)}.bind(this)),this.QW()};a.prototype.QW=function(){if(0!=this.Yc.length){for(var a=0;a<this.Yc.length;a++)if(0==this.Ho.get(this.Yc[a]).Jv.length)return;this.BE.length&&(a=this.BE.slice(),this.BE=[],a.forEach(function(a){a(this)}.bind(this)))}};return a});
define("bH",["require","dW"],function(a){var b=a("dW"),c={get:function(a){return a.Hga||(a.Hga=this.qka(a))},qka:function(a){if(b.qb("CubicPanoramaFrame",a))return a.get("stereoCube")?c.st:a.get("cube")?c.mq:c.Fi;if(b.qb("SphericPanoramaFrame",a)){if(a.get("stereoSphere")){var f=a.get("hfov"),e=a.get("vfov"),g=a.get("stereoSphere").get("levels"),a=Math.max.apply(Math,g.map(function(a){return a.get("width")})),g=Math.max.apply(Math,g.map(function(a){return a.get("height")}));return 2==Math.round(g/
e/(a/f))?c.wm:c.Xn}return c.Wn}},st:"stereoCube_12_1",mq:"monoCube_6_1",Fi:"monoCube_1_1",Wn:"monoSphere_1_1",wm:"stereoSphere_1_2",Xn:"stereoSphere_2_1"};return c});
define("fp",["require"],function(){function a(a,d,f){this.Nd=a;this.N$=d;this.Zt=f||b}var b=function(){var a=document.createElement("canvas");a.width=a.height=256;a.getContext("2d").clearRect(0,0,a.width,a.height);return a}();a.prototype.isEmpty=function(){return this.Zt==b};a.prototype.isEqual=function(a){return this.Nd==a.Nd&&this.N$==a.N$&&this.Zt==a.Zt};return a});
define("cx",["require","iX","r","gl"],function(a){function b(a){return f.Jea(a.get("width"),a.get("height"),a.get("framerate"))}function c(a,b){if(!b)return n;var c=a.get("url"),e=a.get("type")||"";switch(b){case k:return g.is(c,g.g1)||d(e,"webm");case i:return g.is(c,g.yfa)||(g.is(c,g.NO)||g.is(c,g.f0)||!c)&&(d(e,"hev1")||d(e,"h265")||d(e,"heic"))?n:y;case p:return g.is(c,g.NO)||d(e,"mp4");case j:return g.is(c,g.Pj)||d(e,"x-mpegurl");case l:return g.is(c,g.x0)||d(e,"ogg");case q:return g.is(c,g.f0)||
d(e,"quicktime");default:return y}}function d(a,b){return 0<=(a||"").toLowerCase().indexOf(b)}var f=a("iX"),e=a("r"),g=a("gl"),k="webm",i="h265",p="mp4",j="hls",l="ogv",q="mov",o={Iva:function(a){return o.select(a.get("levels"))},Gva:function(a){return o.select(a.get("levels"))},select:function(a){a||(a=[]);var a=a.slice(),d=[];f.Ova&&d.push({type:j,Nn:y});f.Xva&&d.push({type:i,Nn:n});f.LY&&d.push({type:k,Nn:n});f.OM&&d.push({type:p,Nn:n});f.Yva&&d.push({type:q,Nn:n});f.KY&&d.push({type:l,Nn:n});
d.push({type:p,Nn:n});d.push({type:k,Nn:n});d.push({type:p,Nn:y});d.push({type:k,Nn:y});for(var g=1E3*(e.Xa()?800:5E3),o=0;o<d.length;o++){var w=a;d[o].Nn&&(w=w.filter(b));w=w.filter(function(a){if(c(a,d[o].type))return n});d[o].type!=j&&w.sort(function(a,b){return Math.abs(g-a.get("bitrate"))-Math.abs(g-b.get("bitrate"))});if(w.length)return w[0]}return r}};return o});
define("kT","require,fg,bZ,eO,ll,fu,ge,dW,r,jt,kQ,cQ,fp,ka,ga,bD,cx".split(","),function(a){function b(a){p.browser()==p.Ei&&(a=j.Dv(a,"playbacksession="+(new Date).getTime()));return a}var c=a("fg"),d=a("bZ"),f=a("eO"),e=a("ll"),g=a("fu"),k=a("ge"),i=a("dW"),p=a("r"),j=a("jt"),l=a("kQ"),q=a("cQ"),o=a("fp"),t=a("ka"),s=a("ga"),u=a("bD"),v=a("cx"),w=c.extend(f,function(a,b){f.call(this);this.ra=a;this.j=b;this.ab=w.Zg(this.j);this.V=r;this.DD();this.j.bind(e.D("subtitlesURL"),this.Al,this,n);this.j.bind(e.D("gain"),
this.qC,this,n);this.ab.bind(e.D("subtitlesURL"),this.Al,this,n);this.ab.bind(e.D("url"),this.Al,this,n);this.m=g.I;this.Te=this.pb=0;this.rd=y;this.$l=1;this.WB=y;this.v=this.Ka=r;this.hx=y;this.rH=m;this.b3=y;this.zm=[]});w.prototype.Ra=Q("ra");w.prototype.jc=function(a){if(this.m!=a&&!(a==g.uc&&this.m!=g.O)){this.b3&&a==g.O&&this.m==g.I&&this.rQ();this.m=a;if(this.m==g.O){this.Ka&&this.Ka.play(this.ra,this.V,this.Te);u.hN(this)}else{u.Eca()?this.Ka&&this.Ka.stop():u.Gz(this);this.m==g.I&&this.QV()}this.JW()}};
w.prototype.Pe=Q("m");w.prototype.Aj=Q("pb");w.prototype.Zp=function(a){this.Te=a;if(this.Ka){this.Ka.Wv()&&this.V3();this.Ka.play(this.ra,this.V,this.Te)}};w.prototype.zj=Q("Te");w.prototype.bq=function(a){this.$l=a;this.Ka&&this.Ka.bq(a)};w.prototype.Jd=function(a){this.rd=a;this.Ka&&this.Ka.Jd(a)};w.prototype.ow=function(a){this.WB=a;this.Ka&&this.Ka.ow(a)};w.prototype.Nxa=function(){this.b3=n};w.prototype.iz=function(a,b,c){this.Ka&&this.Ka.Wv()?this.Ka.iz(a,b,c):this.hx?a.drawImage(this.v,0,
0,b,c):a.fillRect(0,0,b,c)};w.prototype.vM=function(){if(this.Ka&&this.Ka.Wv()){var a=this.Ka.zj(),b=this.Ka.cb;if(this.hx&&Math.abs(a-this.rH)<0.15)return new o(this.V.src,this.rH,this.v);this.rQ();return new o(this.V.src,a,b)}return this.hx?new o(this.V.src,this.Te,this.v):new o(this.V.src,this.Te,r)};w.prototype.kN=function(){return!this.rd&&this.j.get("hasAudio")};w.prototype.Qd=function(){return s.Ki};w.prototype.EY=function(){return k.Ki};w.prototype.gY=function(a){this.Ka=a;setTimeout(function(){this.Ka&&
this.Ka.bind(l.Mj,this.pC,this,n)}.bind(this),0);this.DD();this.Ka.bind(l.Ld,this.hd,this,n);this.Ka.bind(l.cg,this.ej,this,n);this.Ka.bind(e.Ef,this.Qf,this,n);this.Ka.Jd(this.rd);this.Ka.bq(this.$l);this.Ka.ow(this.WB);this.Ka.play(this.ra,this.V,this.Te)};w.prototype.bZ=function(){this.Ka.Wv()&&this.V3();this.Te=this.Ka.zj();this.Ka.unbind(l.Mj,this.pC,this,n);this.Ka.unbind(l.Ld,this.hd,this,n);this.Ka.unbind(l.cg,this.ej,this,n);this.Ka.unbind(e.Ef,this.Qf,this,n);if(this.m==g.I){this.Ka.stop();
this.Ka.Zp(0)}this.Ka=r};w.prototype.clear=function(){u.Gz(this);this.rQ();if(this.j){this.j.unbind(e.D("subtitlesURL"),this.Al,this,n);this.j.unbind(e.D("gain"),this.qC,this,n);this.j=r}if(this.ab){this.ab.unbind(e.D("subtitlesURL"),this.Al,this,n);this.ab.unbind(e.D("url"),this.Al,this,n);this.ab=r}};w.prototype.Al=function(){this.Xu&&clearTimeout(this.Xu);this.Xu=setTimeout(function(){this.Xu=r;if(this.Ka){this.V.Lj=this.j.get("subtitlesURL")||this.ab.get("subtitlesURL");this.V.src=b(this.ab.get("url"));
this.Ka.play(this.ra,this.V,this.Te)}}.bind(this),10)};w.prototype.qC=function(){if(this.Ka){this.V.gain=this.j.get("gain");this.Ka.FF(this.V.gain)}};w.prototype.DD=function(){this.V=new t;this.V.src=b(this.ab.get("url"));this.V.Lj=this.j.get("subtitlesURL")||this.ab.get("subtitlesURL");this.V.Lp=this.j.get("hasAudio");this.V.gain=this.j.get("gain")};w.prototype.V3=function(){if(!this.v)this.v=document.createElement("canvas");this.v.width=this.Ka.ad();this.v.height=this.Ka.Od();this.rH=this.Ka.zj();
var a=this.v.getContext("2d");a.clearRect(0,0,this.v.width,this.v.height);this.hx=this.Ka.iz(a,this.v.width,this.v.height)};w.prototype.rQ=function(){if(this.hx){this.rH=m;this.hx=y;if(p.browser()!=p.Ei){this.v.width=0;this.v.height=0;this.v=r}}};w.prototype.ej=function(){this.pb=this.Ka.Aj();this.GW()};w.prototype.hd=function(){this.pb!=this.Ka.Aj()&&this.ej();this.Te=this.Ka.zj();this.eE()};w.prototype.Qf=function(){this.zm=this.Ka.XE().map(function(a){for(var b=r,c=0;c<this.zm.length&&!b;c++)this.zm[c].cue==
a&&(b=this.zm[c]);b||(b=new q(a));return b}.bind(this));this.trigger(new d(e.Ef))};w.prototype.pC=function(){this.jc(g.I);this.HW()};w.prototype.QV=function(){this.Te=0;this.eE()};w.prototype.eE=function(){this.trigger(new d(w.Ld))};w.prototype.GW=function(){this.trigger(new d(w.cg))};w.prototype.HW=function(){this.trigger(new d(e.Ba))};w.prototype.JW=function(){this.trigger(new d(e.xc))};w.Ld="time update";w.cg="duration update";w.Zg=function(a){if(i.qb("Video360Resource",a))return v.Gva(a);if(i.qb("VideoResource",
a))return v.Iva(a);h("invalid video resource object: "+a)};return w});
define("km","require,dW,jj,cT,jL,bH,hK,iX,r,gl,jn,id,kT".split(","),function(a){function b(a,b,c){return a.split(b).join(c).split(encodeURI(b)).join(c)}function c(){var a=z.Np()&&URL.Yg("recent_ipad_use_max_res",y);c=function(){return a};return a}function d(a){if(a.length==0)return 1;a.sort(function(a,b){return b.get("width")-a.get("width")});return a[0].get("width")/a[0].get("height")}function f(a,b){var d=1E4;c()||(z.we()?d=2048:z.Np()?d=1280:z.Xa()&&(d=1024));switch(a){case w.mq:return[6*d,d];
case w.Fi:return[d,d];case w.st:return[12*d,d]}switch(a){case w.wm:b=b*2;break;case w.Xn:b=b*0.5}return b>2?[d*4,d*4/b]:[d*2*b,d*2]}function e(a){if(c())return[m,m];switch(a){case w.mq:if(z.we()||z.Xa())return[18432,1536];break;case w.wm:if(z.we())return[5352,5352];if(z.Xa())return[6086,6086];break;case w.Wn:if(z.we())return[7168,3584];if(z.Xa()&&z.Np())return[8192,4096]}return[m,m]}function g(a,b){var c=e(b);return a.filter(function(a){return t.qb("TiledImageResourceLevel",a)?n:c[0]!==m&&a.get("width")>
c[0]||c[1]!==m&&a.get("height")>c[1]?y:n})}function k(){return z.Np()?[s.R0]:z.XY()?[s.T0,s.dP]:z.we()?[s.dP]:z.Xa()?[s.S0]:[]}function i(a){a.sort(function(a,b){return a.get("width")-b.get("width")});return a}function p(a,b){function c(a){return Math.abs(a.get("width")*a.get("height")-b[0]*b[1])}a.sort(function(a,b){return c(a)-c(b)});return a.length&&a[0]||r}function j(a,b,c){a=a.filter(function(a){return a.get("tags").indexOf(b)<0});return a.length?a:c!==m?c:[]}function l(a,b,c){a=a.filter(function(a){return a.get("tags").indexOf(b)>=
0});return a.length?a:c!==m?c:[]}function q(a,b){switch(b){case w.st:return a.get("stereoCube").get("levels");case w.mq:return a.get("cube").get("levels");case w.Fi:return a.get("front").get("levels");case w.Wn:return a.get("sphere").get("levels");case w.wm:case w.Xn:return a.get("stereoSphere").get("levels")}}function o(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];b.indexOf(d)<0&&b.push(d)}return b}var t=a("dW"),s=a("jj"),u=a("cT"),v=a("jL"),w=a("bH"),x=a("hK");a("iX");var z=a("r");a("gl");var F=
a("jn"),A=a("id"),K=a("kT"),E={Yba:function(a){a=a.get("frames");if(a.length==0)return 1;var b=a[0];if(w.get(b)==w.Wn&&b.Hh())a=(a=K.Zg(b.get("sphere")))?[a]:[];else if((w.get(b)==w.wm||w.get(b)==w.Xn)&&b.Hh())a=(a=K.Zg(b.get("stereoSphere")))?[a]:[];else a=E.wY(b,y);return Math.max.apply(Math,a.map(function(a){return E.uva(b,a)}).concat([1]))},uva:function(a,b){var b=E.rY(a,b,v.FRONT),c=b.get("width"),d=a.rz().get("hfov",360);switch(w.get(a)){case w.st:return c/1080;case w.mq:return c/540;case w.Fi:return c/
90;case w.Wn:return c/d;case w.wm:return c/d;case w.Xn:return c/(2*d)}},NY:function(a,b){var c=E.Gk(a,b);return c.length<=6&&c.every(function(a){return A.f_(a)})},Gk:function(a,b,c){if(!a)return[];c||(c=y);if(t.qb("Panorama",a)){c=a.get("flipImageHorizontally",y);return o([].concat(Array.prototype.concat.apply([],a.get("frames").map(function(a){return E.Gk(a,b,c)})),Array.prototype.concat.apply([],a.get("overlays").map(function(a){return E.Gk(a,b,c)}))))}if(t.qb("PanoramaFrame",a)){var d=Array.prototype.concat.apply([],
a.get("overlays").map(function(a){return E.Gk(a,b,c)}));if(w.get(a)==w.Wn&&a.Hh())return E.Gk(K.Zg(a.get("sphere")),b).concat(d);if((w.get(a)==w.wm||w.get(a)==w.Xn)&&a.Hh())return E.Gk(K.Zg(a.get("stereoSphere")),b).concat(d);var e=E.wY(a,b)[0],c=a.get("flipImageHorizontally",y);if(w.get(a)==w.Fi){var i=[v.FRONT,v.qa,v.BACK,v.Ma,v.mb,v.lb];return Array.prototype.concat.apply([],i.map(function(d){return(d=E.rY(a,e,d))?E.Gk(d,b,c):[]})).concat(d)}return E.Gk(e,b,c).concat(d)}if(t.qb("Video360ResourceLevel",
a))return(d=a.get("posterURL"))?[d]:[];if(t.qb("HotspotPanoramaOverlay",a))return a.get("projected")?Array.prototype.concat.apply([],a.get("items").map(function(a){return E.Gk(a,b,c)})):[];if(t.qb("FlatHotspotPanoramaOverlayImage",a)||t.qb("HotspotPanoramaOverlayImage",a)){d=a.get("image").get("levels");e=d[0];E.Gk(e,b,c);return Array.prototype.concat.apply([],d.map(function(a){return E.Gk(a,b,c)}))}if(t.qb("TiledImageResourceLevel",a)){var g=[],d=Math.round(a.get("width")/a.get("height")),f;if(d==
1)f=w.Fi;else if(d==12)f=w.Xza;else if(d==6)f=w.mq;else return[];var j=d==12?[u.Ma,u.qa]:[u.Qn],i=[v.Ma,v.qa,v.mb,v.lb,v.FRONT,v.BACK],k=a.get("colCount",d)/d,p=a.get("rowCount",1);j.forEach(function(b){i.forEach(function(d){for(var e=0;e<p;e++)for(var i=0;i<k;i++)g.push(E.hca(a,f,b,d,c,p,e,i))})});return g}return t.qb("ImageResourceLevel",a)?[a.get("url")]:[]},wY:function(a,b){var c=w.get(a),d=this.Vka(a);if(d){if(b&&!this.E5(d)){c=this.b5(a);if(c!=d)return[c,d]}return[d]}d=l(q(a,c),s.eP);if(d.length>
0)return i(d);d=this.xla(a);if(b&&!this.E5(d)){c=this.b5(a);if(c!=d)return[c,d]}return[d]},uwa:function(a){return a.get("tags").indexOf(s.eP)>=0},rY:function(a,b,c){if(w.get(a)!=w.Fi)return b;var d;switch(c){case v.FRONT:d=a.get("front");break;case v.qa:d=a.get("left");break;case v.BACK:d=a.get("back");break;case v.Ma:d=a.get("right");break;case v.mb:d=a.get("top");break;case v.lb:d=a.get("bottom")}a=d&&d.get("levels")||[];if(a.length==0)return r;a=a.filter(function(a){return a.get("width")==b.get("width")&&
a.get("height")==b.get("height")&&a.get("grayscale",y)==b.get("grayscale",y)&&a.get("colCount",1)==b.get("colCount",1)&&a.get("rowCount",1)==b.get("rowCount",1)});return a[0]},hca:function(a,c,d,e,i,f,g,j){var a=a.get("url"),k=0;a.indexOf("{eye}")>=0||a.indexOf(encodeURI("{eye}"))>=0?a=b(a,"{eye}",I[d]):k=k+6*(i?O:B)[d];a.indexOf("{face}")>=0||a.indexOf(encodeURI("{face}"))>=0?a=b(a,"{face}",N[e]):c!=w.Fi&&(k=k+J[e]);a=b(a,"{row}",g);return a=b(a,"{column}",j+k*f)},wva:function(a,b){return E.rB(E.hu(a.get("image")),
90,90,F.Se,b)},Xua:function(a,b){return E.rB(E.hu(a.get("image")),a.get("hfov"),a.get("vfov"),a.get("scaleMode"),b)},jva:function(a,b){return E.rB(E.hu(a.get("image")),a.get("hfov"),a.get("vfov"),a.get("scaleMode"),b)},Hva:function(a,b){return E.rB(E.hu(a.get("image")),a.get("hfov"),a.get("vfov"),a.get("scaleMode"),b)},Oba:function(a,b){return E.rB(E.hu(a.get("image")),a.get("hfov"),a.get("vfov"),a.get("scaleMode"),b)},hu:function(a){return a&&a.get("levels")||[]},rB:function(a,b,d,e,f){if(!a||!a.length)return r;
for(var a=j(a,s.xm,a),g=k(),o=0;o<g.length;o++)a=l(a,g[o],a);g=1E4;c()||(z.we()?g=2048:z.Np()?g=1280:z.Xa()&&(g=1024));o=i(a)[a.length-1];b=x.AY(b,d,o.get("width"),o.get("height"),e,f);return p(a,[b.bd*g/90,b.pm*g/90])},eva:function(a){var b=E.hu(a.get("image"));if(!b||!b.length)return r;for(var b=j(b,s.xm,b),c=k(),d=0;d<c.length;d++)b=l(b,c[d],b);c=i(b)[b.length-1];a=x.sY(a.get("width"),a.get("height"),c.get("width"),c.get("height"),a.get("scaleMode"));return p(b,[a.width,a.height])},zva:function(a){var b=
E.hu(a.get("image"));if(!b||!b.length)return r;for(var b=j(b,s.xm,b),d=k(),e=0;e<d.length;e++)b=l(b,d[e],b);d=1E4;c()||(z.we()?d=2048:z.Np()?d=1280:z.Xa()&&(d=1024));var i=e=20;if((a=a.get("vertices"))&&a.length==4){e=a[0].get("yaw");i=a[1].get("yaw");i<e&&(i=i+360);e=i-e;i=a[0].get("pitch");a=a[3].get("pitch");i=i-a}return p(b,[e*d/90,i*d/90])},b5:function(a){for(var b=w.get(a),a=q(a,b),a=g(a,b),a=l(a,s.xm,a),b=k(),c=0;c<b.length;c++)a=l(a,b[c],a);return p(a,[0,0])},xla:function(a){for(var b=w.get(a),
a=q(a,b),a=g(a,b),a=j(a,s.xm,a),c=k(),e=0;e<c.length;e++)a=l(a,c[e],a);b=f(b,d(a));return p(a,b)},Vka:function(a){var b=k();if(b.length==0)return r;for(var c=w.get(a),e=q(a,c),e=g(e,c),e=j(e,s.xm,e),a=[],i=0;i<b.length&&a.length==0;i++)a=l(e,b[i]);if(a.length==0)return r;b=f(c,d(a));return p(a,b)},E5:function(a){return a.get("tags").indexOf(s.eP)>=0?y:z.Jc()==z.Vs?n:A.f_(a.get("url"))}},J=function(){var a={};a[v.Ma]=0;a[v.qa]=1;a[v.mb]=2;a[v.lb]=3;a[v.FRONT]=4;a[v.BACK]=5;return a}(),B=function(){var a=
{};a[u.Ma]=0;a[u.qa]=1;a[u.Qn]=0;return a}(),O=function(){var a={};a[u.Ma]=1;a[u.qa]=0;a[u.Qn]=0;return a}(),N=function(){var a={};a[v.Ma]="r";a[v.qa]="l";a[v.mb]="u";a[v.lb]="d";a[v.FRONT]="f";a[v.BACK]="b";return a}(),I=function(){var a={};a[u.qa]="l";a[u.Ma]="r";a[u.Qn]="b";return a}();return E});
define("dD",["require"],function(){function a(a){this.te=a;"CANVAS"==a.tagName?this.v=a:(this.v=document.createElement("canvas"),this.v.width=a.width,this.v.height=a.height);this.ka=this.v.getContext("2d");this.ka.globalCompositeOperation="copy";this.v!=a&&this.ka.drawImage(a,0,0,a.width,a.height)}function b(a,b,c){try{if(a instanceof CanvasRenderingContext2D)return a.getImageData(b,c,1,1).data;if(a.tagName&&"CANVAS"==a.tagName)return a.getContext("2d").getImageData(b,c,1,1).data;d.drawImage(a,b,
c,1,1,0,0,1,1);return d.getImageData(0,0,1,1).data}catch(i){return[0,0,0,0]}}a.prototype.transparent=function(b,c){return a.transparent(this.ka,b,c)};a.prototype.cq=function(b,c){return a.cq(this.ka,b,c)};a.prototype.info=function(b,c){return a.info(this.ka,b,c)};a.prototype.dispose=function(){this.v!=this.te&&(this.v.width=this.v.height=0);this.te=this.v=this.ka=r};a.transparent=function(b,c,d){return!a.cq(b,c,d)};a.cq=function(a,c,d){return a.tagName&&"VIDEO"==a.tagName?n:0<b(a,c,d)[3]};a.info=
function(a,c,d){a=b(a,c,d);c=a[3];return{cq:0<c,opacity:c,color:"#"+f[a[0]]+f[a[1]]+f[a[2]]}};var c=document.createElement("canvas");c.width=c.height=1;var d=c.getContext("2d");d.globalCompositeOperation="copy";var f=function(){for(var a=Array(256),b=0;16>b;b++)a[b]="0"+b.toString(16);for(;256>b;b++)a[b]=b.toString(16);return a}();return a});
define("iU","require,fg,ih,ll,dW,hk,jS,hS,km,dD,iL".split(","),function(a){function b(a,b,d,e,i,f){for(a=(a-b)/f;d+180<e;)e=e-360;for(;d-180>e;)e=e+360;d=(d-e)/f;return d=a<-0.1||a>0.1?c(i,d,Math.abs(1/(1500*a))):c(i,d,0.08)}function c(a,b,c){a=(b-a)*(1-c);Math.abs(a)<1.0E-5&&(a=0);return b-a}var d=a("fg"),f=a("ih"),e=a("ll"),g=a("dW"),k=a("hk"),i=a("jS"),p=a("hS"),j=a("km"),l=a("dD"),q=a("iL"),a=d.extend(k,function(a){k.call(this);this.j=a;this.ph.push(this.j);this.Vd=this.Vd.bind(this);this.Xd=
g.qb("CeilingCapPanoramaOverlay",this.j)?"ceiling":"tripod";this.set("tag","Cap");this.set("pitch",this.Xd=="tripod"?-90:90);this.Tf=y;this.Wu=this.UU=this.hD=m;this.Xoa=this.Xd=="tripod"?1:-1;this.Dg=this.xh=this.Ge=r});a.prototype.Sa=function(){k.prototype.Sa.call(this);this.Ge=(new p(e.T)).Ci(this.wl.bind(this));this.xh=(new p(e.vc)).Kk(this.Hu.bind(this));f.Rb(this.j,["angle","distance","hfov","image.levels.url","inertia","rotate"],this.Vd,n)};a.prototype.Za=function(){this.Dg&&this.Dg.dispose();
this.Dg=r;this.Ge.dispose();this.xh.dispose();f.$b(this.j,["angle","distance","hfov","image.levels.url","inertia","rotate"],this.Vd);k.prototype.Za.call(this)};a.prototype.Vd=function(){this.set("angle",this.j.get("angle"));this.set("distance",this.j.get("distance"));this.set("hfov",this.j.get("hfov"));var a=j.Xua(this.j,this.get("panoramaPixelsPerDegree"));this.set("imageURL",a&&a.get("url"));this.set("imageWidth",a&&a.get("width"));this.set("imageHeight",a&&a.get("height"));this.set("inertia",this.j.get("inertia"));
this.set("rotate",this.j.get("rotate"))};a.prototype.Si=function(){var a=k.prototype.Si.call(this);this.Ge.yd(a);this.xh.yd(a);return a};a.prototype.L=function(a){this.WW();this.Vy(a);k.prototype.L.call(this,a)};a.prototype.WW=function(){if(this.p("imageURL")&&this.get("imageURL")){this.set("textureSource",new i(this.get("imageURL")));this.set("contentWidth",this.get("imageWidth"));this.set("contentHeight",this.get("imageHeight"))}};a.prototype.wl=function(){this.Dg&&this.Dg.dispose();this.Dg=new l(this.get("textureSource").ve());
this.trigger(e.Ib);this.trigger(e.T)};a.prototype.Hu=function(a,b){var c=0;b.vn(function(a){(a=b.vi(a))&&(c=c+a.Ih)});this.trigger(new q(e.vc,c/b.Yc.length))};a.prototype.Vy=function(a){this.set("rendererYaw",a.ma);if(this.p("angle","inertia","rotate")||(this.get("rotate")||this.get("inertia"))&&this.p("rendererYaw")){var c=this.get("angle"),d=this.get("rotate"),e=this.get("inertia"),i=this.Xoa*a.ma;d&&(c=c+i);var f=0,g=c-i;if(this.hD!==m){if(e)if(d){f=b(i,this.Wu,c,this.hD,this.UU,a.wd);c=this.hD+
f*a.wd}else{f=b(i,this.Wu,g,this.B8,this.UU,a.wd);g=this.B8+f*a.wd;c=g+i}this.hD!=c&&this.Ha()}this.B8=g;this.hD=c;this.UU=f;this.Wu=i;this.set("rotationZ",-c)}};a.prototype.Jj=function(a){if(a.ae==e.Hi){var b=!a.Ch()&&this.Tl(a);if(b){a.qs(this.j);this.j.get("useHandCursor")&&a.rs(this.j);a.ri(this.get("distance"))}if(this.Tf!=b){this.Tf=b;this.j.trigger(this.Tf?e.wc:e.Mb);a.Fs()&&this.j.trigger(this.Tf?e.Jh:e.Ff)}}else if(a.ae==e.Gi&&!a.Ch()&&this.Tl(a)){this.j.YE(e.U,n).length>1&&a.Yp(this.j);
a.ri(this.get("distance"));this.j.trigger(e.U)}};a.prototype.Tl=function(a){return this.Do(a.Jl).some(function(a){return this.Dg&&this.Dg.cq(a.x,a.y)}.bind(this))};return a});
define("hL",["require","fg","ll","fu","gU"],function(a){var b=a("fg"),c=a("ll"),d=a("fu"),f=a("gU"),a=b.extend(f,function(){f.call(this);this.bf=new THREE.Matrix4;this.Laa=y;this.Pf=new THREE.Matrix4;this.qe=r;this.li=new THREE.Matrix4;this.nD=this.aD=0;this.yA=0.75;this.gB=0.5;this.Lm=4;this.OT=0;this.Mm=-2;this.sl=3;this.gJ=0;this.bu=7;this.VC=this.Mr=1;this.hC=0.15;this.cu=this.Nu=0;this.II=this.mK=d.I;this.iL=this.dL=1E3}),e=Math.PI/180,g=new THREE.Matrix4;a.prototype.Pi=C();a.prototype.Sa=function(){f.prototype.Sa.call(this);
this.trigger(c.Ib);this.trigger(c.T)};a.prototype.Za=function(){this.uQ()};a.prototype.rh=function(){this.Pi();this.BK()};a.prototype.sh=function(){this.Ha()};a.prototype.BK=function(){this.qe&&(this.uQ(),this.y3())};a.prototype.IH=C();a.prototype.y3=function(){this.Ipa();this.qe=new THREE.Group;for(var a=this.II==d.O,b=this.Nu,c=this.cu;0<c+b;){var e=Math.random()*(c+b)<=c;e?c--:b--;var f=this.IH();f.matrixAutoUpdate=y;f.overdraw=y;f.material.opacity=0;f.userData={Jua:e,Hz:new THREE.Matrix4,dba:new THREE.Matrix4,
zZ:new THREE.Matrix4,y:m,bfa:m,nZ:a};this.qe.add(f);a&&this.uV(f,this.Mm,this.sl);this.Hpa(f)}this.aD=a?this.qe.children.length:0;this.CX.add(this.qe);this.m2()};a.prototype.uQ=function(){if(this.qe){this.qe.parent&&this.qe.parent.remove(this.qe);for(var a=0,b=this.qe&&this.qe.children.length;a<b;a++)this.qe.children[a].material.dispose();this.qe=r;this.nD=0}};a.prototype.Ipa=function(){this.li=(new THREE.Matrix4).makeScale(this.Mr,this.Mr,this.Mr)};a.prototype.uV=function(a,b,c){b+=Math.random()*
(c-b);if(a.userData.Jua){var c=this.bu,d=360*Math.random()*e;a.userData.Hz.makeTranslation(c*Math.cos(d),b,c*Math.sin(d))}else c=2*Math.random()*Math.PI,d=this.OT+(this.Lm-this.OT)*Math.sqrt(Math.random()),a.userData.Hz.makeTranslation(d*Math.cos(c),b,d*Math.sin(c));a.userData.Hz.multiply(this.li);a.userData.y=b};a.prototype.Hpa=function(a){var b=this.hC+Math.random()*(this.xu-this.hC),c;do c=Math.random()*this.gJ;while(80<c&&100>c);var d=360*Math.random(),f=Math.sin(d*e)*Math.sin(c*e)*b,q=-Math.cos(c*
e)*b,b=Math.cos(d*e)*Math.sin(c*e)*b;a.userData.bfa=q*this.Mr;a.userData.dba.makeTranslation(f,q,b);a.userData.zZ.makeRotationY(d*e);a.userData.zZ.multiply(g.makeRotationX(-c*e))};a.prototype.L=function(a){f.prototype.L.call(this,a);this.CX=a.ye;this.CX!=(this.qe&&this.qe.parent)?(this.uQ(),this.CX&&this.y3()):this.p("index")&&this.m2();this.Xsa(a)};a.prototype.Xsa=function(a){if(this.qe){this.p("composedTranslationX","composedTranslationY","composedTranslationZ")&&(this.Laa=0!=this.get("composedTranslationX")||
0!=this.get("composedTranslationY")||0!=this.get("composedTranslationZ"),this.bf.makeTranslation(-this.get("composedTranslationX")*this.Lm,this.get("composedTranslationY")*this.Lm,this.get("composedTranslationZ")*this.Lm));var b=this.mK==d.O,c=this.qe.children,e=c.length,f=b?Math.round(e*a.wd/this.dL):0;if(0<this.aD+f){this.nD=b?0:Math.min(this.aD,this.nD+Math.round(e*a.wd/this.iL));a=this.get("composedAlpha");for(b=0;b<e;b++){var g=c[b];if(!g.userData.nZ)if(0<f)f--,g.userData.nZ=n,this.aD++,this.uV(g,
this.sl,this.sl+(this.sl-this.Mm));else continue;g.userData.Hz.multiply(g.userData.dba);g.userData.y+=g.userData.bfa;if(g.userData.y<this.Mm||g.userData.y>this.sl){if(0<this.nD){this.nD--;g.userData.nZ=y;this.aD--;g.material.opacity=0;continue}var o=g.userData.y<this.Mm?this.sl:this.Mm;this.uV(g,o,o)}o=a;g.userData.y<this.Mm+this.gB?o*=(g.userData.y-this.Mm)/this.gB:g.userData.y>this.sl-this.yA&&(o*=(this.sl-g.userData.y)/this.yA);g.material.opacity=o*this.VC;this.Laa?(g.matrix.copy(this.bf),g.matrix.multiply(g.userData.Hz)):
g.matrix.copy(g.userData.Hz);g.matrix.multiply(g.userData.zZ);g.matrixWorldNeedsUpdate=n}this.Ha()}}};a.prototype.m2=function(){if(this.qe)for(var a=this.get("index"),b=0;b<this.qe.children.length;b++)this.qe.children[b].renderOrder=a};return a});
define("kA",["require"],function(){function a(a){return[parseInt(a.substr(1,2),16),parseInt(a.substr(3,2),16),parseInt(a.substr(5,2),16)]}function b(a,b){return Math.max(Math.abs(a[0]-b[0]),Math.abs(a[1]-b[1]),Math.abs(a[2]-b[2]))}var c={Exa:function(c,f,e){if(c&&0==c.indexOf("#")){var g=a(c),k=m,i=256;f.forEach(function(c){if(c&&0==c.indexOf("#")){var d=b(g,a(c));d<i&&(k=c,i=d)}});if(k&&i<=e)return k}return c},pY:function(c,f){return b(a(c),a(f))}};c.xF=a;return c});
define("hd","require,fg,ih,fu,hL,kA,r".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("fu"),f=a("hL"),e=a("kA"),g=a("r"),a=b.extend(f,function(a){f.call(this);this.j=a;this.rh=this.rh.bind(this);this.sh=this.sh.bind(this);this.Pi()});a.prototype.Sa=function(){f.prototype.Sa.call(this);this.j.set("state",this.j.get("startState"));c.Rb(this.j,["color","intensity","speed","opacity","distance","maxDistance","farPlaneDistance","minSpeed","maxSpeed","particleCount","farPlaneParticleCount","particleScale"],
this.rh,n);c.Rb(this.j,["state"],this.sh,n)};a.prototype.Za=function(){c.$b(this.j,["color","intensity","speed","opacity","distance","maxDistance","farPlaneDistance","minSpeed","maxSpeed","particleCount","farPlaneParticleCount","particleScale"],this.rh);c.$b(this.j,["state"],this.sh);this.j.set("state",d.I);f.prototype.Za.call(this)};a.prototype.rh=function(){this.Pi();this.BK()};a.prototype.sh=function(){this.mK=this.j.get("state");this.Ha()};a.prototype.Pi=function(){f.prototype.Pi.call(this);var a;
a=g.Xa()||g.browser()==g.Us?2500:g.we()?4E3:5E3;this.hC=this.xu=this.j.get("speed",0.2)*0.2;this.Lm=this.j.get("distance",0.5)*14.5+0.5;this.VC=this.j.get("opacity",0.1)*1;this.Mr=0.036;this.Nu=this.j.get("intensity",0.1)*a;this.Sb=e.xF(this.j.get("color","#ffffff"));this.cu=0;this.bu=15;this.II=this.j.get("initialState");this.dL=this.j.get("startDuration");this.iL=this.j.get("stopDuration");this.yA=0.75;this.gB=0.5;this.Mm=-2;this.sl=4;this.gJ=180;this.W3()};a.prototype.IH=function(){return new THREE.Sprite(this.YA())};
a.prototype.YA=function(){var a=new THREE.SpriteMaterial;a.map=this.ZA();a.side=THREE.FrontSide;a.transparent=n;a.depthTest=y;a.needsUpdate=n;return a};a.prototype.ZA=function(){if(this.ub)return this.ub;var a=document.createElement("canvas");a.width=a.height=k;this.ub=new THREE.Texture;this.ub.image=a;this.ub.needsUpdate=n;this.W3();return this.ub};a.prototype.W3=function(){if(this.ub){var a=this.ub.image,b=a.getContext("2d"),c=b.createRadialGradient(a.width*0.5,a.height*0.5,a.height*0.2,a.width*
0.5,a.height*0.5,a.height*0.5);c.addColorStop(0,"rgba("+this.Sb[0]+", "+this.Sb[1]+", "+this.Sb[2]+", 1)");c.addColorStop(1,"rgba("+this.Sb[0]+", "+this.Sb[1]+", "+this.Sb[2]+", 0)");b.fillStyle=c;b.clearRect(0,0,a.width,a.height);b.fillRect(0,0,a.width,a.height);this.ub.needsUpdate=n}};var k=32;return a});
define("li","require,fg,ge,gW,dv,hK,hZ,jY".split(","),function(a){a("fg");var b=a("ge"),c=a("gW"),d=a("dv"),f=a("hK"),e=a("hZ"),g=a("jY"),k=new THREE.Matrix4,i=Math.PI/180;return{qo:function(){this.set("distance",m);this.set("width",100);this.set("height",100);this.set("offsetX",m);this.set("offsetY",m);this.set("yaw",0);this.set("pitch",0);this.set("roll",0);this.set("rotationZ",0);this.set("contentWidth",100);this.set("contentHeight",100);this.set("scale",1);this.set("scaleMode",r);this.set("horizontalAlign",
r);this.set("verticalAlign",r);this.Xi=this.Nq();this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.rk=new THREE.Matrix4;this.Ui=new THREE.Matrix4;this.gx=new THREE.Matrix4;this.Cy=new THREE.Matrix4;this.t2=new THREE.Matrix4;this.sg=new THREE.Matrix4;this.t3=new THREE.Matrix4;this.IA=new THREE.Matrix4;this.TA=new THREE.Matrix4;this.Dq=new THREE.Matrix4;this.nf=new THREE.Matrix4;this.ix=new THREE.Matrix4;this.Lt=new THREE.Vector3},xp:function(a){this.Vl(a);this.jX()},jX:function(){if(this.p("width",
"height","contentWidth","contentHeight","scaleMode","horizontalAlign","verticalAlign")){var a=f.sY(this.get("width"),this.get("height"),this.get("contentWidth"),this.get("contentHeight"),this.get("scaleMode"),this.get("horizontalAlign"),this.get("verticalAlign"));c.xea(this.Xi[1],a.XF,a.$F,a.dq,a.fq)}},lI:function(){var a=this.get("meshGroup");return a?d.Eh(a)[1]:r},Si:function(){return[0,1].map(function(a){var c=a==0?this.w3():this.px(),a=d.create(this.Xi[a],c);e.Kn(a,e.Rj);e.Ln(a,e.Xk);e.Ms(a,b.Lw);
e.Qz(a,1);return a}.bind(this))},Nq:function(){return[c.hz(),c.hz()]},Vl:function(a){var b=y;if(this.p("composedTranslationX","composedTranslationY","composedTranslationZ")){this.bf.makeTranslation(-this.get("composedTranslationX")*0.5*c.Kd,this.get("composedTranslationY")*0.5*c.Kd,this.get("composedTranslationZ")*0.5*c.Kd);b=n}if(this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")){this.gc.makeRotationY(-a.ma*i);this.gc.multiply(k.makeRotationX(-this.get("composedDeltaPitch")*i));
this.gc.multiply(k.makeRotationY(this.get("composedDeltaYaw")*i));this.gc.multiply(k.makeRotationY(a.ma*i));b=n}if(this.p("yaw","pitch")){this.rk.makeRotationY(-this.get("yaw")*i);this.rk.multiply(k.makeRotationX(this.get("pitch")*i));b=n}this.p("distance","composedTranslationX","composedTranslationY","composedTranslationZ")&&this.set("z",this.get("composedTranslationX")==0&&this.get("composedTranslationY")==0&&this.get("composedTranslationZ")==0&&this.get("distance")!==m?c.Qv(this.get("distance")):
c.Hp());if(this.p("z")){this.Ui.makeTranslation(0,0,-this.get("z"));b=n}if(b){this.ix.copy(this.bf);this.ix.multiply(this.gc);this.ix.multiply(this.rk);this.ix.multiply(this.Ui)}var e=y;this.set("rendererYaw",a.ma);this.set("rendererPitch",a.pitch);this.set("rendererRoll",a.md);this.set("rendererCameraFOV",a.Bf);this.set("rendererWidth",a.width);this.set("rendererHeight",a.height);a.Bf&&this.p("z","rendererCameraFOV")&&this.set("rendererHeightZ",Math.tan(a.Bf*i*0.5)*this.get("z")*2);if(a.Bf&&(b||
this.p("rendererYaw","rendererPitch","rendererRoll","rendererCameraFOV","rendererWidth","rendererHeight","rendererHeightZ","inVR"))){if(a.Db){this.gx.copy(this.ix);this.Cy.identity()}else{e=a.Kc;this.gx.copy(e.matrixWorld);this.Lt.setFromMatrixPosition(e.matrixWorld);this.Lt.applyMatrix4(this.ix);this.Lt.applyMatrix4(e.matrixWorldInverse);var q=-10,o=-10;if(this.Lt.z<0){this.Lt.applyMatrix4(e.projectionMatrix);q=this.Lt.x*0.5;o=this.Lt.y*0.5}var t=this.get("rendererHeightZ");this.Cy.makeTranslation(q*
t*e.aspect,o*t,0)}e=n}if(this.p("roll")){this.sg.makeRotationZ(this.get("roll")*i);e=n}if(a.Bf&&(b||this.p("rendererHeight","inVR","rendererHeightZ","width","height","contentWidth","contentHeight","scale","scaleMode","horizontalAlign","verticalAlign","flipHorizontally","offsetX","offsetY"))){var b=a.Db?1024:a.height,e=this.get("scale")*this.get("rendererHeightZ")/b*(a.Db?2:1),s=this.get("width"),t=this.get("height"),u=this.get("offsetX"),v=this.get("offsetY"),o=this.get("contentWidth"),w=this.get("contentHeight"),
q=(this.get("flipHorizontally")?-1:1)*e,x=this.get("scaleMode"),b=this.get("horizontalAlign")||g.Mc,a=this.get("verticalAlign")||g.tc,x=f.sY(s,t,o,w,x,b,a),w=q*s,o=e*t;this.IA.makeScale(w,o,1);s=q*(s*0.5-u);t=e*(v-t*0.5);this.t2.makeTranslation(s,t,0);q=q*x.width;e=e*x.height;this.TA.makeScale(q,e,1);b=b==g.qa?-(w-q)*0.5:b==g.Ma?(w-q)*0.5:0;a=a==g.mb?(o-e)*0.5:a==g.lb?-(o-e)*0.5:0;this.t3.makeTranslation(b+s,a+t,0);e=n}if(e){this.nf.copy(this.gx);this.nf.multiply(this.Ui);this.nf.multiply(this.Cy);
this.nf.multiply(this.sg);this.Dq.copy(this.nf);this.Dq.multiply(this.t2);this.Dq.multiply(this.IA);this.nf.multiply(this.t3);this.nf.multiply(this.TA);a=d.Eh(this.get("meshGroup"));d.bm(a[0],this.Dq);d.bm(a[1],this.nf)}}}});
define("eK",["require","ll","fu"],function(a){function b(a,b){this.bl=a;this.be=b;this.Ic=y;this.Lga();this.Sga()}var c=a("ll"),d=a("fu");b.prototype.clear=function(){this.mpa();this.upa();this.bl.set("state",d.I);this.be=this.bl=r};b.prototype.xe=function(a){this.Ic!=a&&(this.Ic=a,this.pv())};b.prototype.Y6=function(){this.be.jc(this.bl.get("state"))};b.prototype.X6=function(){this.pv()};b.prototype.V6=function(){this.bl.trigger(c.rt)};b.prototype.U6=function(){this.bl.trigger(c.Ba)};b.prototype.W6=
function(){this.bl.set("state",this.be.Pe())};b.prototype.pv=function(){this.bl.get("autoplay")&&this.be.jc(this.Ic?d.O:d.I)};b.prototype.Lga=function(){this.bl.bind(c.D("state"),this.Y6,this,n);this.bl.bind(c.D("autoplay"),this.X6,this,n)};b.prototype.mpa=function(){this.bl.unbind(c.D("state"),this.Y6,this,n);this.bl.unbind(c.D("autoplay"),this.X6,this,n)};b.prototype.Sga=function(){this.be.bind(c.rt,this.V6,this,n);this.be.bind(c.Ba,this.U6,this,n);this.be.bind(c.xc,this.W6,this,n)};b.prototype.upa=
function(){this.be.unbind(c.rt,this.V6,this,n);this.be.unbind(c.Ba,this.U6,this,n);this.be.unbind(c.xc,this.W6,this,n)};return b});
define("U","require,fg,ll,fu,bZ,eO,V".split(","),function(a){function b(a,b,c,d){this.MY=a;this.src=a.src;this.lN=b;this.PE=c;this.qM=d;this.Mv=this.MY.width/this.PE;this.Lv=this.MY.height/this.lN}var c=a("fg"),d=a("ll"),f=a("fu");a("bZ");var e=a("eO"),g=a("V"),a=c.extend(e,function(a,c,i,g,p,s,u){e.call(this);this.We=new b(a,c,i,p);this.c9=s;this.pe=g;this.h4=u;this.tL=this.pe*this.We.qM;this.v=document.createElement("canvas");this.v.width=this.We.Mv;this.v.height=this.We.Lv;this.ka=this.v.getContext("2d");
this.ka.globalCompositeOperation="copy";this.m=f.I;this.xK=this.Dm=0;this.WQ=m;this.qf=k.zg(this.We);this.qf.bind(d.aa,this.nh,this,n);this.nh()});a.prototype.jc=function(a){if(this.m!=a){if(a==f.uc){if(this.m!=f.O)return}else if(a==f.O){if(this.m==f.I){this.Dm=this.xK=0;this.nh()}}else if(a==f.I&&(this.Dm!=0||this.xK==0)){this.Dm=this.h4?0:this.tL-0.1;this.nh()}this.m=a;g.La(this.Ng,this);this.trigger(d.xc)}};a.prototype.Pe=Q("m");a.prototype.Ng=function(a){if(this.m==f.O){this.Dm=Math.min(this.Dm+
a,this.qf.qf.length*this.pe);if(this.Dm>=this.tL){this.xK++;if(this.c9&&this.xK==this.c9){this.jc(f.I);this.Dm=this.h4?0:this.tL-0.1;this.trigger(d.Ba)}else{this.Dm=this.Dm%this.tL;this.trigger(d.rt)}}this.nh();this.m==f.O&&g.La(this.Ng,this)}};a.prototype.clear=function(){this.jc(f.I);this.v.width=this.v.height=0;this.v=r;k.lxa(this.We);this.We=r};a.prototype.xg=Q("v");a.prototype.nh=function(){var a=Math.floor(this.Dm/this.pe);if(this.WQ!=a&&a<this.qf.qf.length){this.WQ=a;this.ka.drawImage(this.qf.get(this.WQ),
0,0);this.trigger(d.aa)}};b.prototype.isEqual=function(a){return this.src==a.src&&this.lN==a.lN&&(this.PE=a.PE)&&(this.Mv=a.Mv)&&(this.Lv=a.Lv)&&(this.qM=a.qM)};var k={Kg:[],Cga:2E3,zg:function(a){a=this.Kf(a);a.fw++;this.y$(a);return a.frames},lxa:function(a){a=this.Kf(a);a.fw--;a.fw==0&&this.qra(a)},Kf:function(a){for(var b=0;b<this.Kg.length;b++)if(this.Kg[b].Pua.isEqual(a))return this.Kg[b];b={};b.Pua=a;b.frames=new i(a);b.fw=0;this.Kg.push(b);return b},qra:function(a){this.y$(a);a.dY=setTimeout(function(){k.Ija(a)},
k.Cga)},y$:function(a){if(a.dY){clearTimeout(a.dY);a.dY=r}},Ija:function(a){this.Kg.splice(this.Kg.indexOf(a),1);a.frames.clear()}},i=c.extend(e,function(a){e.call(this);this.We=a;this.qf=[];p.add(this)});i.prototype.clear=function(){p.remove(this);this.qf.forEach(function(a){a.width=0;a.height=0});this.qf=r};i.prototype.get=function(a){return this.qf[a]};i.prototype.Iua=function(){var a=this.qf.length%this.We.PE,b=Math.floor(this.qf.length/this.We.PE)%this.We.lN,c=document.createElement("canvas");
c.width=this.We.Mv;c.height=this.We.Lv;var e=c.getContext("2d");e.globalCompositeOperation="copy";e.drawImage(this.We.MY,a*this.We.Mv,b*this.We.Lv,this.We.Mv,this.We.Lv,0,0,this.We.Mv,this.We.Lv);i.tka(c);this.qf.push(c);this.trigger(d.aa)};i.tka=function(){var a=document.createElement("canvas");a.width=1;a.height=1;var b=a.getContext("2d");return function(a){b.drawImage(a,0,0,1,1,0,0,1,1)}}();var p={Kg:[],xW:r,add:function(a){this.Kg.push(a);this.p9()},remove:function(a){this.Kg=this.Kg.filter(function(b){return b!=
a})},p9:function(){if(!this.xW)this.xW=setTimeout(function(){this.xW=r;this.IC()}.bind(this),40)},IC:function(){if(this.Kg.length!=0){for(var a=(new Date).getTime()+10;(new Date).getTime()<a;){var b=this.Kg.filter(function(a){return a.qf.length==0}),b=b.length>0?b[0]:this.Kg[0];b.Iua();if(b.qf.length==b.We.qM){this.Kg.splice(this.Kg.indexOf(b),1);if(this.Kg.length==0)return}}this.p9()}}};return a});
define("fs","require,ih,ll,fu,ge,dW,bU,dv,eK,dX,hZ,dD,U".split(","),function(a){var b=a("ih"),c=a("ll"),d=a("fu"),f=a("ge"),e=a("dW"),g=a("bU"),k=a("dv"),i=a("eK"),p=a("dX"),j=a("hZ"),l=a("dD"),q=a("U");return{Ut:function(){this.set("visible",y);this.set("inView",y);this.set("blending",0);this.set("chromaColor",m);this.set("chromaThreshold",0);this.set("chromaSmoothing",0);this.set("premultipliedAlpha",y);this.set("projected",y);this.set("image",r);this.set("level",r);this.set("levelURL",r);this.set("state",
r);this.set("visibleOnStop",n);this.set("side",m);this.yJ=this.yJ.bind(this);this.AJ=this.AJ.bind(this);this.Dg=this.ia=this.Vw=this.be=r},Uy:function(){this.WW();this.fE();this.dta()},WW:function(){if(this.p("level")){var a=this.get("level");this.set("levelURL",a&&a.get("url"))}if(this.p("image","level","levelURL","projected")){this.Z2();this.ia=this.get("image");this.ab=this.get("level");this.set("textureSource",new p(this.ia&&this.ab.get("url")));this.set("premultipliedAlpha",this.ia&&this.ab.get("premultipliedAlpha"));
this.cha();if(this.ia){this.Tga();this.Wga()}else{this.trigger(c.Ib);this.trigger(c.T)}}},fE:function(){if(this.p("blending","chromaColor","chromaThreshold","chromaSmoothing","premultipliedAlpha","side")){var a=new g.Sn;a.ts=this.get("blending");a.sn=this.get("chromaColor");a.OE=this.get("chromaThreshold");a.NE=this.get("chromaSmoothing");a.premultipliedAlpha=this.get("premultipliedAlpha");a.side=this.get("side");this.set("materialConfig",a)}},dta:function(){if(this.p("meshGroup","projected","visible")){var a=
this.get("projected")&&this.get("visible")?f.VO:f.Lw;k.Eh(this.get("meshGroup")).forEach(function(b){j.Ms(b,a)}.bind(this))}},oi:function(){this.p("visible","composedAlpha","image","state","visibleOnStop")&&this.set("inView",this.get("visible")&&this.get("composedAlpha")>0&&(this.get("visibleOnStop")||this.get("state")!=d.I));this.p("composedAlpha","meshGroup","inView")&&k.xd(this.get("meshGroup"),this.get("inView")?this.get("composedAlpha"):0);this.Vw&&this.Vw.xe(this.get("inView"))},yJ:function(){this.ia&&
e.qb("AnimatedImageResource",this.ia)?this.set("visibleOnStop",this.ia.get("visibleOnStop")):this.set("visibleOnStop",n)},AJ:function(){this.set("levelURL",this.ab.get("url"))},Zx:function(){this.Z2()},Z2:function(){if(this.Vw){this.Vw.clear();this.Vw=r}if(this.be){this.be.unbind(c.aa,this.s5,this,n);this.be.unbind(c.xc,this.t5,this,n);this.be.clear();this.be=r}if(this.Dg){this.Dg.dispose();this.Dg=r}if(this.get("textureSource")){this.mV();this.set("textureSource",r)}if(this.ia){this.vpa();this.ia=
r}if(this.ab){this.ypa();this.ab=r}},Tga:function(){b.Rb(this.ia,["visibleOnStop"],this.yJ,n)},vpa:function(){b.$b(this.ia,["visibleOnStop"],this.yJ,n)},Wga:function(){b.Rb(this.ab,["url"],this.AJ,n)},ypa:function(){b.$b(this.ab,["url"],this.AJ,n)},DB:function(){this.mV();var a,b=this.get("image");if(e.qb("AnimatedImageResource",b)){this.be=new q(this.get("textureSource").ve(),b.get("rowCount",1),b.get("colCount",1),b.get("frameDuration"),b.get("frameCount",b.get("rowCount",1)*b.get("colCount",1)),
b.get("repeat"),b.get("finalFrame")=="first");a=this.be.xg();this.be.bind(c.xc,this.t5,this,n);this.be.bind(c.aa,this.s5,this,n);this.Vw=new i(b,this.be);this.set("visibleOnStop",b.get("visibleOnStop"));this.set("state",this.be.Pe())}else{a=this.get("textureSource").ve();this.Dg=new l(a);this.set("visibleOnStop",n);this.set("state",r)}this.oi();this.set("contentWidth",a.width);this.set("contentHeight",a.height);this.get("textureSource").yi(a);this.trigger(c.Ib);this.trigger(c.T)},u5:function(){this.mV();
this.trigger(c.Ib);this.trigger(c.T)},t5:function(){this.set("state",this.be.Pe())},s5:function(){this.get("textureSource").update();this.Ha()},cha:function(){var a=this.get("textureSource");a.bind(c.T,this.DB,this,n);a.bind(c.ne,this.u5,this,n)},mV:function(){var a=this.get("textureSource");a.unbind(c.T,this.DB,this,n);a.unbind(c.ne,this.u5,this,n)},lS:function(a){return this.Dg&&this.Dg.te==a.source?this.Dg.info(a.x,a.y):l.info(a.source,a.x,a.y)}}});
define("lj","require,ih,ll,dW,kA,gf".split(","),function(a){function b(a){a=a.get("mapColor");return a=="image"||a=="transparent"||a=="any"}function c(a){a=a.get("mapColor");return a!="image"&&a!="transparent"&&a!="any"}var d=a("ih"),f=a("ll"),e=a("dW"),g=a("kA"),k=new (a("gf"));return{Oq:function(){this.set("beamEnabled",y);this.xJ=this.xJ.bind(this);this.QS=r;this.Hf=[];this.hr=r},cya:function(a){if(this.hr!=a){this.gV();this.hr=a;this.S1()}},Yl:function(a){this.Wr=a.ma;this.Vr=a.pitch},gV:function(){this.hr&&
d.$b(this.hr,["areas"],this.xJ,n)},S1:function(){this.hr&&d.Rb(this.hr,["areas"],this.xJ,n)},ny:function(){this.gV();this.S1()},oy:function(){this.D9([]);this.gV()},xJ:function(){var a=this.hr.get("areas",[]);this.QS=e.qb("HotspotPanoramaOverlayImage",this.j)||e.qb("FlatHotspotPanoramaOverlayImage",this.j)||e.qb("QuadHotspotPanoramaOverlayImage",this.j)?a.filter(b):a.filter(c);this.QS.forEach(function(a){k.set(a,0)})},Jj:function(a){if(a.ae==f.Hi){var b=this.get("beamEnabled")&&this.get("alpha")>
0&&!a.Ch()?this.v4(a):[];if(b.length>0){a.qs(b);this.jn(b)&&a.rs(b);a.ri(this.get("distance"));var c=this.ya(b,a.$v());c&&a.ZL(c,this.fs(a.$v()))}this.D9(b,a.Fs(),a.$v())}else if(a.ae==f.Gi){b=this.get("beamEnabled")&&this.get("alpha")>0&&!a.Ch()?this.v4(a):[];if(b.length>0){var d=y;b.forEach(function(a){a.trigger(f.U);!d&&a.YE(f.U,n).length>1&&(d=n)});a.ri(this.get("distance"));d&&a.Yp(b)}}},v4:function(a){var b=this.Do(a.Jl);return b.length==0?[]:this.QS.filter(function(a){var c=a.get("mapColor");
return c=="any"?n:c=="image"?b.some(function(a){return this.lS(a).cq}.bind(this)):c=="transparent"?b.every(function(a){return!this.lS(a).cq}.bind(this)):c&&c[0]=="#"?b.some(function(a){return g.pY(this.lS(a).color,c)<10}.bind(this)):y}.bind(this))},D9:function(a,b,c){this.Hf.forEach(function(d){if(a.indexOf(d)<0){var e=k.get(d)-1;k.set(d,e);if(e==0){d.trigger(f.Mb,{$X:c});b&&d.trigger(f.Ff)}}});var d=this.Hf;this.Hf=a;this.Hf.forEach(function(a){if(d.indexOf(a)<0){var e=(k.get(a)||0)+1;k.set(a,e);
if(e==1){a.trigger(f.wc,{$X:c});b&&a.trigger(f.Jh)}}})},ya:function(a,b){for(var c="",d=a.length-1;d>=0&&c=="";d--){var e=a[d];if(!b||e.get("displayTooltipInTouchScreens")&&this.Ua.C.get("displayTooltipInTouchScreens")!==y)c=e.get("toolTip","")}return c},fs:function(a){if(a){var a=this.get("yaw")-this.Wr,b=this.get("pitch")-this.Vr;return Math.sqrt(a*a+b*b)}return 0},jn:function(a){for(var b=this.hr.get("useHandCursor"),c=a.length-1;c>=0&&b===m;c--)b=a[c].get("useHandCursor");return!!b}}});
define("kx",["require","r","cc"],function(a){function b(){this.Rg=m;this.Ox=this.Su=0;this.Z=n;this.zH=this.yW=this.WR=m;this.Ic=y}var c=a("r"),d=a("cc"),f=Math.PI/180,e=c.browser()==c.Df?[-0.5,0]:[0,0];b.prototype.Ps=function(a){this.Rg!=a&&(this.Rg=a,this.Z=n)};b.prototype.Os=function(a){if(a<this.Su+e[0]||a>this.Su+e[1])this.Su=a,this.Z=n};b.prototype.get=function(a,b){b!==m||(b=n);this.Z&&(this.L(),this.Z=y);var c=this.WR.get(a)||0,d=(this.yW.get(a)||0)-c;b&&(180<d?d-=360:-180>d&&(d+=360));return c+
d*this.zH};b.prototype.zY=function(){this.Z&&(this.L(),this.Z=y);for(var a=this.WR.get("vertices"),b=this.yW.get("vertices"),c=[],e=0;e<a.length;e++){var f=a[e].get("yaw")||0,l=(b[e].get("yaw")||0)-f;180<l?l-=360:-180>l&&(l+=360);var q=a[e].get("pitch")||0,o=(b[e].get("pitch")||0)-q;c.push(new d(f+l*this.zH,q+o*this.zH))}return c};b.prototype.Fh=function(){return this.get("opacity",y)};b.prototype.Tv=function(){var a=this.get("hfov")||this.get("vfov"),b=this.Rg[0].get("hfov")||this.Rg[0].get("vfov");
return Math.tan(0.5*a*f)/Math.tan(0.5*b*f)};b.prototype.L=function(){for(var a=this.Ox,b,c=this.Rg.length-1,d,e;;){b=Math.min(a+1,c);d=this.f5(a);e=this.f5(b);if(d<=this.Su&&this.Su<=e)break;if(d>this.Su){if(0==a){b=a;break}a-=1}else{if(a==c){b=a;break}a+=1}}this.WR=this.Rg[a];this.yW=this.Rg[b];a=e-d;this.zH=0<a?(this.Su-d)/a:0};b.prototype.f5=function(a){return this.Rg[a].get("timestamp")};return b});
define("g",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.set("scaleMode",m);this.set("distance",m);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,"horizontalAlign,verticalAlign,scale,scaleMode,width,height,offsetX,offsetY,distance,playbackPositions".split(","),this.nc,n)},sk:function(){b.$b(this.j,"horizontalAlign,verticalAlign,scale,scaleMode,width,height,offsetX,offsetY,distance,playbackPositions".split(","),
this.nc)},nc:function(){this.set("horizontalAlign",this.j.get("horizontalAlign"));this.set("verticalAlign",this.j.get("verticalAlign"));this.set("scale",this.j.get("scale"));this.set("scaleMode",this.j.get("scaleMode"));this.set("width",this.j.get("width"));this.set("height",this.j.get("height"));this.set("offsetX",this.j.get("offsetX",0.5*this.j.get("width")));this.set("offsetY",this.j.get("offsetY",0.5*this.j.get("height")));this.set("distance",this.j.get("distance"));this.set("playbackPositions",
this.j.get("playbackPositions"))},Zf:function(){this.p("playbackPositions","currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("yaw",this.xa.get("yaw")),this.set("pitch",this.xa.get("pitch")),this.set("roll",this.xa.get("roll")),this.set("alpha",this.xa.Fh()))}}});
define("hw","require,fg,ih,ll,dv,eg,li,fs,lj,g,km".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("dv"),e=a("eg"),g=a("li"),k=a("fs"),i=a("lj"),p=a("g"),j=a("km"),l=0,a=b.extend(e,g,p,k,i,function(a){e.call(this);this.set("tag","FlatHotspotImage");this.set("id","flat_hs_image_"+l++);this.j=a;this.ph.push(this.j);this.Vd=this.Vd.bind(this)});a.prototype.Sa=function(){e.prototype.Sa.call(this);c.Rb(this.j,["image.levels"],this.Vd,n)};a.prototype.Za=function(){c.$b(this.j,["image.levels"],
this.Vd);e.prototype.Za.call(this)};a.prototype.Vd=function(){this.set("image",this.j.get("image"));this.set("level",j.eva(this.j))};a.prototype.L=function(a){this.qv();e.prototype.L.call(this,a);this.p("inView")&&this.j.trigger(this.get("inView")?d.od:d.zd)};a.prototype.qv=function(){if(this.p("meshGroup","panoramaId","id")){var a=this.get("meshGroup");a&&a.children.forEach(function(a){f.setAttribute(a,f.Ts,this.get("panoramaId"));f.setAttribute(a,f.LN,this.get("id"))}.bind(this))}};return a});
define("jq","require,fg,ih,ll,gU,hS,r,kX,bq,iL".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("gU"),e=a("hS");a("r");var g=a("kX"),k=a("bq"),i=a("iL"),a=b.extend(f,function(a){f.call(this);this.j=a;this.ph.push(this.j);this.JJ=this.JJ.bind(this);this.IJ=this.IJ.bind(this);this.KJ=this.KJ.bind(this);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("tag","Hotspot");this.set("over",y);this.set("centerOver",y);this.set("enabled",n);this.set("visible",y);this.set("alpha",
0);this.set("inVR",y);this.set("overlaysEnabled",n);this.set("enabledInVR",n);this.set("enabledInStandard",n);this.set("interactionEnabled",n);this.set("centerOverDisplay",y);this.set("rollOverDisplay",y);this.set("loadingActive",y);this.OP=this.PP=this.tk=this.oc=this.Dd=r;this.Hf=[];this.NP=[];this.qi=r});a.prototype.Sa=function(){this.Dd=(new e(d.T)).Ci(this.Du.bind(this));this.oc=(new e(d.vc)).Kk(this.Gu.bind(this));this.tk=(new e(d.Ib)).Ci(this.zna.bind(this));this.PP=(new e(d.wc)).Kk(this.sna.bind(this));
this.OP=(new e(d.Mb)).Kk(this.rna.bind(this));f.prototype.Sa.call(this);c.Rb(this.j,["items","rollOverItems","maps","rollOverMaps"],this.JJ,n);c.Rb(this.j,["fadeInDuration","fadeOutDuration","enabledInVR","enabledInStandard","enabledInSurfaceSelection","enabled","interactionEnabled","centerOverDisplay","rollOverDisplay"],this.KJ,n);c.Rb(this.j,["areas"],this.IJ,n)};a.prototype.Za=function(){this.Qy([],this.Hf);this.OW([],this.NP);this.Dd.dispose();this.oc.dispose();this.tk.dispose();this.PP.dispose();
this.OP.dispose();c.$b(this.j,["items","rollOverItems","maps","rollOverMaps"],this.JJ);c.$b(this.j,["fadeInDuration","fadeOutDuration","enabledInVR","enabledInStandard","enabledInSurfaceSelection","enabled","interactionEnabled","centerOverDisplay","rollOverDisplay"],this.KJ);c.$b(this.j,["areas"],this.IJ);this.get("visible")&&this.j.trigger(d.zd);f.prototype.Za.call(this)};a.prototype.JJ=function(){this.set("items",this.Ua.Kp(this.j.get("items",[])));this.set("rollOverItems",this.Ua.Kp(this.j.get("rollOverItems",
[])));this.set("maps",this.Ua.Kp(this.j.get("maps",[])));this.set("rollOverMaps",this.Ua.Kp(this.j.get("rollOverMaps",[])));var a=[].concat(this.get("maps"),this.get("items"),this.get("rollOverMaps"),this.get("rollOverItems"));a.forEach(function(a){a.cya(this.j)}.bind(this));this.get("items").forEach(function(a){a.set("projected",this.j.get("projected"))}.bind(this));this.bg(a);this.Dd.yd(a);this.oc.yd(a);this.tk.yd(a)};a.prototype.KJ=function(){this.set("fadeInDuration",this.j.get("fadeInDuration"));
this.set("fadeOutDuration",this.j.get("fadeOutDuration"));this.set("enabled",this.j.get("enabled",n));this.set("enabledInVR",this.j.get("enabledInVR"));this.set("enabledInStandard",this.j.get("enabledInStandard",n));this.set("enabledInSurfaceSelection",this.j.get("enabledInSurfaceSelection",n));this.set("centerOverDisplay",this.j.get("centerOverDisplay"));this.set("rollOverDisplay",this.j.get("rollOverDisplay",y));this.set("interactionEnabled",this.j.get("interactionEnabled",n))};a.prototype.IJ=function(){var a=
this.j.get("areas");this.PP.yd(a);this.OP.yd(a)};a.prototype.L=function(a){this.oi(a);f.prototype.L.call(this,a);this.zp(a)};a.prototype.zp=function(a){this.set("inVR",a.Db);this.set("surfaceSelection",a.SF);this.set("hotspotsEnabled",a.Xv);if(this.p("items","rollOverItems","maps","rollOverMaps","over","centerOver","inVR","hotspotsEnabled","enabledInVR","enabledInStandard","surfaceSelection","enabledInSurfaceSelection","enabled","interactionEnabled","rollOverDisplay","centerOverDisplay")||this.Q&&
this.Q.p("composedAlpha")){var b=a=y,c=this.get("hotspotsEnabled")&&this.get("enabled")&&(!this.get("inVR")||this.get("enabledInVR"))&&(this.get("inVR")||this.get("enabledInStandard"))&&(!this.get("surfaceSelection")||this.get("enabledInSurfaceSelection"))&&this.Q&&this.Q.get("composedAlpha")>0,e=this.get("interactionEnabled");if(c){a=this.get("centerOver")&&!this.get("inVR");b=this.get("over")||a;a=!this.get("rollOverDisplay")&&!this.get("centerOverDisplay")||this.get("over")&&this.get("rollOverDisplay")||
a&&this.get("centerOverDisplay")!==y&&this.get("rollOverDisplay")}this.get("rollOverItems").forEach(function(a){a.set("visible",b);a.set("beamEnabled",c&&b&&e)});var i=this.get("rollOverItems").length==0;this.get("items").forEach(function(a){a.set("visible",i||!b);a.set("beamEnabled",c&&(i||!b)&&e)});this.get("rollOverMaps").forEach(function(a){a.set("visible",y);a.set("beamEnabled",c&&b&&e)});var f=this.get("rollOverMaps").length==0;this.get("maps").forEach(function(a){a.set("visible",y);a.set("beamEnabled",
c&&(f||!b)&&e)});this.set("visible",a)}if(this.p("visible")){var a=this.get("alpha"),s=this.get("visible")?1:0,u=(this.get("visible")?this.get("fadeInDuration"):this.get("fadeOutDuration"))*Math.abs(a-s);this.qi=new g("linear",[new k("alpha",a,s)],Math.max(u,1));this.Ha();this.get("visible")?this.j.trigger(d.od):this.j.trigger(d.zd)}};a.prototype.oi=function(a){if(this.qi){if(this.qi.Qe())this.qi=r;else{this.qi.fb(a.wd);this.set("alpha",this.qi.Bb("alpha"))}this.Ha()}};a.prototype.Du=function(){this.Zl();
this.trigger(d.T)};a.prototype.zna=function(){this.Zl();this.trigger(d.Ib)};a.prototype.Gu=function(){this.Zl()};a.prototype.Zl=function(){var a=0;this.oc.vn(function(b){var c=0,d;this.Dd.vi(b)?c=100:(d=this.oc.vi(b))&&(c=d.Ih);a=a+c}.bind(this));this.trigger(new i(d.vc,a/this.oc.Yc.length))};a.prototype.sna=function(a){a.data.$X?this.OW([a.source],[]):this.Qy([a.source],[])};a.prototype.rna=function(a){a.data.$X?this.OW([],[a.source]):this.Qy([],[a.source])};a.prototype.Qy=function(a,b){this.jaa(this.Hf,
a,b);this.set("over",this.Hf.length>0)};a.prototype.OW=function(a,b){this.jaa(this.NP,a,b);this.set("centerOver",this.NP.length>0)};a.prototype.jaa=function(a,b,c){b||(b=[]);c||(c=[]);c.forEach(function(b){b=a.indexOf(b);b>=0&&a.splice(b,1)});b.forEach(function(b){a.indexOf(b)<0&&a.push(b)})};return a});
define("cd",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.set("scaleMode",m);this.set("distance",m);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,"horizontalAlign,verticalAlign,scale,scaleMode,distance,playbackPositions".split(","),this.nc,n)},sk:function(){b.$b(this.j,"horizontalAlign,verticalAlign,scale,scaleMode,distance,playbackPositions".split(","),this.nc)},nc:function(){this.set("horizontalAlign",this.j.get("horizontalAlign"));
this.set("verticalAlign",this.j.get("verticalAlign"));this.set("scaleMode",this.j.get("scaleMode"));this.set("distance",this.j.get("distance"));this.set("scale",this.j.get("scale"));this.set("playbackPositions",this.j.get("playbackPositions"))},Zf:function(){this.p("playbackPositions","currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("yaw",this.xa.get("yaw")),this.set("pitch",this.xa.get("pitch")),this.set("roll",this.xa.get("roll")),this.set("rotationX",
this.xa.get("rotationX")),this.set("rotationY",this.xa.get("rotationY")),this.set("hfov",this.xa.get("hfov")),this.set("vfov",this.xa.get("vfov")),this.set("alpha",this.xa.Fh()))}}});
define("hs","require,fg,ih,ll,dv,eg,kO,fs,lj,cd,km".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("dv"),e=a("eg"),g=a("kO"),k=a("fs"),i=a("lj"),p=a("cd"),j=a("km"),l=0,a=b.extend(e,g,k,i,p,function(a){e.call(this);this.set("tag","HotspotImage");this.set("id","hs_image_"+l++);this.set("side",THREE.DoubleSide);this.j=a;this.ph.push(this.j);this.Vd=this.Vd.bind(this)});a.prototype.Sa=function(){e.prototype.Sa.call(this);c.Rb(this.j,["image.levels"],this.Vd,n)};a.prototype.Za=function(){c.$b(this.j,
["image.levels"],this.Vd);e.prototype.Za.call(this)};a.prototype.Vd=function(){this.set("image",this.j.get("image"));this.set("level",j.jva(this.j,this.get("panoramaPixelsPerDegree")))};a.prototype.L=function(a){this.qv();e.prototype.L.call(this,a);this.p("inView")&&this.j.trigger(this.get("inView")?d.od:d.zd)};a.prototype.qv=function(){if(this.p("meshGroup","panoramaId","id")){var a=this.get("meshGroup");a&&a.children.forEach(function(a){f.setAttribute(a,f.Ts,this.get("panoramaId"));f.setAttribute(a,
f.LN,this.get("id"))}.bind(this))}};return a});
define("fJ",["require","fk","a"],function(a){function b(a,b,d){this.Rd=a||new c(0,0,0);this.yg=b||new c(1,0,0);this.Gs=d||new c(0,1,0)}var c=a("fk"),d=a("a");b.prototype.clone=function(){return new b(this.Rd.clone(),this.yg.clone(),this.Gs.clone())};b.prototype.apply=function(a){a.az(this.Rd);a.az(this.yg);a.az(this.Gs)};b.prototype.intersection=function(a,b){var g=d.zs(a.Rd,a.yg),k=d.zs(this.Rd,a.Rd),i=d.zs(this.Rd,this.yg);i.hM(d.zs(this.Rd,this.Gs));g=g.Iv(i);if(!(0==g||b&&0>g))return k=-i.Iv(k)/
g,new c(a.Rd.x+(a.yg.x-a.Rd.x)*k,a.Rd.y+(a.yg.y-a.Rd.y)*k,a.Rd.z+(a.yg.z-a.Rd.z)*k)};b.prototype.fN=function(a,b){var g=d.zs(this.Rd,this.yg),k=d.zs(this.Rd,this.Gs),i=d.zs(this.Rd,a),p=g.xY(),j=k.xY();return b?new c(i.Iv(g)/(p*p),i.Iv(k)/(j*j),0):new c(i.Iv(g)/p,i.Iv(k)/j,0)};return b});
define("ed",[],function(){function a(a){a%=d;0>a&&(a+=d);return g[a*f|0]}function b(a){a%=d;0>a&&(a+=d);return e[a*f|0]}function c(){this.identity()}c.prototype.identity=function(){this.m11=1;this.m21=this.m13=this.m12=0;this.m22=1;this.m32=this.m31=this.m23=0;this.m33=1;this.hf=this.gf=this.ff=0};c.prototype.clone=function(){var a=new c;a.m11=this.m11;a.m12=this.m12;a.m13=this.m13;a.m21=this.m21;a.m22=this.m22;a.m23=this.m23;a.m31=this.m31;a.m32=this.m32;a.m33=this.m33;a.ff=this.ff;a.gf=this.gf;
a.hf=this.hf;return a};c.prototype.concat=function(a){var b=this.m11,c=this.m12,d=this.m13,e=this.m21,f=this.m22,g=this.m23,k=this.m31,u=this.m32,v=this.m33,w=this.ff,x=this.gf,z=this.hf;this.m11=b*a.m11+c*a.m21+d*a.m31;this.m12=b*a.m12+c*a.m22+d*a.m32;this.m13=b*a.m13+c*a.m23+d*a.m33;this.m21=e*a.m11+f*a.m21+g*a.m31;this.m22=e*a.m12+f*a.m22+g*a.m32;this.m23=e*a.m13+f*a.m23+g*a.m33;this.m31=k*a.m11+u*a.m21+v*a.m31;this.m32=k*a.m12+u*a.m22+v*a.m32;this.m33=k*a.m13+u*a.m23+v*a.m33;this.ff=w*a.m11+x*
a.m21+z*a.m31+a.ff;this.gf=w*a.m12+x*a.m22+z*a.m32+a.gf;this.hf=w*a.m13+x*a.m23+z*a.m33+a.hf};c.prototype.translate=function(a,b,c){this.ff+=a;this.gf+=b;this.hf+=c};c.prototype.scale=function(a,b,c){this.m11*=a;this.m12*=b;this.m13*=c;this.m21*=a;this.m22*=b;this.m23*=c;this.m31*=a;this.m32*=b;this.m33*=c;this.ff*=a;this.gf*=b;this.hf*=c};c.prototype.Jn=function(c){var d=a(c),c=b(c),e=this.m12*d+this.m13*c,f=this.m22*c-this.m23*d,g=this.m22*d+this.m23*c,k=this.m32*c-this.m33*d,t=this.m32*d+this.m33*
c,s=this.gf*c-this.hf*d,u=this.gf*d+this.hf*c;this.m12=this.m12*c-this.m13*d;this.m13=e;this.m22=f;this.m23=g;this.m32=k;this.m33=t;this.gf=s;this.hf=u};c.prototype.Vp=function(c){var d=a(c),c=b(c),e=-this.m11*d+this.m13*c,f=this.m21*c+this.m23*d,g=-this.m21*d+this.m23*c,k=this.m31*c+this.m33*d,t=-this.m31*d+this.m33*c,s=this.ff*c+this.hf*d,u=-this.ff*d+this.hf*c;this.m11=this.m11*c+this.m13*d;this.m13=e;this.m21=f;this.m23=g;this.m31=k;this.m33=t;this.ff=s;this.hf=u};c.prototype.Wp=function(c){var d=
a(c),c=b(c),e=this.m11*d+this.m12*c,f=this.m21*c-this.m22*d,g=this.m21*d+this.m22*c,k=this.m31*c-this.m32*d,t=this.m31*d+this.m32*c,s=this.ff*c-this.gf*d,u=this.ff*d+this.gf*c;this.m11=this.m11*c-this.m12*d;this.m12=e;this.m21=f;this.m22=g;this.m31=k;this.m32=t;this.ff=s;this.gf=u};c.prototype.rotate=function(a,b,c){this.Jn(a);this.Vp(b);this.Wp(c)};c.prototype.Rca=function(){var a=this.Zua();if(0==a)return y;var b=this.clone();this.m11=(b.m22*b.m33-b.m23*b.m32)/a;this.m12=(b.m13*b.m32-b.m12*b.m33)/
a;this.m13=(b.m12*b.m23-b.m13*b.m22)/a;this.m21=(b.m23*b.m31-b.m21*b.m33)/a;this.m22=(b.m11*b.m33-b.m13*b.m31)/a;this.m23=(b.m13*b.m21-b.m11*b.m23)/a;this.m31=(b.m21*b.m32-b.m22*b.m31)/a;this.m32=(b.m12*b.m31-b.m11*b.m32)/a;this.m33=(b.m11*b.m22-b.m12*b.m21)/a;this.ff=-(b.ff*this.m11+b.gf*this.m21+b.hf*this.m31);this.gf=-(b.ff*this.m12+b.gf*this.m22+b.hf*this.m32);this.hf=-(b.ff*this.m13+b.gf*this.m23+b.hf*this.m33);return n};c.prototype.Zua=function(){return this.m11*(this.m22*this.m33-this.m23*
this.m32)+this.m12*(this.m23*this.m31-this.m21*this.m33)+this.m13*(this.m21*this.m32-this.m22*this.m31)};c.prototype.az=function(a){var b=a.x*this.m12+a.y*this.m22+a.z*this.m32+this.gf,c=a.x*this.m13+a.y*this.m23+a.z*this.m33+this.hf;a.x=a.x*this.m11+a.y*this.m21+a.z*this.m31+this.ff;a.y=b;a.z=c};for(var d=2*Math.PI,f=18E4/d,e=new Float32Array(180001),g=new Float32Array(180001),k=0;18E4>k;k++)e[k]=Math.cos(k/f),g[k]=Math.sin(k/f);e[18E4]=e[0];g[18E4]=g[0];return c});
define("cU","require,it,gm,cB,fk,fJ,ed,jn".split(","),function(a){var b=a("it"),c=a("gm"),d=a("cB"),f=a("fk"),e=a("fJ"),g=a("ed"),k=a("jn"),i=Math.PI/180,p=180/Math.PI,j=new g,l=new c,q=new e,o=new f;return{get:function(a,b,c,d,e,g,k,p){a=a*i;b=b*i;b=new f(Math.sin(-a)*Math.cos(b),Math.sin(b),Math.cos(-a)*Math.cos(b));j.identity();j.Vp(c*i);j.Wp(e*i);j.Jn(d*i);b.apply(j);if(b.z>0){l.RF(k);l.pea(p);l.nw(g*i);l.project(b);return b}return r},Gza:function(a,b,c){j.identity();j.Jn(-c.dc()*i);j.Wp(-c.Pd()*
i);j.Vp(-c.Zb()*i);o.set(a,b,0);a=c.unproject(o).jca();a.apply(j);return{ma:a.Zb()*p,pitch:a.dc()*p}},GBa:function(a,c,d,e,f,g,l,p,A,K,E,J,B,O){O||(O=k.Vn);B||(B=b.Hk(J,K,E));J||(J=b.On(B,K,E));var N=K*0.5/Math.tan(J*0.5*i),I=N*Math.tan(J*0.5*i)*2,L=N*Math.tan(B*0.5*i)*2;q.Rd.set(+I*0.5,+L*0.5,0);q.yg.set(-I*0.5,+L*0.5,0);q.Gs.set(+I*0.5,-L*0.5,0);j.identity();j.Wp(-A*i);j.Jn(-l*i);j.Vp(p*i);j.translate(0,0,N);j.Wp(-g*i);j.Jn(-f*i);j.Vp(-e*i);j.Vp(d.Zb()*i);j.Wp(d.Pd()*i);j.Jn(d.dc()*i);q.apply(j);
o.set(a,c,0);f=q.intersection(d.unproject(o));e={x:m,y:m,xScaled:m,yScaled:m};if(f&&f.z>0){f=q.fN(f);e.xScaled=e.x=f.x/I;e.yScaled=e.y=f.y/L}if(O!=k.Vn){var G,D;switch(O){case k.Se:G=Math.min(b.On(B,K,E),J);D=Math.min(b.Hk(J,K,E),B);break;case k.tm:G=Math.max(b.On(B,K,E),J);D=Math.max(b.Hk(J,K,E),B);break;case k.Wk:G=J;D=b.Hk(J,K,E);break;case k.ih:G=b.On(B,K,E);D=B}if(G!=J||D!=B){I=N*Math.tan(G*0.5*i)*2;L=N*Math.tan(D*0.5*i)*2;q.Rd.set(+I*0.5,+L*0.5,0);q.yg.set(-I*0.5,+L*0.5,0);q.Gs.set(+I*0.5,-L*
0.5,0);q.apply(j);o.set(a,c,0);if((f=q.intersection(d.unproject(o)))&&f.z>0){f=q.fN(f);e.xScaled=f.x/I;e.yScaled=f.y/L}}}return e},JAa:function(a,b,c,e,g,k,l){l=g*0.5/Math.tan(l*0.5*i);q.Rd.set(+g*0.5,+k*0.5,l);q.yg.set(-g*0.5,+k*0.5,l);q.Gs.set(+g*0.5,-k*0.5,l);j.identity();j.Wp(-e*i);j.Jn(-c*i);j.Vp(-b*i);j.Vp(a.Zb()*i);j.Wp(a.Pd()*i);j.Jn(a.dc()*i);q.apply(j);a=new d(new f(0,0,0),new f(0,0,1));if((a=q.intersection(a))&&a.z>0){a=q.fN(a);return{x:a.x/g,y:a.y/k}}return r}}});
define("y","require,fg,gU,dv,M,hZ,jN".split(","),function(a){var b=a("fg"),c=a("gU"),d=a("dv"),f=a("M"),e=a("hZ"),g=a("jN"),a=b.extend(c,function(){c.call(this);this.set("tag","WebGLObject");this.set("zOrder",0);this.set("webglScene",r);this.set("meshGroup",r);this.set("camera",r)});a.prototype.Si=function(){return[]};a.prototype.Za=function(){d.dispose(this.get("meshGroup"));d.vN(this.get("meshGroup"),r);this.set("meshGroup",r);c.prototype.Za.call(this)};a.prototype.L=function(a){c.prototype.L.call(this,
a);this.set("camera",f.As(a.ye));this.set("webglScene",a.ye);if(!this.get("meshGroup")){this.set("meshGroup",d.qba(this.Si()));this.get("meshGroup").userData.Vwa=this}this.p("webglScene","meshGroup")&&d.vN(this.get("meshGroup"),this.get("webglScene"));this.oi();this.Vl(a);this.uv();this.p("loadingActive","meshGroup")&&e.nd(this.get("meshGroup"),this.get("loadingActive"));this.p("blendingActive","meshGroup")&&g.gea(this.get("meshGroup"),this.get("blendingActive"))};a.prototype.oi=function(){this.p("composedAlpha",
"meshGroup")&&this.yq()};a.prototype.yq=function(){d.xd(this.get("meshGroup"),this.get("composedAlpha"))};a.prototype.Vl=function(){h("Must be overridden in descendants.")};a.prototype.uv=function(){if(this.p("index","meshGroup")){var a=this.get("meshGroup");a&&a.children.forEach(function(a,b,c){d.yN(a,this.get("index")+b/c.length)}.bind(this))}};return a});
define("em",["require","fg","gW","y","dv"],function(a){var b=a("fg"),c=a("gW"),d=a("y"),f=a("dv"),e=new THREE.Matrix4,g=Math.PI/180,a=b.extend(d,function(){d.call(this);this.set("tag","Frame");this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.li=new THREE.Matrix4;this.Pf=new THREE.Matrix4});a.prototype.L=function(a){d.prototype.L.call(this,a)};a.prototype.Vl=function(a){var b=y;this.p("composedTranslationX","composedTranslationY","composedTranslationZ")&&(this.bf.makeTranslation(0.5*-this.get("composedTranslationX")*
c.Kd,0.5*this.get("composedTranslationY")*c.Kd,0.5*this.get("composedTranslationZ")*c.Kd),b=n);this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")&&(this.gc.makeRotationY(-a.ma*g),this.gc.multiply(e.makeRotationX(-this.get("composedDeltaPitch")*g)),this.gc.multiply(e.makeRotationY(this.get("composedDeltaYaw")*g)),this.gc.multiply(e.makeRotationY(a.ma*g)),b=n);this.p("flipHorizontally")&&(this.li.makeScale(this.get("flipHorizontally")?-1:1,1,1),b=n);if(b||this.p("meshGroup"))this.Pf.copy(this.bf),
this.Pf.multiply(this.gc),this.Pf.multiply(this.li),f.bm(this.get("meshGroup"),this.Pf)};return a});
define("lt",["require","fg","iG","kz","jS"],function(a){var b=a("fg"),c=a("iG"),d=a("kz"),f=a("jS"),a=b.extend(f,function(a,b,c,d,p){f.call(this,a.get("url"));this.da=b;this.fa=c;this.X=d;this.ha=p;this.Rma=0!=this.da||0!=this.fa||this.X!=a.get("width")||this.ha!=a.get("height")});a.prototype.Rf=function(){this.Rma?(this.Bja(),this.yo(),this.dy(!!this.te)):f.prototype.Rf.call(this)};a.prototype.QD=function(){f.prototype.QD.call(this);this.tR()};a.prototype.ks=function(){f.prototype.ks.call(this);
this.tR()};f.prototype.dispose=function(){f.prototype.dispose.call(this);this.tR()};a.prototype.Bja=function(){var a=c.ve(this.Nd);this.te=d.sua(a,this.da,this.fa,this.X,this.ha)};a.prototype.tR=function(){this.te&&(d.kM(this.te),this.te=r)};return a});
define("eQ","require,dW,cT,jL,fK,dX,jS,lt,gW,bU,dv,bH,km,hZ,r".split(","),function(a){var b=a("dW"),c=a("cT"),d=a("jL"),f=a("fK"),e=a("dX"),g=a("jS"),k=a("lt"),i=a("gW"),p=a("bU"),j=a("dv"),l=a("bH"),q=a("km"),o=a("hZ"),t=a("r"),s={oua:function(a,b){var c=l.get(a);switch(c){case l.st:case l.mq:case l.Fi:return this.mja(c,a,b);case l.Wn:case l.wm:case l.Xn:return this.oja(c,a,b)}},uua:function(a,b){var c=new g(b.get("posterURL"));return this.B3(a,b,c)},tua:function(a,b){var c=new e;return this.B3(a,
b,c)},B3:function(a,b,d){var e=a.get("hfov"),f=a.get("vfov"),g=a.get("pitch"),k=b.get("width"),b=b.get("url"),a=l.get(a),q=a==l.Xn?2:1,t=a==l.wm?2:1,a=q+t>2?[c.qa,c.Ma]:[c.Qn],s=Math.round(k/q),B=p.ws(d.texture(),new p.Sn(b));o.Rz(B,d);B.visible=n;return a.map(function(a,b){var c=i.tba(e,f,g,1,1,b%q/q,(t-1-Math.floor(b/q))/t,1/q,1/t),c=j.create(c,[B]);c.layers.set(a);o.sN(c,s/e);return c}.bind(this))},qua:function(a){var b=[d.Ma,d.qa,d.mb,d.lb,d.FRONT,d.BACK].map(function(){var b=new e;b.yi(s.Mla(a));
var c=p.ws(b.texture());o.Rz(c,b);c.visible=n;return c}),f=i.sba(1,1),b=j.create(f,b);o.sN(b,256/90);b.layers.set(c.Qn);return b},ZV:{},Mla:function(a){if(!s.ZV[a]){var b=document.createElement("canvas");b.width=b.height=256;var c=b.getContext("2d");c.fillStyle=a;c.fillRect(0,0,b.width,b.height);s.ZV[a]=b}return s.ZV[a]},mja:function(a,e,g){var k=a==l.st?[c.Ma,c.qa]:[c.Qn],p=e.get("flipImageHorizontally");p&&(k=k.reverse());var t=a==l.Fi?1:6*k.length,s=g.get("width")/t,K=g.get("height"),E,J;if(b.qb("TiledImageResourceLevel",
g)){E=g.get("colCount",t)/t;J=g.get("rowCount",1)}else if(this.f9(a,g)){E=Math.ceil(s/f.Yn());J=Math.ceil(K/f.Yn())}else J=E=1;var B=[d.Ma,d.qa,d.mb,d.lb,d.FRONT,d.BACK];return k.map(function(c,d){var f=Array(6);B.forEach(function(k,j){var o=q.rY(e,g,k);if(b.qb("TiledImageResourceLevel",g))f[i.U0.indexOf(k)]=this.ija(o,a,c,k,p,E,J);else{var t=a==l.Fi?0:Math.round((d*B.length+j)*s),x=E>1||J>1||a!=l.Fi?s>256?1:0.5:0;f[i.U0.indexOf(k)]=this.x3(o,E,J,t,0,s,K,x)}}.bind(this));var k=Array.prototype.concat.apply([],
f),t=i.sba(E,J),k=j.create(t,k);k.layers.set(c);o.sN(k,s/90);return k}.bind(this))},oja:function(a,b,d){var e=a==l.Wn?[c.Qn]:[c.qa,c.Ma];b.get("flipImageHorizontally")&&(e=e.reverse());var g=d.get("width"),k=d.get("height"),p=b.get("hfov"),q=b.get("vfov"),t=b.get("pitch"),s=Math.round(g/p/(k/q)),B=Math.round(g/s),O=Math.round(k/Math.round(k/q/(g/p))),N=(a=this.f9(a,d))?Math.ceil(B/f.Yn()):1,I=a?Math.ceil(O/f.Yn()):1;return e.map(function(a,b){var c=this.x3(d,N,I,b%s*B,Math.floor(b/s)*O,B,O),e=i.tba(p,
q,t,N,I,0,0,1,1),c=j.create(e,c);c.layers.set(a);o.sN(c,B/p);return c}.bind(this))},f9:function(a,b){switch(a){case l.st:case l.mq:case l.wm:case l.Xn:return n;case l.Fi:return y;case l.Wn:return t.lca().Hwa<Math.max(b.get("width"),b.get("height"))?n:f.Dj()||t.Xa()?y:t.Jc()==t.Vs?n:y}},x3:function(a,b,c,d,f,g,i,j){j||(j=0);for(var l=[],q=0;q<c;q++)for(var t=f+j+(i-2*j)*q/c,s=f+j+(i-2*j)*(q+1)/c,N=0;N<b;N++){var I=d+j+(g-2*j)*N/b,L=d+j+(g-2*j)*(N+1)/b,I=a?new k(a,I,t,L-I,s-t):new e,L=p.aY(I.texture());
o.Rz(L,I);l.push(L)}return l},ija:function(a,b,c,d,f,i,k){for(var j=[],l=0;l<k;l++)for(var t=0;t<i;t++){var s;s=a?new g(q.hca(a,b,c,d,f,k,l,t)):new e;var O=p.aY(s.texture());o.Rz(O,s);O.visible=y;j.push(O)}return j}};return s});
define("cC","require,fg,ll,em,hS,eQ,hZ".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("em"),f=a("hS"),e=a("eQ"),g=a("hZ"),a=b.extend(d,function(a){d.call(this);this.Sb=a;this.set("tag","SolidFrame");this.Ge=r});a.prototype.Sa=function(){this.Ge=(new f(c.T)).Ci(this.Rf.bind(this));d.prototype.Sa.call(this)};a.prototype.Za=function(){this.Ge.dispose();d.prototype.Za.call(this)};a.prototype.Si=function(){var a=[e.qua(this.Sb)];g.Ln(a,g.Xk);g.Kn(a,g.Rj);this.Ge.yd(a);return a};a.prototype.Rf=function(){this.trigger(c.Ib);
this.trigger(c.T)};return a});
define("dg",["require","ge","gW","dv","hZ"],function(a){var b=a("ge"),c=a("gW"),d=a("dv"),f=a("hZ"),e=Math.PI/180;return{qo:function(){this.set("distance",m);this.set("width",100);this.set("height",100);this.set("offsetX",m);this.set("offsetY",m);this.set("centerX",0);this.set("centerY",0);this.set("roll",0);this.Xi=this.Nq();this.jI=c.hz();this.Ui=new THREE.Matrix4;this.gx=new THREE.Matrix4;this.Cy=new THREE.Matrix4;this.y6=new THREE.Matrix4;this.sg=new THREE.Matrix4;this.li=new THREE.Matrix4;this.Pf=
new THREE.Matrix4},xp:function(a){this.Vl(a)},lI:function(){var a=this.get("meshGroup");return a?d.Eh(a)[0]:r},Si:function(){var a=d.create(this.jI,this.px());f.Kn(a,f.Rj);f.Ln(a,f.Xk);f.Ms(a,b.Lw);f.Qz(a,1);return[a]},Si:function(){return[0].map(function(a){var c=this.px(),a=d.create(this.Xi[a],c);f.Kn(a,f.Rj);f.Ln(a,f.Xk);f.Ms(a,b.Lw);f.Qz(a,1);return a}.bind(this))},Nq:function(){return[c.hz()]},Vl:function(a){var b=y,f=y;this.set("rendererYaw",a.ma);this.set("rendererPitch",a.pitch);this.set("rendererRoll",
a.md);this.set("rendererCameraFOV",a.Bf);this.set("rendererWidth",a.width);this.set("rendererHeight",a.height);this.set("inVR",a.Db);this.p("distance","composedTranslationX","composedTranslationY","composedTranslationZ")&&this.set("z",0==this.get("composedTranslationX")&&0==this.get("composedTranslationY")&&0==this.get("composedTranslationZ")&&this.get("distance")!==m?c.Qv(this.get("distance")):c.Hp());this.p("z")&&(this.Ui.makeTranslation(0,0,-this.get("z")),f=n);a.Bf&&this.p("z","rendererCameraFOV")&&
this.set("rendererHeightZ",2*Math.tan(0.5*a.Bf*e)*this.get("z"));if(a.Kc&&this.p("rendererYaw","rendererPitch","rendererRoll","rendererCameraFOV","rendererWidth","rendererHeight","rendererHeightZ","inVR","centerX","centerY")){this.gx.copy(a.Kc.matrixWorld);var b=this.get("rendererHeightZ"),p=b*a.Kc.aspect,p=0.5*((this.get("centerX")-0.5*a.width)*p/a.width),b=0.5*((0.5*a.height-this.get("centerY"))*b/a.height);this.Cy.makeTranslation(p,b,0);b=n}this.p("roll")&&(this.sg.makeRotationZ(this.get("roll")*
e),b=n);if(a.Bf&&(f||this.p("rendererHeight","inVR","rendererHeightZ","width","height","flipHorizontally")))f=a.Db?512/a.height:1,a=(this.get("flipHorizontally")?-1:1)*this.get("width")*f,f*=this.get("height"),this.li.makeScale(a,f,1),b=n;this.p("width","height","offsetX","offsetY")&&(a=0.5-this.get("offsetX")/this.get("width"),f=this.get("offsetY")/this.get("height")-0.5,this.y6.makeTranslation(a,f,0),b=n);b&&(this.Pf.copy(this.gx),this.Pf.multiply(this.Ui),this.Pf.multiply(this.Cy),this.Pf.multiply(this.sg),
this.Pf.multiply(this.li),this.Pf.multiply(this.y6),d.bm(this.get("meshGroup"),this.Pf))}}});define("jH",["require","fg","eg","dg"],function(a){var b=a("fg"),c=a("eg"),a=a("dg");return b.extend(c,a,function(){c.call(this);this.set("tag","Sprite")})});
define("fl",["require","kA"],function(a){function b(a,c,e,g,k,i){this.yk=c;this.v=document.createElement("canvas");this.v.width=this.yk;this.v.height=this.yk;switch(a){case b.dA:this.Xja(e,g,k,i);break;case b.vG:this.Yja(e,g,k,i)}}var c=a("kA");b.prototype.ad=Q("yk");b.prototype.Od=Q("yk");b.prototype.xg=Q("v");b.prototype.Xja=function(a,b,e,g){for(var k=0.5*this.yk,i=0.5*this.yk,p=0.5*this.yk,j=this.v.getContext("2d"),b=c.xF(b),l=j.createRadialGradient(k,i,0,k,i,p),q=0;q<e.length;q++)l.addColorStop(g[q],
"rgba("+b[0]+","+b[1]+","+b[2]+","+e[q]+")");j.fillStyle=l;j.globalAlpha=a;j.beginPath();j.arc(k,i,p,0,2*Math.PI,n);j.closePath();j.fill()};b.prototype.Yja=function(a,b,e,g){var k=0.5*this.yk,i=0.5*this.yk,p=0.5*this.yk,j=this.v.getContext("2d");j.clearRect(0,0,this.yk,this.yk);for(var l=c.xF(b),q=j.createRadialGradient(k,i,0,k,i,p),b=0;b<e.length;b++)q.addColorStop(g[b],"rgba("+l[0]+","+l[1]+","+l[2]+","+e[b]+")");j.fillStyle=q;j.globalAlpha=a;j.beginPath();for(b=0;6>b;b++)e=45*Math.PI/180+2*Math.PI*
b/6,a=k+Math.cos(e)*p,e=i+Math.sin(e)*p,0==b?j.moveTo(a,e):j.lineTo(a,e);j.closePath();j.fill()};b.dA="circle";b.vG="hexagon";return b});
define("ko","require,fg,ih,ll,cU,gU,cC,jH,fl,dX".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("cU"),e=a("gU"),g=a("cC"),k=a("jH"),i=a("fl"),p=a("dX"),a=b.extend(e,function(a){e.call(this);this.j=a;this.ph.push(this.j);this.Vd=this.Vd.bind(this);this.set("tag","LensFlare");this.set("translationAlpha",0);this.QP=this.Zia();this.vd=this.Dja();this.bg(this.QP.concat([this.vd]))});a.prototype.Sa=function(){e.prototype.Sa.call(this);this.trigger(d.Ib);this.trigger(d.T);c.Rb(this.j,["yaw",
"pitch","bleaching","bleachingDistance"],this.Vd,n)};a.prototype.Za=function(){c.$b(this.j,["yaw","pitch","bleaching","bleachingDistance"],this.Vd,n);e.prototype.Za.call(this)};a.prototype.Vd=function(){this.set("yaw",this.j.get("yaw"));this.set("pitch",this.j.get("pitch"));this.set("bleaching",this.j.get("bleaching"));this.set("bleachingDistance",this.j.get("bleachingDistance"))};a.prototype.L=function(a){e.prototype.L.call(this,a);this.set("rendererYaw",a.ma);this.set("rendererPitch",a.pitch);this.set("rendererRoll",
a.md);this.set("rendererCameraFOV",a.Bf);this.set("rendererWidth",a.width);this.set("rendererHeight",a.height);this.set("inVR",a.Db);if(this.p("composedTranslationX","composedTranslationY","composedTranslationZ")){var b=this.get("composedTranslationX"),c=this.get("composedTranslationY"),d=this.get("composedTranslationZ");this.set("translationAlpha",Math.max(0,1-Math.sqrt(b*b+c*c+d*d)*10))}if(this.p("rendererYaw","rendererPitch","rendererRoll","rendererCameraFOV","rendererWidth","rendererHeight","inVR",
"yaw","pitch","translationAlpha","composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")){var i=a.ma+this.get("composedDeltaYaw"),g=a.pitch+this.get("composedDeltaPitch"),k=a.md+this.get("composedDeltaRoll"),b=this.get("translationAlpha"),d=c=0,p,x,z,F;if(!a.Db)if(i=f.get(this.get("yaw"),this.get("pitch"),i,g,k,a.Bf,a.width,a.height)){x=a.width*0.5;F=a.height*0.5;p=i.x;z=i.y;x=(x-p)*2;F=(F-z)*2;d=Math.sqrt(x*x+F*F);c=Math.sqrt(a.width*a.width,a.height*a.height);a=Math.min(a.width,a.height);c=
Math.max(0,Math.min(0.7,1-d/c))*b;i=this.get("bleaching");a=1-Math.max(0,Math.min(1,d/(a*this.get("bleachingDistance"))));d=i*a*b}for(a=0;a<this.QP.length;a++){b=this.QP[a];b.set("alpha",c);if(c>0){b.set("centerX",p+x*j[a].position);b.set("centerY",z+F*j[a].position)}}this.vd.set("alpha",d)}};a.prototype.Zia=function(){return j.map(function(a){var b=(new i(a.form,a.uw,a.opacity,a.color,a.Uv,a.Vv)).xg(),c=new p;c.yi(b);b=new k;b.set("textureSource",c);b.set("width",a.size);b.set("height",a.size);b.set("offsetX",
a.size*0.5);b.set("offsetY",a.size*0.5);b.set("alpha",0);return b})};a.prototype.Dja=function(){return new g("#ffffff")};var j=[{form:i.vG,position:0.1,size:52,uw:128,opacity:0.8,color:"#FCFCFC",Uv:[1,0.5],Vv:[0,0.866]},{form:i.vG,position:0.2,size:52,uw:128,opacity:0.6,color:"#C8FCC8",Uv:[1,0.5],Vv:[0,0.866]},{form:i.dA,position:0.36,size:112,uw:128,opacity:0.5,color:"#C8C8FC",Uv:[1,0.9,0.6,0],Vv:[0,0.2,0.4,1]},{form:i.dA,position:0.47,size:32,uw:128,opacity:0.3,color:"#96C8AF",Uv:[1,1,0],Vv:[0,
0.9,1]},{form:i.dA,position:0.65,size:52,uw:128,opacity:0.7,color:"#FCFCFC",Uv:[0.7,0.7,0.2,0],Vv:[0,0.1,0.4,1]},{form:i.vG,position:0.88,size:128,uw:128,opacity:0.4,color:"#AF96C8",Uv:[1,0.5],Vv:[0,0.866]},{form:i.dA,position:1,size:33,uw:128,opacity:0.8,color:"#C89696",Uv:[0.8,0.8,0.6,0],Vv:[0,0.2,0.4,1]}];return a});
define("bA",["require","dK"],function(a){function b(a,b,k){f.style.fontFamily=d.ys(b.fontFamily);f.style.fontSize=b.fontSize;f.style.fontWeight=b.fontWeight;f.style.fontStyle=b.fontStyle;f.innerHTML=a;document.body.appendChild(f);var i=new c(Math.ceil(f.clientWidth),Math.ceil(f.clientHeight));document.body.removeChild(f);k&&(k.font=b.fontSize+" "+d.ys(b.fontFamily),a=k.measureText(a).width,i.height*=a/i.width,i.width=a);return i}function c(a,b){this.width=a;this.height=b}var d=a("dK"),f=document.createElement("div");
f.style.display="inline-block";f.style.margin=0;f.style.padding=0;f.style.whiteSpace="nowrap";b.Q0=function(){this.fontFamily="Arial";this.fontSize="12px";this.fontWeight="400";this.fontStyle="normal"};b.hAa=c;return b});
define("kj",["require","bA","dK"],function(a){function b(a,b){this.Qa=a;this.i8=5;this.Qc=b.map(function(b){return new c(a,b)});this.Sx=this.Tx=this.Nh=this.Ce=0;this.YW();this.v=document.createElement("canvas");this.v.width=this.Ce;this.v.height=this.Nh;this.ka=this.v.getContext("2d");this.Z=n;this.td=this.b8=-1}function c(a,b){this.aw=a;this.item=b;this.label=b.get("label");this.fontFamily=this.aw.get("fontFamily","Arial");this.fontSize="12px";this.backgroundColor=this.aw.get("backgroundColor",
"#000000");this.Tda=this.aw.get("rollOverBackgroundColor",this.backgroundColor);this.Fxa=this.aw.get("selectedBackgroundColor",this.Tda);this.Fba=this.aw.get("fontColor","#000000");this.Uda=this.aw.get("rollOverFontColor",b.Fba);this.Gxa=this.aw.get("selectedFontColor",b.Uda);this.Lea=this.Kea=this.Mea=this.Nea=this.height=this.width=this.left=this.top=0;this.status=y;this.QY=n}var d=a("bA"),f=a("dK");c.prototype.Dza=function(){var a=new d.Q0;a.fontFamily=this.fontFamily;a.fontSize=this.fontSize;
a=d(this.label,a);this.Nea=a.width;this.Mea=a.height};c.prototype.Qya=function(a){this.status!=a&&(this.status=a,this.QY=n)};c.prototype.Aua=function(a){if(this.QY){this.QY=y;var b,c;switch(this.status){case "normal":b=this.backgroundColor;c=this.Fba;break;case "over":b=this.Tda;c=this.Uda;break;case "selected":b=this.Fxa,c=this.Gxa}a.clearRect(this.left,this.top,this.width,this.height);a.fillStyle=b;a.fillRect(this.left,this.top,this.width,this.height);a.fillStyle=c;a.font=this.fontSize+" '"+this.fontFamily+
"'";a.font=this.fontSize+(isNaN(this.fontSize)?"":"px")+" "+f.ys(this.fontFamily);a.textBaseline="middle";a.textAlign="center";a.fillText(this.label,Math.round(this.Kea),Math.round(this.Lea));return n}return y};b.prototype.ad=Q("Ce");b.prototype.Od=Q("Nh");b.prototype.xg=Q("v");b.prototype.YW=function(){var a=0,b=0;this.Qc.forEach(function(c){c.Dza();a=Math.max(c.Nea,a);b=Math.max(c.Mea,b)});this.Tx=a+2*this.i8;this.Sx=b+2*this.i8;var c=0,d=0,f=0;this.Qc.forEach(function(a){20<=f&&(f=0,d+=this.Tx,
c=0);a.left=d;a.top=c;a.Kea=d+0.5*this.Tx;a.Lea=c+0.5*this.Sx;a.width=this.Tx;a.height=this.Sx;f+=1;c+=this.Sx}.bind(this));this.Ce=Math.ceil(this.Qc.length/20)*this.Tx;this.Nh=Math.min(20,this.Qc.length)*this.Sx};b.prototype.update=function(){for(var a=y,b=0;b<this.Qc.length;b++)this.Qc[b].Qya(this.b8==b?"over":this.td==b?"selected":"normal"),a=this.Qc[b].Aua(this.ka)||a;return a};b.prototype.Rba=function(a,b){var c=-1;0<=a&&a<this.Ce&&0<=b&&b<this.Nh&&(c=20*Math.floor(a/this.Tx)+Math.floor(b/this.Sx),
c>=this.Qc.length&&(c=-1));return c};b.prototype.RZ=P("b8");b.prototype.WZ=P("td");b.prototype.clear=function(){this.Qc=this.v=this.ka=this.Qa=r};return b});
define("eE","require,fg,ll,hk,kj,dX,kX,bq".split(","),function(a){function b(a,b){var c=(b-a)*0.98;Math.abs(c)<1.0E-5&&(c=0);return b-c}var c=a("fg"),d=a("ll"),f=a("hk"),e=a("kj"),g=a("dX"),k=a("kX"),i=a("bq"),a=c.extend(f,function(a){f.call(this);this.Qa=a;this.v=r;this.sp=this.uj=this.VU=this.gp=m;this.N2=20;this.$d=r;this.zb=this.Qa.get("opacity",0.5);this.QC=this.Qa.get("rollOverOpacity",this.zb);this.dna=1;this.fna=0.66;this.set("tag","MenuButton");this.set("visible",y);this.set("over",y);this.set("centerDistance",
m)});a.prototype.L=function(a){this.ug(a);this.jE(a);this.Zf(a);this.zp(a);f.prototype.L.call(this,a)};a.prototype.ug=function(){if(this.get("visible")){if(!this.v){this.get("textureSource")||this.set("textureSource",new g);this.v=new e(this.Qa,[this.Qa]);this.get("textureSource").yi(this.v.xg());this.set("contentWidth",this.v.ad());this.set("contentHeight",this.v.Od());this.set("hfov",2*Math.atan2(this.v.ad()*0.5,300)*j);this.set("distance",this.Qa.get("distance"))}if(this.v.update()){this.get("textureSource").update();
this.Ha()}this.p("over")&&this.v.RZ(this.get("over")?0:-1)}};a.prototype.jE=function(a){if(this.p("visible"))this.$d=new k("linear",[new i("displayCoef",this.get("visible")?0:1,this.get("visible")?1:0,m)],300);if(this.$d)this.$d.Qe()?this.$d=r:this.$d.fb(a.wd)};a.prototype.Zf=function(a){if(this.get("visible")||this.$d){this.uj=a.ma;this.sp=Math.min(90,Math.max(-90,this.N2+this.N2-a.pitch));if(this.p("visible")&&this.get("visible")){this.set("yaw",a.ma);this.set("pitch",a.pitch)}else{for(;this.uj+
180<this.gp;)this.gp=this.gp-360;for(;this.uj-180>this.gp;)this.gp=this.gp+360;var c=(this.uj-this.gp)/a.wd,d=(this.sp-this.VU)/a.wd,e=Math.atan2(d,c),d=Math.sqrt(d*d+c*c),d=Math.min(d,10*p),c=Math.cos(e)*d,e=Math.sin(e)*d;this.set("yaw",b(this.get("yaw"),this.uj+c));this.set("pitch",b(this.get("pitch"),this.sp+e))}this.gp=this.uj;this.VU=this.sp;e=this.get("yaw")-a.ma;a=this.get("pitch")-a.pitch;this.set("centerDistance",Math.sqrt(e*e+a*a))}};a.prototype.zp=function(){if(!this.get("visible")&&!this.$d)this.set("alpha",
0);else if(this.p("over","centerDistance")||this.$d){var a=this.get("over")?this.QC:this.zb,b=this.fna,c=this.get("centerDistance")/this.get("hfov");if(c<1){b=b+(1-c)*(this.dna-b);a=a+(1-c)*(this.QC-a)}if(this.$d){a=a*this.$d.Bb("displayCoef");b=b*this.$d.Bb("displayCoef")}this.set("alpha",a);this.set("scale",b)}};a.prototype.Jj=function(a){if(a.ae==d.Hi){var b=y;this.get("visible")&&!a.Ch()&&(b=this.Do(a.Jl).length>0);if(b){a.qs(this.Qa);a.rs(this.Qa);a.ri(this.get("distance"))}if(this.get("over")!=
b){this.get("over")&&this.Qa.trigger(d.Mb);this.set("over",b);this.get("over")&&this.Qa.trigger(d.wc)}}else if(a.ae==d.Gi&&this.get("visible")&&!a.Ch()&&this.Do(a.Jl).length>0){a.Yp(this.Qa);this.Qa.trigger(d.U);this.trigger(d.U)}};var p=Math.PI/180,j=180/Math.PI;return a});
define("hn","require,fg,ll,hk,kj,dX,kX,bq".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("hk"),f=a("kj"),e=a("dX"),g=a("kX"),k=a("bq"),a=b.extend(d,function(a,b){d.call(this);this.Qa=a;this.fC=b;this.v=r;this.VU=this.gp=m;this.$d=r;this.zb=this.Qa.get("opacity",0.5);this.QC=this.Qa.get("rollOverOpacity",this.zb);this.set("textureSource",new e);this.v=new f(this.Qa,b);this.set("tag","MenuPanel");this.get("textureSource").yi(this.v.xg());this.set("contentWidth",this.v.ad());this.set("contentHeight",
this.v.Od());this.set("hfov",2*Math.atan2(this.v.ad()*0.5,300)*i);this.set("distance",this.Qa.get("distance"));this.set("overIndex",-1);this.set("selectedIndex",-1);this.K3=y});a.prototype.Sa=function(){d.prototype.Sa.call(this)};a.prototype.Za=function(){d.prototype.Za.call(this)};a.prototype.L=function(a){this.ug(a);this.jE(a);this.Zf(a);d.prototype.L.call(this,a)};a.prototype.ug=function(){this.p("selectedIndex")&&this.v.RZ(this.get("selectedIndex"));this.p("overIndex")&&this.v.RZ(this.get("overIndex"));
if(this.v.update()){this.get("textureSource").update();this.Ha()}};a.prototype.jE=function(a){if(!this.$d&&!this.K3)this.$d=new g("linear",[new k("alpha",0,1,m),new k("scale",0,1,m),new k("yaw",a.ma,this.get("yaw"),m),new k("pitch",a.pitch,this.get("pitch"),m)],300);if(this.$d)if(this.$d.Qe()){this.K3=n;this.$d=r}else this.$d.fb(a.wd)};a.prototype.Zf=function(){if(this.$d){var a=this.get("overIndex")<0?this.zb:this.QC;this.set("alpha",a*this.$d.Bb("alpha"));this.set("scale",this.$d.Bb("scale"));this.set("yaw",
this.$d.Bb("yaw"));this.set("pitch",this.$d.Bb("pitch"))}else if(this.p("overIndex")){a=this.get("overIndex")<0?this.zb:this.QC;this.set("alpha",a)}};a.prototype.Jj=function(a){if(a.ae==c.Hi){var b=-1;if(!a.Ch()){var d=this.Do(a.Jl).filter(function(a){return a.source==this.v.xg()}.bind(this));d.length>0&&(b=this.v.Rba(d[0].x,d[0].y))}if(b>=0){a.qs(this.fC[b]);a.rs(this.fC[b]);a.ri(this.get("distance"))}this.get("overIndex")>=0!=b>=0&&(b>0?this.trigger(c.wc):this.trigger(c.Mb));if(this.get("overIndex")!=
b){this.get("overIndex")>=0&&this.fC[this.get("overIndex")].trigger(c.Mb);this.set("overIndex",b);this.get("overIndex")>=0&&this.fC[this.get("overIndex")].trigger(c.wc)}}else if(a.ae==c.Gi&&!a.Ch()){d=this.Do(a.Jl).filter(function(a){return a.source==this.v.xg()}.bind(this));if(d.length>0){b=this.v.Rba(d[0].x,d[0].y);if(b>=0){d=this.fC[b];this.set("selectedIndex",b);a.Yp(d);a.ri(this.get("distance"));d.trigger(c.U);this.trigger(c.U,{item:d})}}}};var i=180/Math.PI;return a});
define("iH",["require","fg","ll","gU","hn"],function(a){var b=a("fg"),c=a("ll"),d=a("gU"),f=a("hn"),a=b.extend(d,function(a){d.call(this);this.Qa=a;this.Kr=[];this.hy=r;this.set("tag","MenuPanels");this.set("visible",y)});a.prototype.L=function(a){this.p("visible")&&this.get("visible")&&(this.set("yaw",a.ma),this.set("pitch",a.pitch),this.a2(this.Qa));d.prototype.L.call(this,a)};a.prototype.a2=function(a){var a=new f(this.Qa,a.get("children",[])),b=this.get("yaw");this.Oa().forEach(function(a){b+=
a.get("hfov")+g});a.set("yaw",b);a.set("pitch",this.get("pitch"));this.$ga(a);this.appendChild(a)};a.prototype.a9=function(a){this.Oa().slice(a).forEach(function(a){this.Bpa(a);a.remove()}.bind(this));this.Kr=this.Kr.filter(function(a){return 0<=this.Oa().indexOf(a)}.bind(this))};a.prototype.$ga=function(a){a.bind(c.wc,this.n8,this,n);a.bind(c.Mb,this.m8,this,n);a.bind(c.U,this.l8,this,n)};a.prototype.Bpa=function(a){a.unbind(c.wc,this.n8,this,n);a.unbind(c.Mb,this.m8,this,n);a.unbind(c.U,this.l8,
this,n)};a.prototype.n8=function(a){0>this.Kr.indexOf(a.source)&&(this.Kr.push(a.source),1==this.Kr.length&&this.c3())};a.prototype.m8=function(a){a=this.Kr.indexOf(a.source);0<=a&&(this.Kr.splice(a,1),0==this.Kr.length&&this.Kqa())};a.prototype.l8=function(a){var b=a.source,a=a.data.item;a.get("children",[]).length?(this.a9(this.Oa().indexOf(b)+1),this.a2(a)):this.g3()};a.prototype.g3=function(){this.set("visible",y);this.a9(0);this.c3();this.trigger(c.Xs)};a.prototype.c3=function(){this.hy&&(clearTimeout(this.hy),
this.hy=r)};a.prototype.Kqa=function(){this.hy||(this.hy=setTimeout(function(){this.hy=r;this.g3()}.bind(this),e))};var e=3E3,g=1;return a});
define("eI","require,fg,ll,gU,eE,iH".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("gU"),f=a("eE"),e=a("iH"),a=b.extend(d,function(a){d.call(this);this.j=a;this.ph.push(this.j);this.set("tag","Menu");this.set("visible",y);this.yc=new f(this.j);this.yc.bind(c.U,this.Sha,this,y);this.tf=new e(this.j);this.tf.bind(c.Xs,this.Foa,this,y);this.bg([this.yc,this.tf])});a.prototype.Sa=function(){d.prototype.Sa.call(this);this.trigger(c.Ib);this.trigger(c.T)};a.prototype.L=function(a){this.set("visible",
a.Db);if(this.p("visible")){this.yc.set("visible",this.get("visible"));this.tf.set("visible",y)}d.prototype.L.call(this,a)};a.prototype.Sha=function(){this.yc.set("visible",y);this.tf.set("visible",n)};a.prototype.Foa=function(){this.yc.set("visible",this.get("visible"))};return a});
define("lg","require,fg,ll,hk,dX,hS,iL".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("hk"),f=a("dX"),e=a("hS"),g=a("iL"),a=b.extend(d,function(){d.call(this);this.set("tag","CustomPlane");this.set("source",r);this.set("sourceUpdated",y);this.oc=this.Ge=r});a.prototype.Sa=function(){this.Ge=(new e(c.T)).Ci(this.wl.bind(this));this.oc=(new e(c.T)).Kk(this.ap.bind(this));d.prototype.Sa.call(this)};a.prototype.Za=function(){this.Ge.dispose();this.oc.dispose();d.prototype.Za.call(this)};a.prototype.L=
function(a){if(this.p("source","sourceUpdated","useMipmapping","anisotropy")){var b=this.get("textureSource");b||this.set("textureSource",b=new f);this.p("source")&&b.yi(this.get("source"));this.p("sourceUpdated")&&(b.update(),this.set("sourceUpdated",y));this.p("useMipmapping")&&b.EN(this.get("useMipmapping"),this.get("anisotropy"))}d.prototype.L.call(this,a);if(this.p("meshGroup")){a=(a=this.get("meshGroup"))&&a.children||[];if(a.length){this.Ge.yd(a);this.oc.yd(a)}}};a.prototype.wl=function(){this.trigger(c.Ib);
this.trigger(c.T)};a.prototype.ap=function(a,b){var d=0;b.vn(function(a){(a=b.vi(a))&&(d=d+a.Ih)});this.trigger(new g(c.vc,d/b.Yc.length))};return a});
define("hu",["require"],function(){function a(a){this.Sb=this.zB(a.get("surfaceReticleColor"));this.Ym=this.zB(a.get("surfaceReticleSelectionColor"));this.zb=a.get("surfaceReticleOpacity");this.v9=a.get("surfaceReticleSelectionOpacity");this.Nh=this.Ce=128;this.zoa=0.456;this.Aoa=0.088;this.pma=0.18;this.v=document.createElement("canvas");this.v.width=this.Ce;this.v.height=this.Nh;this.ka=this.v.getContext("2d");this.ka.fillStyle="red";this.ka.$va=n;this.ka.fillRect(0,0,this.Ce,this.Nh);this.Tf=this.oQ=
y;this.Vx=this.OJ=m;this.Ct=0}a.prototype.aS=function(a){return this.vk(this.Ym[0]*a+(1-a)*this.Sb[0],this.Ym[1]*a+(1-a)*this.Sb[1],this.Ym[2]*a+(1-a)*this.Sb[2],this.v9*a+(1-a)*this.zb)};a.prototype.zB=function(a){a=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(a);return[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]};a.prototype.vk=function(a,c){return"rgba("+a.join(",")+", "+c+")"};a.prototype.Ia=function(a){this.va!=a&&(this.va=a,this.Z=n)};a.prototype.ad=Q("Ce");a.prototype.Od=Q("Nh");
a.prototype.xg=Q("v");a.prototype.update=function(){if(!this.Z)return y;this.Z=y;this.ka.clearRect(0,0,this.Ce,this.Nh);var a=[this.Ym[0]*this.va+(1-this.va)*this.Sb[0],this.Ym[1]*this.va+(1-this.va)*this.Sb[1],this.Ym[2]*this.va+(1-this.va)*this.Sb[2]],c=this.v9*this.va+(1-this.va)*this.zb;this.ka.strokeStyle=this.vk(a,c);this.ka.fillStyle=this.vk(a,c*this.va);this.ka.beginPath();this.ka.lineWidth=this.Ce*this.Aoa;this.ka.arc(0.5*this.Ce,0.5*this.Ce,this.Ce*this.zoa,0,2*Math.PI,y);this.ka.stroke();
this.ka.beginPath();this.ka.arc(0.5*this.Ce,0.5*this.Ce,this.Ce*this.pma,0,2*Math.PI,y);this.ka.fill();return n};return a});
define("fw","require,fg,ih,ll,gW,gU,lg,hu,cB,fJ".split(","),function(a){function b(a,b,c){this.cN=a;this.cN.bind(f.D("distanceToFloor"),this.L,this,y);this.Vg=b;this.Vg.bind(f.D("yaw"),this.L,this,y);this.Vg.bind(f.D("distance"),this.L,this,y);this.Vg.bind(f.D("enabled"),this.L,this,y);this.Vg.bind(f.D("enabledInSurfaceSelection"),this.L,this,y);this.va=r;this.xi=new k;this.xi.set("hfov",20);this.xi.set("vfov",20);this.xi.set("pitch",-90);this.xi.set("useMipmapping",n);this.xi.set("anisotropy",16);
this.xi.set("source",c.xg());this.xi.set("contentWidth",c.ad());this.xi.set("contentHeight",c.Od());this.L()}var c=a("fg"),d=a("ih"),f=a("ll"),e=a("gW"),g=a("gU"),k=a("lg"),i=a("hu"),p=a("cB"),j=a("fJ"),a=c.extend(g,function(a){g.call(this);this.vJ=this.vJ.bind(this);this.Om=this.Om.bind(this);this.tJ=this.tJ.bind(this);this.set("tag","SurfaceSelector");this.set("reticleVisible",y);this.set("enabled",y);this.N=a;this.UG=[];this.mB=new j;this.Je=new p;this.Kb=new k;this.Kb.set("useMipmapping",n);this.Kb.set("anisotropy",
16);this.Kb.set("hfov",20);this.Kb.set("vfov",20);this.Kb.set("pitch",-90);this.set("reticleCoef",1);this.bg([this.Kb])});a.prototype.Sa=function(){this.tja();g.prototype.Sa.call(this);d.Rb(this.N,["distanceToFloor"],this.vJ,n);d.Rb(this.N,["adjacentPanoramas"],this.Om,n);d.Rb(this.Ua.Tb,["adjacentPanoramaPositionsEnabled"],this.tJ,n);this.trigger(f.Ib);this.trigger(f.T)};a.prototype.Za=function(){g.prototype.Za.call(this);d.$b(this.N,["distanceToFloor"],this.vJ);d.$b(this.N,["adjacentPanoramas"],
this.Om);d.$b(this.Ua.Tb,["adjacentPanoramaPositionsEnabled"],this.tJ);this.C9([])};a.prototype.vJ=function(){var a=this.N.get("distanceToFloor");this.Kb.set("distance",a);var a=e.Qv(a),b=e.BY(a,90),c=e.CY(a,90);this.mB.Rd.set(-b*0.5,-a,-c*0.5);this.mB.yg.set(b*0.5,-a,-c*0.5);this.mB.Gs.set(-b*0.5,-a,c*0.5);this.i9=a/e.Hp()};a.prototype.Om=function(){this.C9(this.N.get("adjacentPanoramas",[]))};a.prototype.tJ=function(){this.Om()};a.prototype.C9=function(a){this.UG.forEach(function(a){a.clear()});
this.UG=a.map(function(a){return new b(this.N,a,this.QU)}.bind(this));a=[];this.Ua.Tb.get("adjacentPanoramaPositionsEnabled")&&(a=a.concat(this.UG.map(function(a){return a.xi})));a=a.concat([this.Kb]);this.bg(a)};a.prototype.L=function(a){g.prototype.L.call(this,a);this.set("enabled",a.SF);this.lX(a);this.ls(a)};a.prototype.lX=function(){if(this.p("enabled","reticleVisible","composedTranslationX","composedTranslationY","composedTranslationZ","composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")){this.Kb.set("alpha",
this.get("reticleVisible")?1:0);this.set("alpha",this.get("enabled")&&!this.get("composedTranslationX")&&!this.get("composedTranslationY")&&!this.get("composedTranslationZ")&&!this.get("composedDeltaYaw")&&!this.get("composedDeltaPitch")&&!this.get("composedDeltaRoll")?1:0);this.naa()}};a.prototype.tja=function(){this.zy=new i(this.Ua.C);this.zy.Ia(this.get("reticleCoef"));this.Kb.set("source",this.zy.xg());this.Kb.set("contentWidth",this.zy.ad());this.Kb.set("contentHeight",this.zy.Od());this.QU=
new i(this.Ua.C);this.QU.Ia(0);this.QU.update(1)};a.prototype.ls=function(a){this.p("reticleCoef")&&this.zy.Ia(this.get("reticleCoef"));this.Kb.set("sourceUpdated",this.zy.update(a.wd))};a.prototype.Jj=function(a){if(!this.get("enabled")||a.Jl.length==0||a.Ch()||a.Uwa())this.set("reticleVisible",y);else{var b=a.Jl[0];this.Je.Rd.set(b.origin.x,b.origin.y,b.origin.z);this.Je.yg.set(b.origin.x+b.direction.x,b.origin.y+b.direction.y,b.origin.z+b.direction.z);if(b=this.mB.intersection(this.Je,n)){var c=
this.mB.fN(b,n),d=2*(0.5-c.x),c=2*(0.5-c.y),e=l*Math.atan2(-d,c),i=-90+l*Math.atan2(Math.sqrt(d*d+c*c),1);if(i<-75||i>-1)this.set("reticleVisible",y);else{var g={x:d*this.i9,y:-c*this.i9};if(!a.Fs()&&!a.Xca())this.set("reticleVisible",y);else{this.set("reticleVisible",n);this.Kb.set("alpha",Math.min(1,(i- -75)/5));this.Kb.set("translationX",g.x);this.Kb.set("translationZ",g.y)}var k=this.Ua.Tb.get("surfaceSelectionHorizontalAngle")*0.5,j=this.Ua.Tb.get("surfaceSelectionVerticalAngle")*0.5,c=this.UG.map(function(a){var b=
a.iva(e),c=a.Fva(i),d=a.pY(g);return{Vg:a.Vg,Hca:b,Wea:c,Aba:d}}).filter(function(a){return a.Hca<k&&a.Wea<j});if(c.length==0)this.set("reticleCoef",0);else{c.sort(function(a,b){return a.Aba-b.Aba});d=c[0].Vg;this.set("reticleCoef",Math.max(0,Math.min(1,(1-c[0].Hca/k)*(1-c[0].Wea/j))));b=this.N.get("distanceToFloor")*Math.sqrt(b.x*b.x+b.y*b.y+b.z*b.z)/-b.y;a.Xca()&&a.Nta([d]);a.ri(b);if(a.ae==f.Gi){a.Yp([d]);this.get("blendingActive")||d.trigger(f.Ii)}else{a.qs([d]);a.Fs()&&a.rs([d]);(b=this.Ua.C.get("displayTooltipInSurfaceSelection")&&
d.get("panorama")&&d.get("panorama").get("label"))&&a.ZL(b,0)}}}}else this.set("reticleVisible",y)}};b.prototype.clear=function(){this.cN.unbind(f.D("distanceToFloor"),this.L,this,y);this.cN=r;this.Vg.unbind(f.D("yaw"),this.L,this,y);this.Vg.unbind(f.D("distance"),this.L,this,y);this.Vg.unbind(f.D("enabled"),this.L,this,y);this.Vg.unbind(f.D("enabledInSurfaceSelection"),this.L,this,y);this.Vg=r};b.prototype.iva=function(a){if(!this.va)return Infinity;a=Math.abs(this.va.ma-a);return a>180?360-a:a};
b.prototype.Fva=function(a){return!this.va?Infinity:Math.abs(this.va.pitch-a)};b.prototype.pY=function(a){if(!this.Oy)return Infinity;var b=a.x-this.Oy.x,a=a.y-this.Oy.y;return Math.sqrt(b*b+a*a)};b.prototype.L=function(){var a=this.Vg.get("yaw"),b=this.Vg.get("distance"),c=this.Vg.get("enabled")&&this.Vg.get("enabledInSurfaceSelection");if(a===m||b===m||!c){this.Oy=this.va=r;this.xi.set("alpha",0)}else{var c=this.cN.get("distanceToFloor"),d=-90+Math.atan2(b,c)*l;this.xi.set("alpha",d<-1?1:0);this.va=
{ma:a,pitch:d};d=-Math.cos(a*q)*b/c;a=-Math.sin(a*q)*b/c;b=e.Qv(c)/e.Hp();this.Oy={x:a*b,y:d*b};this.xi.set("translationX",this.Oy.x);this.xi.set("translationZ",this.Oy.y);this.xi.set("distance",c)}};var l=180/Math.PI,q=Math.PI/180;return a});
define("O","require,fg,ih,ll,iL,gU,hk,fw,hS,km,hi,bi".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("iL"),e=a("gU"),g=a("hk"),k=a("fw"),i=a("hS"),p=a("km"),j=a("hi"),l=a("bi"),q=0,a=b.extend(e,function(a){e.call(this);this.j=a;this.ph.push(this.j);this.uJ=this.uJ.bind(this);this.Ud=this.Ud.bind(this);this.Om=this.Om.bind(this);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("tag","Panorama");this.set("loadingActive",y);this.set("blendingActive",n);this.set("currentTime",
0);this.set("adjacentPanoramas",[]);this.set("preloadEnabled",n);this.set("backgroundPreloadEnabled",n);this.set("surfaceSelectionEnabled",y);this.set("id","panorama_"+q++);this.set("ready",y);this.pK=[];this.tk=this.oc=this.Dd=r;this.qf=new o;this.G8=new t;this.Ora=new k(this.j);this.nk=new t;this.bg([this.qf,this.G8,this.Ora,this.nk])});a.prototype.Sa=function(){this.Dd=(new i(d.T)).Ci(this.wl.bind(this));this.oc=(new i(d.vc)).Kk(this.Hu.bind(this));this.tk=(new i(d.Ib)).Ci(this.Dna.bind(this));
e.prototype.Sa.call(this);c.Rb(this.j,["currentTime"],this.uJ,n);c.Rb(this.j,["frames","overlays","vrMenu","adjacentPanoramas"],this.Ud,n);c.Rb(this.j,["adjacentPanoramas"],this.Om,n)};a.prototype.Za=function(){this.Dd.dispose();this.oc.dispose();this.tk.dispose();e.prototype.Za.call(this);c.$b(this.j,["currentTime"],this.uJ);c.$b(this.j,["frames","overlays","vrMenu","flipImageHorizontally"],this.Ud);c.$b(this.j,["adjacentPanoramas"],this.Om);this.kW()};a.prototype.Ud=function(){function a(b,c,e){b=
f.indexOf(b);return b<0?e:d[b].get(c,e)}function b(c){return a(c,"projected",y)}var c=this.Ua.Kp(this.j.get("frames"));c.forEach(function(a){a.set("panoramaId",this.get("id"));a.set("flipHorizontally",this.j.get("flipImageHorizontally"))}.bind(this));var d=this.j.get("overlays"),e=this.Ua.Kp(d),f=e.slice(),i=e.filter(b).filter(function(b){return a(b,"enabled",n)});this.j.get("vrMenu")&&e.push(this.Ua.Kp(this.j.get("vrMenu")));e.forEach(function(a){a.set("panoramaId",this.get("id"))}.bind(this));this.Dd.yd(c.concat(e));
this.oc.yd(c.concat(e));this.tk.yd(c.concat(i));this.G8.bg(e.filter(b));this.qf.bg(c);this.nk.bg(e.filter(function(a){return!b(a)}));this.set("panoramaPixelsPerDegree",p.Yba(this.j));this.saa()};a.prototype.uJ=function(){this.set("currentTime",this.j.get("currentTime",0))};a.prototype.Om=function(){this.set("adjacentPanoramas",this.j.get("adjacentPanoramas",[]))};a.prototype.wl=function(){this.Zl();this.trigger(d.T)};a.prototype.Dna=function(){this.Zl();this.set("ready",n);this.trigger(d.Ib)};a.prototype.Hu=
function(){this.Zl()};a.prototype.Zl=function(){var a=0;this.oc.vn(function(b){var c=0,d;this.Dd.vi(b)?c=100:(d=this.oc.vi(b))&&(c=d.Ih);a=a+c}.bind(this));this.trigger(new f(d.vc,a/this.oc.Yc.length))};a.prototype.L=function(a){if(a.Db&&!this.iK&&l.Qd()==l.iP.rm)this.bg([this.iK=new g].concat(this.Oa()));this.set("blendingActive",this.get("alpha")<1);this.set("backgroundPreloadEnabled",this.Ua.ib.get("backgroundPreloadEnabled")!==y);this.set("preloadEnabled",a.yF);this.p("adjacentPanoramas","loadingActive",
"preloadEnabled","backgroundPreloadEnabled")&&(this.get("loadingActive")&&this.get("backgroundPreloadEnabled")?this.xra():this.kW());this.p("index")&&this.saa();e.prototype.L.call(this,a)};a.prototype.NY=function(){return p.NY(this.j,this.get("preloadEnabled"))};a.prototype.xra=function(){this.kW();this.pK=this.get("adjacentPanoramas").map(function(a){a=a.get("panorama");return[a,p.Gk(a,this.get("preloadEnabled"))]}.bind(this));this.pK.forEach(function(a){j.cba(a[0],a[1]);j.$M(a[0],1)})};a.prototype.kW=
function(){this.pK.forEach(function(a){j.$M(a[0],-1);j.wxa(a[0],a[1])});this.pK=[]};a.prototype.saa=function(){var a=this.get("index");this.qf.Oa().forEach(function(b,c,d){b.set("panoramaIndex",a);b.set("frameIndex",c);b.set("frameCount",d.length)})};var o=b.extend(e,function(){e.call(this);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("loadingActive",y);this.set("currentTime",0);this.set("tag","Group")});o.prototype.L=function(a){this.Oa().forEach(function(a,b,c){a.set("frontFrame",
c[c.length-1])});e.prototype.L.call(this,a)};var t=b.extend(e,function(){e.call(this);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("loadingActive",y);this.set("currentTime",0);this.set("tag","Group")});return a});
define("bs",["require","fg","em","dv"],function(a){var b=a("fg"),c=a("em"),d=a("dv"),f=0,a=b.extend(c,function(){c.call(this);this.set("tag","PanoramaFrame");this.set("panoramaIndex",0);this.set("frameIndex",0);this.set("frameCount",1);this.set("id","frame_"+f++)});a.prototype.L=function(a){c.prototype.L.call(this,a);this.qv()};a.prototype.uv=function(){if(this.p("panoramaIndex","frameIndex","frameCount","meshGroup")){var a=this.get("meshGroup");if(a){var b=this.get("panoramaIndex"),c=this.get("frameIndex"),
f=this.get("frameCount"),p=a.children.length;a.children.forEach(function(a,e){d.yN(a,b+(e+c/f)/p)}.bind(this))}}};a.prototype.qv=function(){if(this.p("meshGroup","panoramaId","id")){var a=this.get("meshGroup");a&&a.children.forEach(function(a,b){d.setAttribute(a,d.Ts,this.get("panoramaId"));d.setAttribute(a,d.KN,b);d.setAttribute(a,d.yw,this.get("id"))}.bind(this))}};return a});
define("kJ","require,fg,ih,ll,ge,gU,bs,hS,km,eQ,hZ,iL".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("ge"),e=a("gU"),g=a("bs"),k=a("hS"),i=a("km"),p=a("eQ"),j=a("hZ"),l=a("iL"),a=b.extend(g,function(a){g.call(this);this.set("tag","ImagePanoramaFrame");this.w8=n;this.j=a;this.ph.push(this.j);this.xh=this.Ge=this.tk=r;this.DT=[];this.Ud=this.Ud.bind(this);this.$k(["loadingActive","currentTime","panoramaId","panoramaPixelsPerDegree"]);this.bg([this.nk=new q])});a.prototype.Sa=function(){this.tk=
new k(d.T);this.Ge=new k(d.T);this.xh=new k(d.vc);g.prototype.Sa.call(this);c.Rb(this.j,["overlays"],this.Ud,n)};a.prototype.Za=function(){this.tk.dispose();this.Ge.dispose();this.xh.dispose();c.$b(this.j,["overlays"],this.Ud);g.prototype.Za.call(this)};a.prototype.Ud=function(){this.nk.bg(this.Ua.Kp(this.j.get("overlays")));this.iaa()};a.prototype.iaa=function(){this.Ge.yd([].concat(this.DT,this.nk.Oa()));this.xh.yd([].concat(this.DT,this.nk.Oa()))};a.prototype.Si=function(){var a=[],b=[],c=[];i.wY(this.j,
this.w8).forEach(function(d,e){var g=p.oua(this.j,d);if(i.uwa(d)){if(e==0){a=a.concat(g);b=b.concat(g)}j.Ln(g,e==0?j.Xk:j.xG);j.Kn(g,e==0?j.Rj:j.KO)}else{e==0&&(a=a.concat(g));b=b.concat(g);j.Ln(g,j.Xk);j.Kn(g,j.Rj)}j.Ms(g,e==0?f.VO:f.Sj);j.Qz(g,e);c=c.concat(g)}.bind(this));this.tk.yd(a);this.DT=b;this.iaa();this.Ge.Ci(this.wl.bind(this));this.tk.Ci(this.coa.bind(this));this.xh.Kk(this.Hu.bind(this));this.trigger(new l(d.vc,0));return c};a.prototype.coa=function(){this.trigger(d.Ib)};a.prototype.wl=
function(){this.trigger(d.T)};a.prototype.L=function(a){this.w8=a.yF;this.Vsa();g.prototype.L.call(this,a)};a.prototype.Vsa=function(){var a=this.get("frontFrame");if(this.p("frontFrame")||a&&a.p("alpha"))this.nk.set("alpha",!a||a==this?1:1-a.get("alpha"))};a.prototype.Hu=function(){var a=0;this.xh.vn(function(b){var c=0,d;this.Ge.vi(b)?c=100:(d=this.xh.vi(b))&&(c=d.Ih);a=a+c}.bind(this));this.trigger(new l(d.vc,a/this.xh.Yc.length))};var q=b.extend(e,function(){e.call(this);this.$k(["loadingActive",
"panoramaId","panoramaPixelsPerDegree"]);this.set("loadingActive",y);this.set("tag","Group")});return a});
define("jy","require,do,ll,bZ,fu,kT".split(","),function(a){function b(a,b){this.Qb=a;this.F=b;this.pg=y;this.hg=[];this.Ti=this.rx=m;this.Oc=[];this.bQ();this.PQ();this.gL();this.uh()}function c(a,b,c){this.time=a;this.cue=b;this.action=c}var d=a("do"),f=a("ll"),e=a("bZ"),g=a("fu"),k=a("kT");b.prototype.clear=function(){this.PA();this.hg=[];this.MW();this.F=this.Qb=r};b.prototype.bQ=function(){this.F.bind(k.Ld,this.hd,this,n);this.F.bind(f.xc,this.uh,this,n);this.F.bind(f.Ba,this.Jr,this,n)};b.prototype.MW=
function(){this.F.unbind(k.Ld,this.hd,this,n);this.F.unbind(f.xc,this.uh,this,n);this.F.unbind(f.Ba,this.Jr,this,n)};b.prototype.uh=function(){var a=this.F.Pe()!=g.I;if(this.pg!=a)(this.pg=a)?this.gL():this.PA()};b.prototype.Jr=function(){this.xv()};b.prototype.hd=function(){this.xv()};b.prototype.gL=function(){this.Ti=this.rx=0};b.prototype.xv=function(){if(this.F&&this.pg){var a=this.Oc.slice(),b=this.F.zj(),c=b-this.rx;if(c<0){this.Oc=[];this.Ti=0}c=c>=0&&c<2;this.rx=b;var g;for(g=this.Ti;g<this.hg.length;g++)if(this.hg[g].time>
b)break;for(;this.Ti<g;this.Ti++){b=this.hg[this.Ti];if(b.action=="start"){this.Oc=d(this.Oc).union([b.cue]);c&&b.cue.trigger(new e(f.Pk))}else{this.Oc=d(this.Oc).difference([b.cue]);c&&b.cue.trigger(new e(f.Ba))}}(a.length!=this.Oc.length||d(a).intersection(this.Oc).length!=this.Oc.length)&&this.bE()}};b.prototype.PA=function(){if(this.Oc.length>0){this.Oc=[];this.bE()}};b.prototype.bE=function(){this.Qb.trigger(new e(f.Ef,{activeCues:this.Oc.slice()}))};b.prototype.PQ=function(){this.hg=[];var a=
this.Qb.get("cues",[]);d(a).each(function(a){this.hg.push(new c(a.get("startTime",0),a,"start"));this.hg.push(new c(a.get("endTime",Number.POSITIVE_INFINITY),a,"end"))},this);this.hg.sort(function(a,b){return a.time==b.time?a.action==b.start?0:a.action=="start"?-1:1:a.time-b.time})};return b});
define("dU",["require","ll","fu","bZ","kT"],function(a){function b(a,b,c){this.ib=a;this.Qb=b;this.F=c;this.F.Zp(this.Em=this.Qb.get("currentTime",0));this.F.Jd(this.rd=this.ib.get("mute",y));this.F.jc(this.m=this.Qb.get("state",d.I));this.pb=this.F.Aj();this.aha();this.fha();this.co()}var c=a("ll"),d=a("fu"),f=a("bZ"),e=a("kT");b.prototype.clear=function(){this.Cpa();this.Gpa();this.jp();this.F.jc(d.I);this.Qb.set("state",d.I);this.Qb.set("currentTime",0);this.Qb.set("duration",m)};b.prototype.Y7=
function(){var a=this.Qb.get("state",d.I);this.m!=a&&this.F.jc(this.m=a)};b.prototype.X7=function(){var a=this.Qb.get("currentTime",0);this.Em!=a&&this.F.Zp(this.Em=a)};b.prototype.FC=function(){var a=this.ib.get("mute",0);this.rd!=a&&this.F.Jd(this.rd=a)};b.prototype.LC=function(){this.Qb.set("currentTime",this.Em=this.F.zj())};b.prototype.JC=function(){this.Qb.set("duration",this.pb=this.F.Aj())};b.prototype.KC=function(){this.Qb.set("state",this.m=this.F.Pe())};b.prototype.MC=function(){this.Qb.trigger(new f(c.Ba));
this.Qb.get("loop")&&(this.F.Zp(this.Em=0),this.F.jc(this.m=d.O))};b.prototype.aha=function(){this.ib.bind(c.D("mute"),this.FC,this,n)};b.prototype.Cpa=function(){this.ib.unbind(c.D("mute"),this.FC,this,n)};b.prototype.fha=function(){this.Qb.bind(c.D("state"),this.Y7,this,n);this.Qb.bind(c.D("currentTime"),this.X7,this,n)};b.prototype.Gpa=function(){this.Qb.unbind(c.D("state"),this.Y7,this,n);this.Qb.unbind(c.D("currentTime"),this.X7,this,n)};b.prototype.co=function(){this.F.bind(e.Ld,this.LC,this,
n);this.F.bind(e.cg,this.JC,this,n);this.F.bind(c.xc,this.KC,this,n);this.F.bind(c.Ba,this.MC,this,n)};b.prototype.jp=function(){this.F.unbind(e.Ld,this.LC,this,n);this.F.unbind(e.cg,this.JC,this,n);this.F.unbind(c.xc,this.KC,this,n);this.F.unbind(c.Ba,this.MC,this,n)};return b});
define("hT",["require","kT","ll"],function(a){function b(a,b){this.Qb=a;this.F=b;this.CP=[];this.bQ();this.Qf()}a("kT");var c=a("ll");b.prototype.clear=function(){this.Bia();this.MW();this.F=this.Qb=r};b.prototype.bQ=function(){this.F.bind(c.Ef,this.Qf,this,n)};b.prototype.MW=function(){this.F.unbind(c.Ef,this.Qf,this,n)};b.prototype.Qf=function(){this.Qb.set("activeSubtitles",this.CP=this.F.zm)};b.prototype.Bia=function(){this.Qb.get("activeSubtitles")==this.CP&&this.Qb.set("activeSubtitles",this.CP=
[])};return b});
define("da","require,fg,ll,ge,fu,bs,hS,eQ,jy,dU,dv,hZ,hT,kT,iL".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("ge"),f=a("fu"),e=a("bs"),g=a("hS"),k=a("eQ"),i=a("jy"),p=a("dU"),j=a("dv"),l=a("hZ"),q=a("hT"),o=a("kT"),t=a("iL"),a=b.extend(e,function(a){e.call(this);this.j=a;this.ph.push(this.j);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("tag","VideoPanoramaFrame");this.set("frameEmpty",m);this.set("atStart",m);this.Qaa=this.j.get("stereoSphere")||this.j.get("sphere");
this.ab=o.Zg(this.Qaa);this.Yy=[];this.Uu=[];this.xh=this.Ge=this.xf=this.F=r});a.prototype.Sa=function(){this.Ge=(new g(c.T)).Ci(this.wl.bind(this));this.xh=(new g(c.vc)).Kk(this.Hu.bind(this));this.F=new o(this.Ua.ib,this.Qaa);this.kl=new i(this.j.rz(),this.F);this.ca=new p(this.Ua.ib,this.j.rz(),this.F);this.rp=new q(this.j.rz(),this.F);this.co();e.prototype.Sa.call(this)};a.prototype.Za=function(){this.Ge.dispose();this.xh.dispose();this.jp();this.kl.clear();this.kl=r;this.ca.clear();this.ca=
r;this.rp.clear();this.rp=r;this.F.clear();this.xf=this.F=r;e.prototype.Za.call(this)};a.prototype.Si=function(){this.Yy=k.tua(this.j,this.ab);this.uta=l.vw(j.Cs(this.Yy[0])[0]);this.Yy.forEach(function(a){l.Ln(a,l.Xk);l.Kn(a,l.Rj)});if(this.ab.get("posterURL")){this.Uu=k.uua(this.j,this.ab);this.Uu.forEach(function(a){l.Ln(a,l.Xk);l.Kn(a,l.Rj);l.Ms(a,d.VO)})}else this.Uu=[];var a=[].concat(this.Yy,this.Uu);this.Ge.yd(a);this.xh.yd(a);this.trigger(new t(c.vc,0));return a};a.prototype.L=function(a){var b=
this.F.vM();this.set("frameEmpty",b.isEmpty());this.set("atStart",!(this.get("currentTime")>1));e.prototype.L.call(this,a);if(!this.xf||!this.xf.isEqual(b)){this.xf=b;this.uta.yi(this.xf.Zt);this.Ha()}else this.F.Pe()==f.O&&this.Ha()};a.prototype.oi=function(){if(this.p("composedAlpha","meshGroup","frameEmpty","atStart"))if(this.Uu.length&&this.get("frameEmpty")&&this.get("atStart")){this.Uu.forEach(function(a){j.xd(a,this.get("composedAlpha"))}.bind(this));this.Yy.forEach(function(a){j.xd(a,0)}.bind(this))}else{this.Uu.forEach(function(a){j.xd(a,
0)}.bind(this));this.Yy.forEach(function(a){j.xd(a,this.get("composedAlpha"))}.bind(this))}};a.prototype.wl=function(){this.trigger(c.Ib);this.trigger(c.T)};a.prototype.Hu=function(a,b){var d=0;b.vn(function(a){(a=b.vi(a))&&(d=d+a.Ih)});this.trigger(new t(c.vc,d/b.Yc.length))};a.prototype.uh=function(){this.Ha()};a.prototype.hd=function(){this.Ha()};a.prototype.co=function(){this.F.bind(o.Ld,this.hd,this,n);this.F.bind(c.xc,this.uh,this,n)};a.prototype.jp=function(){this.F.unbind(o.Ld,this.hd,this,
n);this.F.unbind(c.xc,this.uh,this,n)};return a});
define("cK","require,fg,ll,hk,jS,hS,iL".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("hk"),f=a("jS"),e=a("hS"),g=a("iL"),a=b.extend(d,function(){d.call(this);this.set("tag","ImagePlane");this.set("url",r);this.oc=this.Dd=r});a.prototype.Sa=function(){this.Dd=(new e(c.T)).Ci(this.wl.bind(this));this.oc=(new e(c.vc)).Kk(this.ap.bind(this));d.prototype.Sa.call(this)};a.prototype.Za=function(){this.Dd.dispose();this.oc.dispose();d.prototype.Za.call(this)};a.prototype.L=function(a){if(this.p("url")){var b=
this.get("url");this.set("textureSource",b?new f(b):r)}d.prototype.L.call(this,a);if(this.p("meshGroup")){a=(a=this.get("meshGroup"))&&a.children||[];if(a.length){this.Dd.yd(a);this.oc.yd(a)}}};a.prototype.wl=function(){this.trigger(c.Ib);this.trigger(c.T)};a.prototype.ap=function(a,b){var d=0;b.vn(function(a){(a=b.vi(a))&&(d=d+a.Ih)});this.trigger(new g(c.vc,d/b.Yc.length))};return a});
define("bo","require,fg,ih,ll,fu,fK,gU,cC,lg,cK,dU,kx,hS,km,dD,it,J,iL,kX,bq,kT".split(","),function(a){function b(a,b){for(var c=a-b;c>180;)c=c-360;for(;c<-180;)c=c+360;return c+b}var c=a("fg"),d=a("ih"),f=a("ll"),e=a("fu");a("fK");var g=a("gU"),k=a("cC"),i=a("lg"),p=a("cK"),j=a("dU"),l=a("kx"),q=a("hS"),o=a("km"),t=a("dD"),s=a("it"),u=a("J"),v=a("iL"),w=a("kX"),x=a("bq"),z=a("kT"),F=Math.PI/180,a=c.extend(g,function(a){g.call(this);this.j=a;this.ph.push(this.j);this.Ud=this.Ud.bind(this);this.$k(["loadingActive",
"currentTime","panoramaPixelsPerDegree"]);this.set("tag","Popup");this.set("inVR",y);this.set("enabledInStandard",n);this.set("interactionEnabled",n);this.set("loadingActive",y);this.set("frameEmpty",n);this.set("state",e.I);this.set("itemVisible","none");this.set("visible",y);this.set("visiblePosition",0);this.set("alpha",0);this.set("over",y);this.set("gazeOver",y);this.set("video",r);this.set("image",r);this.Ad=this.Ea=this.ia=this.oc=this.Dd=r;this.xa=new l;this.fo=this.qr=this.qi=this.xf=this.F=
r});a.prototype.Sa=function(){this.Dd=(new q(f.T)).Ci(this.Du.bind(this));this.oc=(new q(f.vc)).Kk(this.Gu.bind(this));g.prototype.Sa.call(this);this.$ia();this.appendChild(this.Ad);d.Rb(this.j,["playbackPositions","popupDistance","popupMaxHeight","popupMaxWidth","image.levels.url","video","state","visible"],this.Ud,n)};a.prototype.Za=function(){this.Dd.dispose();this.oc.dispose();d.$b(this.j,["playbackPositions","popupDistance","popupMaxHeight","popupMaxWidth","image.levels.url","video","state",
"visible"],this.Ud);this.Xt();this.Uq();this.M3();g.prototype.Za.call(this)};a.prototype.Ud=function(){var a=o.wva(this.j,this.get("panoramaPixelsPerDegree"));this.set("imageURL",a&&a.get("url"));this.set("imageWidth",a&&a.get("width"));this.set("imageHeight",a&&a.get("height"));this.set("video",this.j.get("video"));this.set("state",this.j.get("state"));this.set("visible",this.j.get("visible"));this.set("popupDistance",this.j.get("popupDistance"));this.set("popupMaxWidth",this.j.get("popupMaxWidth"));
this.set("popupMaxHeight",this.j.get("popupMaxHeight"));this.set("playbackPositions",this.j.get("playbackPositions"))};a.prototype.L=function(a){this.Wr=a.ma;this.Vr=a.pitch;this.gE(a);this.Zsa();this.qE(a);this.zp(a);this.Rsa(a);this.Dsa(a);g.prototype.L.call(this,a)};a.prototype.Zsa=function(){if(this.p("playbackPositions","currentTime")){this.xa.Ps(this.get("playbackPositions"));this.xa.Os(this.get("currentTime"));this.set("sourceYaw",this.xa.get("yaw"));this.set("sourcePitch",this.xa.get("pitch"));
this.set("sourceRotationX",this.xa.get("rotationX"));this.set("sourceRotationY",this.xa.get("rotationY"));this.set("sourceRotationZ",this.xa.get("rotationZ"));this.set("sourceHFOV",this.xa.get("hfov"))}};a.prototype.gE=function(){if(this.p("video","imageURL")){var a=[this.Ad];if(this.p("imageURL")){this.XA();this.ia&&a.push(this.ia);this.vD("itemVisible")}if(this.p("video")){this.$A();this.Ea&&a.push(this.Ea);this.vD("itemVisible")}this.Dd.yd(a);this.oc.yd(a);this.bg(a)}};a.prototype.qE=function(){if(this.F){var a=
this.F.vM();this.set("frameEmpty",!!a&&a.isEmpty());if(!this.xf||a&&!this.xf.isEqual(a)){this.xf=a;this.Ea.set("source",this.xf.Zt);this.Ea.set("sourceUpdated",n);this.Ha()}else this.F.Pe()==e.O&&this.Ha()}else this.set("frameEmpty",y)};a.prototype.zp=function(a){this.set("inVR",a.Db);this.set("hotspotsEnabled",a.Xv);this.set("rendererYaw",a.ma);this.set("rendererPitch",a.pitch);this.set("rendererRoll",a.md);this.set("rendererWidth",a.cM);this.set("rendererHeight",a.LE);this.set("rendererHFOV",a.bd);
if(this.p("visible")){var c=this.get("visiblePosition"),d=this.get("visible")?1:0,i=Math.max(1,this.j.get(this.get("visible")?"showDuration":"hideDuration")*Math.abs(d-c)),g=this.j.get(this.get("visible")?"showEasing":"hideEasing");this.qi=new w(g,[new x("position",c,d)],i);this.get("visible")||this.F&&this.F.jc(e.I)}if(this.qi){if(this.qi.Qe()){this.qi=r;if(this.get("visible")){this.j.trigger(f.Mw);this.j.get("autoplay")&&this.F&&this.F.jc(e.O)}else this.j.trigger(f.ot)}else this.qi.fb(a.wd);if(this.qi){this.set("visiblePosition",
this.qi.Bb("position"));this.Ha()}}c=y;if(c=a.Db?this.p("visible"):this.p("rendererYaw","rendererPitch","rendererRoll","rendererWidth","rendererHeight","rendererHFOV","itemVisible","popupMaxWidth","popupMaxHeight","sourceHFOV")){this.set("targetImageScale",this.e5(this.ia,a));this.set("targetVideoScale",this.e5(this.Ea,a));this.set("targetYaw",b(this.get("rendererYaw"),this.get("sourceYaw")));this.set("targetPitch",this.get("rendererPitch"));this.set("targetRotationZ",b(a.Db?0:this.get("rendererRoll"),
this.get("sourceRotationZ")))}if(this.p("visiblePosition","targetScale","targetYaw","targetPitch","targetRoll","popupDistance","hfov")){var d=this.get("visiblePosition"),k=this.get("targetYaw")*d+this.get("sourceYaw")*(1-d),j=this.get("targetPitch")*d+this.get("sourcePitch")*(1-d),l=this.get("sourceRotationX")*(1-d),p=this.get("sourceRotationY")*(1-d),o=this.get("targetRotationZ")*d+this.get("sourceRotationZ")*(1-d),a=Math.min(1,2*d),q=this.get("popupDistance"),t=this.get("sourceHFOV"),c=this.get("targetImageScale")*
d+(1-d),d=this.get("targetVideoScale")*d+(1-d);this.set("alpha",a);this.ia&&this.ia.set("scale",c);this.Ea&&this.Ea.set("scale",d);[].concat(this.Ea?[this.Ea]:[],this.ia?[this.ia]:[]).forEach(function(a){a.set("yaw",k);a.set("pitch",j);a.set("rotationX",l);a.set("rotationY",p);a.set("rotationZ",o);a.set("distance",q);a.set("hfov",t)})}};a.prototype.Rsa=function(a){if(this.p("frameEmpty","state","imageURL","video")){var b="none";this.Ea&&(!this.ia||!this.get("frameEmpty")&&this.get("state")!=e.I)?
b="video":this.ia&&(b="image");this.set("itemVisible",b)}if(this.p("itemVisible")){this.get("itemVisible")!="video"&&this.F&&this.F.jc(e.I);var b=this.ia?this.ia.get("alpha"):0,c=this.Ea?this.Ea.get("alpha"):0,d=this.get("itemVisible")=="image"?1:0,f=this.get("itemVisible")=="video"?1:0,i=this.get("itemVisible")=="video"?1:Math.max(Math.abs(d-b),Math.abs(f-c))*200;this.qr=new w("linear",[new x("imageAlpha",b,d),new x("videoAlpha",c,f)],i)}if(this.qr){this.qr.Qe()?this.qr=r:this.qr.fb(a.wd);if(this.qr){this.ia&&
this.ia.set("alpha",this.qr.Bb("imageAlpha"));this.Ea&&this.Ea.set("alpha",this.qr.Bb("videoAlpha"));this.Ha()}}};a.prototype.Dsa=function(a){if(this.p("gazeOver","inVR")){this.Y2();this.get("inVR")&&this.j.get("lookAwayToHide")&&!this.get("gazeOver")&&this.vra()}if(a.Db&&this.j.get("darkenBackground")&&this.j.get("lookAwayToHide")){if(this.p("visible")&&this.get("visible")){this.Ad.set("alpha",0.8);this.fo=r}if(this.p("gazeOver"))this.fo=new w(this.get("gazeOver")?"linear":"quad_in",[new x("alpha",
this.Ad.get("alpha"),this.get("gazeOver")?0.8:0)],this.get("gazeOver")?300:this.j.get("lookAwayToHideTime"))}else{this.fo=r;this.Ad.set("alpha",a.Db&&this.j.get("darkenBackground")?0.8:0)}if(this.fo){this.fo.Qe()?this.fo=r:this.fo.fb(a.wd);if(this.fo){this.Ad.set("alpha",this.fo.Bb("alpha"));this.Ha()}}};a.prototype.vra=function(){this.Y2();this.bJ=setTimeout(function(){this.bJ=r;this.j.set("visible",y)}.bind(this),this.j.get("lookAwayToHideTime"))};a.prototype.Y2=function(){if(this.bJ){clearTimeout(this.bJ);
this.bJ=r}};a.prototype.e5=function(a,b){if(!a)return 1;var c=this.get("popupMaxWidth","100%"),d=u.Lk(c),e=a.get("contentWidth"),f=a.get("contentHeight"),i=this.get("popupMaxHeight","100%"),g=u.Lk(i),k;if(this.get("inVR")){var j=k=this.get("rendererWidth")*0.5,l=Math.min(b.Bf,80),p=s.Fv(l,k,j),o=this.get("sourceHFOV");k=Math.min(Math.tan(p*(d!==m?d/100:c/k)*0.5*F)/Math.tan(o*0.5*F),Math.tan(l*(g!==m?g/100:i/j)*0.5*F)/Math.tan(s.Fv(o,e,f)*0.5*F))}else{k=this.get("rendererWidth");j=this.get("rendererHeight");
p=Math.min((d!==m?k*d/100:c)/e,(g!==m?j*g/100:i)/f);e=e*p;p=this.get("rendererHFOV");o=this.get("sourceHFOV");k=Math.tan(p*0.5*F)*e/k/Math.tan(o*0.5*F)}return k};a.prototype.XA=function(){this.Xt();if(this.get("imageURL")){this.ia=new p;this.ia.set("url",this.get("imageURL"));this.ia.set("contentWidth",this.get("imageWidth"));this.ia.set("contentHeight",this.get("imageHeight"));this.ia.set("alpha",0)}};a.prototype.Xt=function(){if(this.ia){this.ia.remove();this.ia=r}};a.prototype.$A=function(){this.Uq();
if(this.get("video")){this.Ea=new i;var a=z.Zg(this.get("video"));this.Ea.set("contentWidth",a.get("width"));this.Ea.set("contentHeight",a.get("height"));this.Ea.set("alpha",0);this.F=new z(this.Ua.ib,this.get("video"));this.ca=new j(this.Ua.ib,this.j,this.F);this.co()}};a.prototype.Uq=function(){if(this.Ea){this.jp();this.ca.clear();this.ca=r;this.F.clear();this.xf=this.F=r;this.Ea.remove();this.Ea=r}};a.prototype.$ia=function(){this.M3();this.Ad=new k("#000000")};a.prototype.M3=function(){if(this.Ad){this.Ad.remove();
this.Ad=r}};a.prototype.Du=function(){this.trigger(f.Ib);this.trigger(f.T)};a.prototype.Gu=function(a,b){var c=0;b.vn(function(a){var b=0,d;this.Dd.vi(a)?b=100:(d=this.oc.vi(a))&&(b=d.Ih);c=c+b}.bind(this));this.trigger(new v(f.vc,c/b.Yc.length))};a.prototype.uh=function(){this.Ha()};a.prototype.hd=function(){this.Ha()};a.prototype.Jr=function(){this.j.trigger(f.Ba)};a.prototype.co=function(){this.F.bind(z.Ld,this.hd,this,n);this.F.bind(f.xc,this.uh,this,n);this.F.bind(f.Ba,this.Jr,this,n)};a.prototype.jp=
function(){this.F.unbind(z.Ld,this.hd,this,n);this.F.unbind(f.xc,this.uh,this,n);this.F.unbind(f.Ba,this.Jr,this,n)};a.prototype.Jj=function(a){if(a.ae==f.Hi){if(!a.Ch()&&this.get("visible")){a.Yp(this.j);this.set("over",this.Tl(a));this.set("gazeOver",this.Wra(a))}else this.set("over",y);if(this.get("over")){a.qs(this.j);a.Fs()&&a.rs(this.j);a.ri(this.get("popupDistance"))}if(this.p("over")){this.j.trigger(this.get("over")?f.wc:f.Mb);a.Fs()&&this.j.trigger(this.get("over")?f.Jh:f.Ff)}}else if(a.ae==
f.Gi&&!a.Ch()&&this.get("visible")){a.Yp(this.j);a.ri(this.get("popupDistance"));this.Tl(a)?a.kwa()||this.j.trigger(f.U):this.j.set("visible",y)}};a.prototype.Tl=function(a){return this.J$(a.Jl)};a.prototype.Wra=function(a){a=a.oB;return!!a&&this.J$([a])};a.prototype.J$=function(a){if(this.get("visible"))for(var a=(this.get("itemVisible")=="video"?this.Ea:this.ia).Do(a),b=0;b<a.length;b++){var c=a[b];if(t.cq(c.source,c.x,c.y))return n}return y};return a});
define("cn",["require","fg","gU"],function(a){var b=a("fg"),c=a("gU"),a=b.extend(c,function(){c.call(this);this.Oq&&this.Oq();this.Wj&&this.Wj()});a.prototype.Sa=function(){c.prototype.Sa.call(this);this.qk&&this.qk();this.ny&&this.ny()};a.prototype.Za=function(){this.sk&&this.sk();this.oy&&this.oy();c.prototype.Za.call(this)};a.prototype.L=function(a){this.Zf&&this.Zf(a);c.prototype.L.call(this,a);this.Yl&&this.Yl(a)};return a});
define("fv",["require","ll"],function(a){var b=a("ll");return{Oq:function(){this.set("beamEnabled",y);this.Tf=y;this.Vr=this.Wr=m},Yl:function(a){this.Wr=a.ma;this.Vr=a.pitch},Jj:function(a){if(a.ae==b.Hi){var d=!a.Ch()&&this.Tl(a);if(d){a.qs(this.j);this.j.get("useHandCursor")&&a.rs(this.j);a.ri(this.get("distance"));var f=this.ya(a.$v());f&&a.ZL(f,this.fs(a.$v()))}this.Tf!=d&&(this.Tf=d,this.j.trigger(this.Tf?b.wc:b.Mb),a.Fs()&&this.j.trigger(this.Tf?b.Jh:b.Ff))}else a.ae==b.Gi&&!a.Ch()&&this.Tl(a)&&
(1<this.j.YE(b.U,n).length&&a.Yp(this.j),a.ri(this.get("distance")),this.j.trigger(b.U))},Tl:function(a){return this.get("beamEnabled")&&0<this.vS().Do(a.Jl).length?n:y},ya:function(a){return!a||this.j.get("displayTooltipInTouchScreens")&&this.Ua.C.get("displayTooltipInTouchScreens")!==y?this.j.get("toolTip",""):""},fs:function(a){if(a){var a=this.get("yaw")-this.Wr,b=this.get("pitch")-this.Vr;return Math.sqrt(a*a+b*b)}return 0}}});
define("bC","require,fg,ih,ll,cn,hS,km,fv".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("cn"),e=a("hS"),g=a("km"),a=a("fv"),b=b.extend(f,a,function(a){f.call(this);this.j=a;this.nu=this.SR=this.NS=r;this.ph.push(this.j);this.Ud=this.Ud.bind(this);this.$k(["loadingActive","panoramaPixelsPerDegree"]);this.set("tag","FrameHotspot");this.set("enabled",n);this.set("inVR",y);this.set("inScreenshot",y);this.set("overlaysEnabled",n);this.set("interactionEnabled",n);this.set("contentInteractive",
y);this.set("transparent",y);this.set("centerOverDisplay",y);this.set("loadingActive",y);this.set("visible",y);this.set("loaded",y);this.set("inView",y);this.set("frameHidden",n);this.Ac=this.Im=this.oc=this.Dd=r});b.prototype.Sa=function(){this.Dd=(new e(d.T)).Ci(this.Du.bind(this));this.oc=(new e(d.vc)).Kk(this.Gu.bind(this));this.bja();f.prototype.Sa.call(this);c.Rb(this.j,["url","enabled","image","fadeInDuration","fadeOutDuration","contentInteractive","interactionEnabled","transparent"],this.Ud,
n)};b.prototype.Za=function(){this.Dd.dispose();this.oc.dispose();c.$b(this.j,["url","enabled","image","fadeInDuration","fadeOutDuration","contentInteractive","interactionEnabled","transparent"],this.Ud);this.N3();this.O3();f.prototype.Za.call(this)};b.prototype.Ud=function(){this.set("url",this.j.get("url"));this.Ac.set("url",this.get("url"));this.set("image",this.j.get("image"));this.ia.set("image",this.get("image"));this.ia.set("level",this.get("image")&&g.Oba(this.j,this.get("panoramaPixelsPerDegree")));
this.set("enabled",this.j.get("enabled"));this.set("fadeInDuration",this.j.get("fadeInDuration"));this.set("fadeOutDuration",this.j.get("fadeOutDuration"));this.set("interactionEnabled",this.j.get("interactionEnabled"));this.set("contentInteractive",this.j.get("contentInteractive"));this.set("transparent",this.j.get("transparent"));this.Ha()};b.prototype.L=function(a){this.set("inVR",a.Db);this.set("inScreenshot",a.gF);this.set("hotspotsEnabled",a.Xv);f.prototype.L.call(this,a);this.zp(a)};b.prototype.bja=
function(){this.XA();this.kja();this.jja();var a=[this.ia,this.Im,this.Ac];this.Dd.yd(a);this.oc.yd(a);this.bg(a)};b.prototype.zp=function(){if(this.p("blendingActive","url","inVR","hotspotsEnabled","enabled","interactionEnabled","contentInteractive","composedTranslationX","composedTranslationY","composedTranslationZ")){var a=!(this.get("composedTranslationX")!=0||this.get("composedTranslationY")!=0||this.get("composedTranslationZ")!=0)&&!this.get("blendingActive")&&this.get("hotspotsEnabled")&&this.get("enabled")&&
!this.get("inVR")&&!!this.get("url");this.set("visible",a);this.set("beamEnabled",a&&this.get("interactionEnabled"));this.Ac.set("contentInteractive",a&&this.get("interactionEnabled")&&this.get("contentInteractive"))}this.set("frameHidden",!this.Ac.get("geometryVisible"));if(this.p("visible","loaded","frameHidden","transparent","inScreenshot")){this.get("visible")||this.set("loaded",y);this.ia.set("alpha",this.get("visible")&&(this.get("frameHidden")||!this.get("loaded"))?1:0);this.ia.set("alpha",
1);this.Im.set("alpha",this.get("visible")&&!this.get("frameHidden")&&this.get("loaded")&&!this.get("transparent")&&!this.get("inScreenshot")?1:0);this.Ac.set("alpha",this.get("visible")?1:0);this.Ac.set("transparent",this.get("transparent"));this.set("inView",this.get("visible")&&(this.get("loaded")||this.get("image")));this.Ha()}this.p("inView")&&this.j.trigger(this.get("inView")?d.od:d.zd)};b.prototype.XA=function(){this.Xt();this.ia=new this.nu;this.ia.set("image",this.get("image"));this.ia.set("level",
this.get("image")&&g.Oba(this.j,this.get("panoramaPixelsPerDegree")));this.ia.set("visible",n);this.ia.set("alpha",0);this.set("imagePlane",this.ia)};b.prototype.Xt=function(){if(this.ia){this.ia.remove();this.ia=r;this.set("imagePlane",r)}};b.prototype.jja=function(){this.N3();this.Ac=new this.SR;this.Ac.bind(d.T,this.n4,this,n);this.Ac.set("url",this.get("url"));this.Ac.set("visible",n);this.Ac.set("alpha",1);this.set("framePlane",this.Ac)};b.prototype.N3=function(){if(this.Ac){this.Ac.unbind(d.T,
this.n4,this,n);this.Ac.remove();this.Ac=r;this.set("framePlane",r)}};b.prototype.kja=function(){this.O3();this.Im=new this.NS;this.Im.set("visible",n);this.Im.set("alpha",1);this.set("holePlane",this.Im)};b.prototype.O3=function(){if(this.Im){this.Im.remove();this.Im=r;this.set("holePlane",r)}};b.prototype.vS=Q("Im");b.prototype.n4=function(){this.set("loaded",n);this.Ha()};b.prototype.Du=function(){this.trigger(d.Ib);this.trigger(d.T)};b.prototype.Gu=function(a,b){var c=0;b.vn(function(a){(a=b.vi(a))&&
(c=c+a.Ih)});this.trigger(new ProgressEvent(d.vc,c/b.Yc.length))};return b});
define("ev",["require","fg","gU"],function(a){var b=a("fg"),c=a("gU"),a=b.extend(c,function(){c.call(this);this.set("tag","ComposedCSSObject");this.set("transparent",y);this.set("cssScene",r);this.set("cssSceneOver",r);this.set("cssObject",this.MQ());this.qo&&this.qo();this.Ut&&this.Ut();this.Oq&&this.Oq();this.Wj&&this.Wj()});a.prototype.MQ=function(){var a=new THREE.CSS3DObject;a.matrixAutoUpdate=y;return a};a.prototype.Sa=function(){c.prototype.Sa.call(this);this.qk&&this.qk();this.$B&&this.$B();
this.ny&&this.ny()};a.prototype.Za=function(){this.Zx&&this.Zx();this.oy&&this.oy();this.sk&&this.sk();var a=this.get("cssObject");a&&a.parent&&a.parent.remove(a);this.set("cssScene",r);c.prototype.Za.call(this)};a.prototype.L=function(a){this.Zf&&this.Zf(a);c.prototype.L.call(this,a);this.set("cssScene",a.RE);this.set("cssSceneOver",a.SE);if(this.p("transparent")){var b=this.get("cssObject");b&&b.parent&&b.parent.remove(b)}this.p("cssScene","cssSceneOver","transparent")&&(b=this.get("transparent")?
a.SE:a.RE)&&b.add(this.get("cssObject"));this.oi();this.Uy&&this.Uy(a);this.xp&&this.xp(a);this.uv()};a.prototype.oi=function(){this.p("composedAlpha","meshGroup")&&this.yq()};a.prototype.yq=function(){this.get("cssObject").element.style.display=0<this.get("composedAlpha")?"block":"none"};a.prototype.uv=function(){this.p("index")&&(this.get("cssObject").containerElement.style.zIndex=this.get("index"))};return a});
define("dq",["require","gW","a"],function(a){var b=a("gW"),c=a("a"),d=new THREE.Matrix4,f=Math.PI/180;return{qo:function(){this.set("vertices",m);this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.rk=new THREE.Matrix4;this.Ui=new THREE.Matrix4;this.vl=new THREE.Matrix4},MQ:function(){var a=new THREE.CSS3DQuad;a.matrixAutoUpdate=y;return a},xp:function(a){var g=y;if(this.p("vertices","contentWidth","contentHeight")){var k=this.get("vertices"),g=c.Gp(k[0].get("yaw")*f,k[0].get("pitch")*f).normalize(),
i=c.Gp(k[1].get("yaw")*f,k[1].get("pitch")*f).normalize(),p=c.Gp(k[2].get("yaw")*f,k[2].get("pitch")*f).normalize(),k=c.Gp(k[3].get("yaw")*f,k[3].get("pitch")*f).normalize(),j=this.get("cssObject");j.vertices[0].set(g.x,g.y,-g.z);j.vertices[1].set(i.x,i.y,-i.z);j.vertices[2].set(p.x,p.y,-p.z);j.vertices[3].set(k.x,k.y,-k.z);j.contentWidth=this.get("contentWidth");j.contentHeight=this.get("contentHeight");g=n}i=y;this.p("composedTranslationX","composedTranslationY","composedTranslationZ")&&(this.bf.makeTranslation(0.5*
-this.get("composedTranslationX")*b.Kd,0.5*this.get("composedTranslationY")*b.Kd,0.5*this.get("composedTranslationZ")*b.Kd),i=n);this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")&&(this.gc.makeRotationY(-a.ma*f),this.gc.multiply(d.makeRotationX(-this.get("composedDeltaPitch")*f)),this.gc.multiply(d.makeRotationY(this.get("composedDeltaYaw")*f)),this.gc.multiply(d.makeRotationY(a.ma*f)),i=n);if(i||this.p("meshGroup"))this.vl.copy(this.bf),this.vl.multiply(this.gc),this.get("cssObject").matrix.copy(this.vl),
this.get("cssObject").matrixWorldNeedsUpdate=n;this.set("cameraYaw",a.ma);this.set("cameraPitch",a.pitch);this.set("cameraRoll",a.md);this.set("cameraHfov",a.bd);this.set("cameraWidth",a.width);this.set("cameraHeight",a.height);if(a.Kc&&(i||g||this.p("cameraYaw","cameraPitch","cameraRoll","cameraHfov","cameraWidth","cameraHeight")))this.get("cssObject").projectVertices(a.Kc),this.set("geometryVisible",this.get("cssObject").isVisible),this.p("geometryVisible")&&this.rV()}}});
define("cL","require,ge,gW,dv,hZ,a".split(","),function(a){var b=a("ge"),c=a("gW"),d=a("dv"),f=a("hZ"),e=a("a"),g=new THREE.Matrix4,k=Math.PI/180;return{qo:function(){this.set("distance",m);this.set("vertices",m);this.Xi=r;this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.li=new THREE.Matrix4;this.Pf=new THREE.Matrix4},xp:function(a){this.nta(a);this.Vl(a)},lI:function(){var a=this.get("meshGroup");return a?d.Eh(a)[0]:r},Si:function(){this.Xi||(this.Xi=this.Nq());return[0].map(function(a){var c=
this.px(),a=d.create(this.Xi[a],c);f.Kn(a,f.Rj);f.Ln(a,f.Xk);f.Ms(a,b.Lw);f.Qz(a,1);return a}.bind(this))},nta:function(){if(this.p("vertices")){var a=this.get("meshGroup");if(a){this.Xi=this.Nq();return d.Eh(a).map(function(a,b){d.Zxa(a,this.Xi[b])}.bind(this))}}},Nq:function(){function a(b){return b==0||isNaN(b)||!isFinite(b)}var b=this.get("vertices")||[];if(b.length!=4)return[c.rba(-1,1,1,1,1,1,1,-1,1,-1,-1,1)];var d=e.Gp(b[0].get("yaw")*k,b[0].get("pitch")*k).normalize(),f=e.Gp(b[1].get("yaw")*
k,b[1].get("pitch")*k).normalize(),g=e.Gp(b[2].get("yaw")*k,b[2].get("pitch")*k).normalize(),b=e.Gp(b[3].get("yaw")*k,b[3].get("pitch")*k).normalize(),o=d.clone().hM(g),t=b.clone().hM(f),s=o.clone().hM(t).normalize(),t=(d.y*2*s.x/d.x-2*s.y)/(-g.y+d.y*g.x/d.x);a(t)&&(t=(d.z*2*s.x/d.x-2*s.z)/(-g.z+d.z*g.x/d.x));a(t)&&(t=(d.z*2*s.y/d.y-2*s.z)/(-g.z+d.z*g.y/d.y));var u=(2*s.x-g.x*t)/d.x;a(u)&&(u=(2*s.y-g.y*t)/d.y);a(u)&&(u=(2*s.z-g.z*t)/d.z);o=(f.y*2*s.x/f.x-2*s.y)/(-b.y+f.y*b.x/f.x);a(o)&&(o=(f.z*2*
s.x/f.x-2*s.z)/(-b.z+f.z*b.x/f.x));a(o)&&(o=(f.z*2*s.y/f.y-2*s.z)/(-b.z+f.z*b.y/f.y));var v=(2*s.x-b.x*o)/f.x;a(v)&&(v=(2*s.y-b.y*o)/f.y);a(v)&&(v=(2*s.z-b.z*o)/f.z);d=d.NF(u);f=f.NF(v);g=g.NF(t);b=b.NF(o);return[c.rba(d.x,d.y,-d.z,f.x,f.y,-f.z,g.x,g.y,-g.z,b.x,b.y,-b.z)]},Vl:function(a){var b=y;if(this.p("composedTranslationX","composedTranslationY","composedTranslationZ")){this.bf.makeTranslation(-this.get("composedTranslationX")*0.5*c.Kd,this.get("composedTranslationY")*0.5*c.Kd,this.get("composedTranslationZ")*
0.5*c.Kd);b=n}if(this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")){this.gc.makeRotationY(-a.ma*k);this.gc.multiply(g.makeRotationX(-this.get("composedDeltaPitch")*k));this.gc.multiply(g.makeRotationY(this.get("composedDeltaYaw")*k));this.gc.multiply(g.makeRotationY(a.ma*k));b=n}if(this.p("distance","composedTranslationX","composedTranslationY","composedTranslationZ")){a=this.Q.get("composedTranslationX")==0&&this.Q.get("composedTranslationY")==0&&this.Q.get("composedTranslationZ")==
0&&this.get("distance")!==m?c.Qv(this.get("distance")):c.Hp();this.li.makeScale(a,a,a);b=n}if(b||this.p("meshGroup")){this.Pf.copy(this.bf);this.Pf.multiply(this.gc);this.Pf.multiply(this.li);a=d.Eh(this.get("meshGroup"));d.bm(a[0],this.Pf)}}}});
define("bR",["require","ll"],function(a){var b=a("ll");return{Ut:function(){this.set("visible",y);this.set("inView",y);this.set("url",y);this.set("contentWidth",100);this.set("contentHeight",100);this.set("contentInteractive",y);this.ob=this.sc=r;this.wI=m;this.TL=this.TL.bind(this);this.UL=this.UL.bind(this);this.VL=this.VL.bind(this);this.mu=this.mu.bind(this);this.VS=this.VS.bind(this)},Uy:function(){this.p("cssObject")&&(this.lja(),this.get("cssObject").element.appendChild(this.sc));this.p("url")&&
this.Eqa(this.get("url"));this.p("contentWidth","contentHeight")&&(this.sc.style.width=this.get("contentWidth")+2+"px",this.sc.style.height=this.get("contentHeight")+2+"px");this.p("contentInteractive")&&(this.sc.style.pointerEvents=this.get("contentInteractive")?"auto":"none")},oi:function(){this.p("composedAlpha")&&(0<this.get("composedAlpha")?this.ob&&!this.ob.parentNode&&(this.raa(),this.sc.appendChild(this.ob)):this.ob&&this.ob.parentNode&&this.sc.removeChild(this.ob))},$B:function(){this.trigger(b.Ib)},
Zx:function(){this.Eia()},UL:function(a){a.preventDefault();a.stopImmediatePropagation()},TL:function(){this.Ua.ib.lw(r)},VL:function(a){a.preventDefault();a.stopImmediatePropagation()},mu:function(){this.trigger(b.T)},VS:function(){this.xI=r;this.mu()},lja:function(){this.ob||(this.sc=document.createElement("div"),this.sc.style.position="absolute",this.sc.style.left=this.sc.style.top="-1px",this.get("cssObject").isCSS3DObject&&(this.sc.style.transform="translate(-50%, -50%)"),this.sc.style.overflow=
"hidden",this.sc.style["-webkit-overflow-scrolling"]="touch",this.sc.addEventListener("mouseenter",this.TL,n),this.sc.addEventListener("mousemove",this.UL,n),this.sc.addEventListener("mousewheel",this.VL,n),this.ob=document.createElement("iframe"),this.ob.setAttribute("allow","fullscreen; accelerometer; gyroscope; magnetometer; vr; autoplay; camera; microphone"),this.ob.setAttribute("frameborder","0"),this.ob.setAttribute("scrolling","auto"),this.ob.style.width="100%",this.ob.style.height="100%",
this.ob.addEventListener("load",this.mu,n),0<this.get("composedAlpha")&&this.sc.appendChild(this.ob))},Eia:function(){this.ob&&(this.ob.src="",this.kV(),this.Iq(),this.ob.parentNode&&this.ob.parentNode.removeChild(this.ob),this.ob=r);this.sc&&(this.sc.parentNode&&this.sc.parentNode.removeChild(this.sc),this.sc.removeEventListener("mouseenter",this.TL,n),this.sc.removeEventListener("mousemove",this.UL,n),this.sc.removeEventListener("mousewheel",this.VL,n),this.sc=r)},Eqa:function(a){this.wI!=a&&(this.wI=
a,this.raa())},raa:function(){this.wI?(this.Iqa(),this.Xga(),this.ob.src=this.wI):(this.Iq(),this.kV(),this.ob.src="",this.mu())},Iqa:function(){this.Iq();this.xI=setTimeout(this.VS,3E3)},Iq:function(){this.xI&&(clearTimeout(this.xI),this.xI=r)},Xga:function(){this.kV();this.ob.addEventListener("load",this.mu,n)},kV:function(){this.ob.removeEventListener("load",this.mu,n)}}});
define("ic",["require","dv","ll"],function(a){var b=a("dv"),c=a("ll");return{Ut:function(){this.get("materialConfig").lZ.blending=THREE.NoBlending},$B:function(){this.trigger(c.Ib);this.trigger(c.T)},oi:function(){this.p("meshGroup","composedAlpha")&&b.xd(this.get("meshGroup"),0<this.get("composedAlpha")?0.001:0)}}});
define("hz",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,["playbackPositions","width","height"],this.nc,n)},sk:function(){b.$b(this.j,["playbackPositions","width","height"],this.nc)},nc:function(){this.set("playbackPositions",this.j.get("playbackPositions"));this.set("contentWidth",this.j.get("width"));this.set("contentHeight",this.j.get("height"))},Zf:function(){this.p("playbackPositions",
"currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("vertices",this.xa.zY()));this.p("framePlane","holePlane","imagePlane","vertices")&&this.Oa().forEach(function(a){a.set("vertices",this.get("vertices"));a.set("contentWidth",this.get("contentWidth"));a.set("contentHeight",this.get("contentHeight"))}.bind(this))}}});
define("ho","require,fg,bC,ev,eg,dq,cL,bR,fs,ic,hz".split(","),function(a){var b=a("fg"),c=a("bC"),d=a("ev"),f=a("eg"),e=a("dq"),g=a("cL"),k=a("bR"),i=a("fs"),p=a("ic"),a=a("hz"),j=b.extend(f,g,i,function(){f.call(this);this.set("tag","QuadFrameHotspotImage")}),l=b.extend(d,e,k,function(){d.call(this);this.set("tag","QuadFrameHotspotFrame")}),q=b.extend(f,g,p,function(){f.call(this);this.set("tag","QuadFrameHotspotHole")});return b.extend(c,a,function(a){c.call(this,a);this.nu=j;this.SR=l;this.NS=
q})});
define("iB",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.set("distance",m);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,["vertices","distance","playbackPositions"],this.nc,n)},sk:function(){b.$b(this.j,["vertices","distance","playbackPositions"],this.nc)},nc:function(){this.set("distance",this.j.get("distance"));this.set("vertices",this.j.get("vertices"));this.set("playbackPositions",this.j.get("playbackPositions"))},Zf:function(){this.p("playbackPositions",
"currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("vertices",this.xa.zY()),this.set("alpha",this.xa.Fh()))}}});
define("gY","require,fg,ih,ll,dv,eg,cL,fs,lj,iB,km".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("dv"),e=a("eg"),g=a("cL"),k=a("fs"),i=a("lj"),p=a("iB"),j=a("km"),l=0,a=b.extend(e,g,p,k,i,function(a){e.call(this);this.set("tag","QuadHotspotImage");this.set("id","quad_hs_image_"+l++);this.set("side",THREE.DoubleSide);this.j=a;this.ph.push(this.j);this.Vd=this.Vd.bind(this)});a.prototype.Sa=function(){e.prototype.Sa.call(this);c.Rb(this.j,["image.levels"],this.Vd,n)};a.prototype.Za=
function(){c.$b(this.j,["image.levels"],this.Vd);e.prototype.Za.call(this)};a.prototype.Vd=function(){this.set("image",this.j.get("image"));this.set("level",j.zva(this.j))};a.prototype.L=function(a){this.qv();e.prototype.L.call(this,a);this.p("inView")&&this.j.trigger(this.get("inView")?d.od:d.zd)};a.prototype.qv=function(){if(this.p("meshGroup","panoramaId","id")){var a=this.get("meshGroup");a&&a.children.forEach(function(a){f.setAttribute(a,f.Ts,this.get("panoramaId"));f.setAttribute(a,f.LN,this.get("id"))}.bind(this))}};
return a});
define("gT",["require","ll","fu"],function(a){function b(a,b){this.ib=a;this.Qb=b;this.Ic=y;this.UJ=n;this.XP=this.AU=y;this.EP();this.$T()}var c=a("ll"),d=a("fu");b.prototype.clear=function(){this.x7();this.iV()};b.prototype.xe=function(a){this.Ic!=a&&(this.Ic=a,this.pv())};b.prototype.Hya=function(a){this.UJ!=a&&((this.UJ=a)&&this.x7(),this.pv())};b.prototype.pv=function(){if(!this.Ic||this.UJ)this.Qb.set("state",d.I);else if(this.Qb.get("autoplay")||this.XP)this.XP=y,this.Qb.set("state",d.O)};
b.prototype.$T=function(){if(!this.AU){var a=this.Qb.get("video").get("autoplayTime");a!==m&&this.Qb.get("video").get("autoplayTimeLimit")<(new Date).getTime()&&(a=m);this.Qb.set("currentTime",a);this.XP=a!==m}};b.prototype.x7=function(){this.AU||(this.AU=n,this.Qb.get("state")==d.O?(this.Qb.get("video").set("autoplayTimeLimit",(new Date).getTime()+f),this.Qb.get("video").set("autoplayTime",this.Qb.get("currentTime",0))):this.Qb.get("video").set("autoplayTime",m))};b.prototype.EP=function(){this.Qb.get("video").bind(c.D("autoplayTime"),
this.$T,this,n)};b.prototype.iV=function(){this.Qb.get("video").unbind(c.D("autoplayTime"),this.$T,this,n)};var f=1E3;return b});
define("dF",["require","ll","dD"],function(a){var b=a("ll"),c=a("dD");return{Oq:function(){this.set("beamEnabled",y);this.Tf=y;this.Vr=this.Wr=m},Yl:function(a){this.Wr=a.ma;this.Vr=a.pitch},Jj:function(a){if(a.ae==b.Hi){var c=!a.Ch()&&this.Tl(a);if(c){a.qs(this.j);this.j.get("useHandCursor")&&a.rs(this.j);a.ri(this.get("distance"));var e=this.ya(a.$v());e&&a.ZL(e,this.fs(a.$v()))}this.Tf!=c&&(this.Tf=c,this.j.trigger(this.Tf?b.wc:b.Mb),a.Fs()&&this.j.trigger(this.Tf?b.Jh:b.Ff))}else a.ae==b.Gi&&
!a.Ch()&&this.Tl(a)&&(1<this.j.YE(b.U,n).length&&a.Yp(this.j),a.ri(this.get("distance")),this.j.trigger(b.U))},Tl:function(a){if(this.get("beamEnabled"))for(var a=this.vS().Do(a.Jl),b=0;b<a.length;b++){var e=a[b];if(c.cq(e.source,e.x,e.y))return n}return y},ya:function(a){return!a||this.j.get("displayTooltipInTouchScreens")&&this.Ua.C.get("displayTooltipInTouchScreens")!==y?this.j.get("toolTip",""):""},fs:function(a){if(a){var a=this.get("yaw")-this.Wr,b=this.get("pitch")-this.Vr;return Math.sqrt(a*
a+b*b)}return 0}}});
define("dT","require,fg,ih,ll,fu,kT,cn,gT,hS,km,dF,iL,kX,bq".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("fu"),e=a("kT"),g=a("cn"),k=a("gT"),i=a("hS"),p=a("km"),j=a("dF"),l=a("iL"),q=a("kX"),o=a("bq"),a=b.extend(g,j,function(a){g.call(this);this.j=a;this.xX=this.nu=r;this.ph.push(this.j);this.Ud=this.Ud.bind(this);this.$k(["loadingActive","currentTime","panoramaPixelsPerDegree"]);this.set("tag","VideoHotspot");this.set("enabled",n);this.set("inVR",y);this.set("overlaysEnabled",n);
this.set("enabledInVR",n);this.set("enabledInStandard",n);this.set("interactionEnabled",n);this.set("centerOverDisplay",y);this.set("loadingActive",y);this.set("frameEmpty",n);this.set("state",f.I);this.set("itemVisible","none");this.set("blending",0);this.set("chromaColor",m);this.set("chromaThreshold",0);this.set("chromaSmoothing",0);this.Ea=this.ia=this.oc=this.Dd=r;this.yX=y;this.Ao=[]});a.prototype.Sa=function(){this.Dd=(new i(d.T)).Ci(this.Du.bind(this));this.oc=(new i(d.vc)).Kk(this.Gu.bind(this));
this.WP=new k(this.Ua.ib,this.j);g.prototype.Sa.call(this);c.Rb(this.j,["blending","chromaColor","chromaThreshold","chromaSmoothing","distance","scaleMode","image.levels","video.levels","enabled","enabledInStandard","enabledInVR","fadeInDuration","fadeOutDuration","interactionEnabled","state","videoVisibleOnStop"],this.Ud,n)};a.prototype.Za=function(){this.WP.clear();this.Dd.dispose();this.oc.dispose();c.$b(this.j,["blending","chromaColor","chromaThreshold","chromaSmoothing","distance","scaleMode",
"image.levels","video.levels","enabled","enabledInStandard","enabledInVR","fadeInDuration","fadeOutDuration","interactionEnabled","state","videoVisibleOnStop"],this.Ud);this.Xt();this.Uq();g.prototype.Za.call(this)};a.prototype.Ud=function(){this.set("image",this.j.get("image"));this.set("imageLevel",p.Hva(this.j,this.get("panoramaPixelsPerDegree")));this.set("video",this.j.get("video"));this.set("videoLevel",e.Zg(this.get("video")));this.set("enabled",this.j.get("enabled"));this.set("enabledInStandard",
this.j.get("enabledInStandard"));this.set("enabledInVR",this.j.get("enabledInVR"));this.set("fadeInDuration",this.j.get("fadeInDuration"));this.set("fadeOutDuration",this.j.get("fadeOutDuration"));this.set("interactionEnabled",this.j.get("interactionEnabled"));this.set("state",this.j.get("state"));this.set("videoVisibleOnStop",this.j.get("videoVisibleOnStop"));this.set("blending",this.j.get("blending"));this.set("chromaColor",this.j.get("chromaColor"));this.set("chromaThreshold",this.j.get("chromaThreshold"));
this.set("chromaSmoothing",this.j.get("chromaSmoothing"))};a.prototype.L=function(a){this.set("inVR",a.Db);this.set("hotspotsEnabled",a.Xv);this.gE();this.fE();g.prototype.L.call(this,a);this.pv(a);this.qE();this.zp(a)};a.prototype.gE=function(){if(this.p("video","videoLevel","image","imageLevel")){var a=[];if(this.p("image","imageLevel")){this.XA();this.ia&&a.push(this.ia)}if(this.p("video","videoLevel")){this.$A();this.Ea&&a.push(this.Ea)}this.bg(a);this.Dd.yd(a);this.oc.yd(a)}};a.prototype.fE=
function(){this.p("video","videoLevel","image","imageLevel","blending","chromaColor","chromaThreshold","chromaSmoothing")&&this.Oa().forEach(function(a){a.set("blending",this.get("blending"));a.set("chromaColor",this.get("chromaColor"));a.set("chromaThreshold",this.get("chromaThreshold"));a.set("chromaSmoothing",this.get("chromaSmoothing"))}.bind(this))};a.prototype.pv=function(){this.p("video","composedAlpha","enabledInVR","enabledInStandard","enabled","inVR")&&this.WP.xe(this.get("composedAlpha")>
0&&this.get("hotspotsEnabled")&&this.get("enabled")&&(!this.get("inVR")||this.get("enabledInVR"))&&(this.get("inVR")||this.get("enabledInStandard")));this.p("blendingActive")&&this.WP.Hya(this.get("blendingActive"))};a.prototype.qE=function(){this.set("frameEmpty",!this.Ea||this.Ea.get("frameEmpty"))};a.prototype.zp=function(a){var b=this.get("itemVisible");if(this.p("frameEmpty","state","image","video","inVR","hotspotsEnabled","enabledInVR","enabledInStandard","enabled","interactionEnabled")){var c=
"none";if(this.get("hotspotsEnabled")&&this.get("enabled")&&(!this.get("inVR")||this.get("enabledInVR"))&&(this.get("inVR")||this.get("enabledInStandard"))){this.Ea&&(!this.ia||!this.get("frameEmpty")&&(this.get("state")!=f.I||this.yX&&this.get("videoVisibleOnStop")))?c="video":this.ia&&(c="image");if(this.get("state")!=f.I)this.yX=n}this.set("itemVisible",c);this.set("beamEnabled",c!="none"&&this.get("interactionEnabled"))}if(this.p("itemVisible")){var c=this.get("itemVisible")!="none",e=b!="none",
b=c==e?100:c?this.get("fadeInDuration"):this.get("fadeOutDuration");c!=e&&this.j.trigger(c?d.od:d.zd);var e=this.ia?this.ia.get("alpha"):0,g=this.Ea?this.Ea.get("alpha"):0,c=[{xw:g,image:e}];if(this.get("itemVisible")=="video"){c.push({xw:1,image:e,time:b*(1-g)});c.push({xw:1,image:0,time:50*(e-0)})}else if(this.get("itemVisible")=="image"){c.push({xw:g,image:1,time:b*(1-e)});c.push({xw:0,image:1,time:50*(g-0)})}else c.push({xw:0,image:0,time:Math.max(g,e,1/b)*b});this.Ao=[];for(b=1;b<c.length;b++)c[b].time>
0&&this.Ao.push(new q("linear",[new o("imageAlpha",c[b-1].image,c[b].image),new o("videoAlpha",c[b-1].xw,c[b].xw)],c[b].time))}if(this.Ao.length>0){this.Ao[0].Qe()?this.Ao.shift():this.Ao[0].fb(a.wd);if(this.Ao.length>0){this.ia&&this.ia.set("alpha",this.Ao[0].Bb("imageAlpha"));this.Ea&&this.Ea.set("alpha",this.Ao[0].Bb("videoAlpha"));this.Ha()}}};a.prototype.XA=function(){this.Xt();if(this.get("image")&&this.get("imageLevel")){this.ia=new this.nu;this.ia.set("image",this.get("image"));this.ia.set("level",
this.get("imageLevel"));this.ia.set("visible",n);this.ia.set("alpha",0);this.ia.set("side",THREE.DoubleSide)}};a.prototype.Xt=function(){if(this.ia){this.ia.remove();this.ia=r}};a.prototype.$A=function(){this.Uq();if(this.get("video")&&this.get("videoLevel")){this.Ea=new this.xX;this.Ea.set("scriptObject",this.j);this.Ea.set("video",this.get("video"));this.Ea.set("level",this.get("videoLevel"));this.Ea.set("visible",n);this.Ea.set("alpha",0);this.Ea.set("side",THREE.DoubleSide)}};a.prototype.Uq=function(){if(this.Ea){this.Ea.remove();
this.Ea=r}};a.prototype.Du=function(){this.trigger(d.Ib);this.trigger(d.T)};a.prototype.Gu=function(a,b){var c=0;b.vn(function(a){(a=b.vi(a))&&(c=c+a.Ih)});this.trigger(new l(d.vc,c/b.Yc.length))};a.prototype.vS=function(){return this.get("itemVisible")=="video"?this.Ea:this.ia};return a});
define("fi","require,ll,fu,bU,dv,fK,jy,dU,dX,hT,kT".split(","),function(a){var b=a("ll"),c=a("fu"),d=a("bU"),f=a("dv");a("fK");var e=a("jy"),g=a("dU"),k=a("dX"),i=a("hT"),p=a("kT");return{Ut:function(){this.set("visible",y);this.set("inView",y);this.set("frameEmpty",n);this.set("blending",0);this.set("chromaColor",m);this.set("chromaThreshold",0);this.set("chromaSmoothing",0);this.set("scriptObject",r);this.set("video",r);this.set("level",r);this.set("loop",y);this.set("side",m);this.ab=this.Ea=r;
this.yX=y;this.qL=this.xf=this.rp=this.ca=this.kl=this.F=r},Zx:function(){this.Uq()},Uy:function(){this.ota();this.fE();this.qE()},ota:function(){if(this.p("scriptObject","video","level")){this.Uq();this.Ea=this.get("video");this.ab=this.get("level");this.j=this.get("scriptObject");this.$A()}},fE:function(){if(this.p("video","blending","chromaColor","chromaThreshold","chromaSmoothing","side")&&this.Ea){var a=new d.Sn(this.Ea.Bj());a.ts=this.get("blending");a.sn=this.get("chromaColor");a.OE=this.get("chromaThreshold");
a.NE=this.get("chromaSmoothing");a.side=this.get("side");this.set("materialConfig",a)}},oi:function(){this.p("visible","composedAlpha","image","state")&&this.set("inView",this.get("visible")&&this.get("composedAlpha")>0);this.p("composedAlpha","meshGroup","inView")&&f.xd(this.get("meshGroup"),this.get("inView")?this.get("composedAlpha"):0)},qE:function(){var a=this.F&&this.F.vM(),b=!!a&&a.isEmpty();if(b&&!this.get("frameEmpty")&&this.F.Pe()==c.O&&this.j.get("loop")){a=this.xf;b=y}this.set("frameEmpty",
b);if(!this.xf||a&&!this.xf.isEqual(a)){this.xf=a;this.qL.yi(this.xf.Zt);this.qL.update();this.Ha()}else this.F.Pe()==c.O&&this.Ha()},$A:function(){if(this.Ea&&this.ab&&this.j){this.set("textureSource",this.qL=new k);this.set("contentWidth",this.ab.get("width"));this.set("contentHeight",this.ab.get("height"));this.set("alpha",0);this.F=new p(this.Ua.ib,this.Ea);this.F.Nxa();this.kl=new e(this.j,this.F);this.ca=new g(this.Ua.ib,this.j,this.F);this.rp=new i(this.Ua.Tb.get("panorama"),this.F);this.co();
this.trigger(b.Ib);this.trigger(b.T)}},Uq:function(){if(this.F){this.set("textureSource",this.qL=r);this.jp();this.ca.clear();this.ca=r;this.kl.clear();this.kl=r;this.rp.clear();this.rp=r;this.F.clear();this.xf=this.F=r;this.set("frameEmpty",n);this.ab=this.Ea=r}},co:function(){this.F.bind(p.Ld,this.hd,this,n);this.F.bind(b.xc,this.uh,this,n)},jp:function(){this.F.unbind(p.Ld,this.hd,this,n);this.F.unbind(b.xc,this.uh,this,n)},uh:function(){this.Ha()},hd:function(){this.Ha()}}});
define("kW",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.set("distance",m);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,["playbackPositions","distance"],this.nc,n)},sk:function(){b.$b(this.j,["playbackPositions","distance"],this.nc)},nc:function(){this.set("distance",this.j.get("distance"));this.set("playbackPositions",this.j.get("playbackPositions"))},Zf:function(){this.p("playbackPositions","currentTime")&&
(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("vertices",this.xa.zY()),this.set("alpha",this.xa.Fh()));this.p("video","image","vertices","distance")&&this.Oa().forEach(function(a){a.set("vertices",this.get("vertices"));a.set("distance",this.get("distance"))}.bind(this))}}});
define("hQ","require,fg,dT,eg,cL,fs,fi,kW".split(","),function(a){var b=a("fg"),c=a("dT"),d=a("eg"),f=a("cL"),e=a("fs"),g=a("fi"),a=a("kW"),k=b.extend(d,f,e,function(){d.call(this);this.set("tag","QuadVideoHotspotImage")}),i=b.extend(d,f,g,function(){d.call(this);this.set("tag","QuadVideoHotspotVideo")});return b.extend(c,a,function(a){c.call(this,a);this.nu=k;this.xX=i})});
define("iq","require,fg,ih,fu,hL,kA,r".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("fu"),f=a("hL"),e=a("kA"),g=a("r"),a=b.extend(f,function(a){f.call(this);this.j=a;this.rh=this.rh.bind(this);this.sh=this.sh.bind(this);this.Pi()});a.prototype.Sa=function(){f.prototype.Sa.call(this);this.j.set("state",this.j.get("startState"));c.Rb(this.j,["color","speed","intensity","size","opacity","maxDistance","farPlaneDistance","particleCount","farPlaneParticleCount"],this.rh,n);c.Rb(this.j,["state"],this.sh,
n)};a.prototype.Za=function(){c.$b(this.j,["color","speed","intensity","size","opacity","maxDistance","farPlaneDistance","particleCount","farPlaneParticleCount"],this.rh);c.$b(this.j,["state"],this.sh);this.j.set("state",d.I);f.prototype.Za.call(this)};a.prototype.rh=function(){this.Pi();this.BK()};a.prototype.sh=function(){this.mK=this.j.get("state");this.Ha()};a.prototype.Pi=function(){f.prototype.Pi.call(this);var a,b;if(g.we()){this.bu=this.Lm=4;this.Nu=2400;this.cu=1200;a=1.5;b=1.6}else{this.Lm=
2;this.bu=4;this.Nu=4800;this.cu=2400;b=a=1}var c=this.j.get("intensity",0.5);this.Sb=e.xF(this.j.get("color","#ffffff"));this.VC=this.j.get("opacity",0.25)*0.24+0.01;this.VC=this.VC*2;this.Mr=(c*(0.37-0.17)+0.17)*a;a=(this.j.get("speed",0.5)*(0.09-0.02)+0.02)/this.Mr*b;this.hC=a*0.9;this.xu=a*1.1;this.Nu=Math.round(this.j.get("particleCount",this.Nu)*c);this.cu=Math.round(this.j.get("farPlaneParticleCount",this.cu)*c);this.gJ=0;this.sl=2;this.Mm=-2;this.OT=0;this.yA=0.75;this.gB=0.5;this.II=this.j.get("initialState");
this.dL=this.j.get("startDuration");this.iL=this.j.get("stopDuration");this.Lm=this.j.get("maxDistance",this.Lm);this.bu=this.j.get("farPlaneDistance",this.bu);this.Gsa()};a.prototype.IH=function(){var a=new THREE.MeshBasicMaterial;a.color=new THREE.Color(this.Sb[0]/255,this.Sb[1]/255,this.Sb[2]/255);a.side=THREE.FrontSide;a.transparent=n;a.depthTest=y;a.needsUpdate=n;if(!this.jI)this.jI=new THREE.BoxGeometry(0.01,0.2,0.01);return new THREE.Mesh(this.jI,a)};a.prototype.Gsa=function(){var a=this.qe&&
this.qe.children||[],b=new THREE.Color(this.Sb[0]/255,this.Sb[1]/255,this.Sb[2]/255);a.forEach(function(a){a.material.color=b;a.material.needsUpdate=n})};return a});
define("eW","require,fg,gf,ll,bZ,gU".split(","),function(a){var b=a("fg"),c=a("gf"),d=a("ll"),f=a("bZ"),e=a("gU"),g=b.extend(e,function(a,b,d,f){e.call(this);this.ib=a;this.C=b;this.Tb=d;this.g=f;this.oC=new c;this.PV(this);this.set("tag","Root")});g.prototype.$f=function(a){return this.oC.get(a)};g.prototype.all=function(){for(var a=[],b=[this];b.length>0;){var c=b.pop();a.push(c);for(var d=c.zc.length-1;d>=0;d--)b.push(c.zc[d])}return a};g.prototype.update=function(a){var b=this.all(),c=b.length,
d;for(d=0;d<c;d++)b[d].Jia();for(d=0;d<c;d++)b[d].set("index",d);for(d=0;d<c;d++)b[d].Ua&&b[d].L(a);for(d=0;d<c;d++)b[d].Cia();if(this.GI){for(d=0;d<c;d++)b[d].Fia();this.update(a)}};g.prototype.Ha=function(){this.Ug||this.trigger(new f(d.aa));e.prototype.Ha.call(this)};g.prototype.Kp=function(a){return Array.isArray(a)?a.map(this.Kp.bind(this)):this.oC.get(a)||g.factory.create(a)};return g});
define("kq","require,fg,ih,fu,hL,r".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("fu"),f=a("hL"),e=a("r"),a=b.extend(f,function(a){f.call(this);this.j=a;this.rh=this.rh.bind(this);this.sh=this.sh.bind(this);this.Pi()});a.prototype.Sa=function(){f.prototype.Sa.call(this);this.j.set("state",this.j.get("startState"));c.Rb(this.j,["intensity","speed"],this.rh,n);c.Rb(this.j,["state"],this.sh,n)};a.prototype.Za=function(){c.$b(this.j,["intensity","speed"],this.rh);c.$b(this.j,["state"],this.sh);
this.j.set("state",d.I);f.prototype.Za.call(this)};a.prototype.rh=function(){this.Pi();this.BK()};a.prototype.sh=function(){this.mK=this.j.get("state");this.Ha()};a.prototype.Pi=function(){f.prototype.Pi.call(this);var a=this.j.get("intensity"),b=this.j.get("speed"),c,d,l,q,o,t;if(e.Xa()||e.browser()==e.Us){c=1E3;d=350;l=1800;q=400;t=0.8;o=1.2}else if(e.we()){c=1500;d=500;l=2500;q=500;t=0.8;o=1.2}else{c=3E3;d=1E3;l=5E3;q=1E3;t=0.6;o=1}this.II=this.j.get("initialState");this.dL=this.j.get("startDuration");
this.iL=this.j.get("stopDuration");this.yA=0.75;this.gB=0.5;this.Lm=4;this.Mm=-2;this.sl=3;this.gJ=35;this.bu=7;this.Mr=(t+a*(o-t))/g;this.hC=this.xu=0.15+b*1.35;this.Nu=d+a*(c-d);this.cu=q+a*(l-q)};a.prototype.IH=function(){return new THREE.Sprite(this.YA())};a.prototype.YA=function(){var a=new THREE.SpriteMaterial;a.map=this.ZA();a.side=THREE.FrontSide;a.transparent=n;a.depthTest=y;a.needsUpdate=n;return a};a.prototype.ZA=function(){if(this.ub)return this.ub;var a=document.createElement("canvas");
a.width=a.height=g;var b=a.getContext("2d"),c=b.createRadialGradient(a.width*0.5,a.height*0.5,a.height*0.2,a.width*0.5,a.height*0.5,a.height*0.5);c.addColorStop(0,"rgba(255, 255, 255, 0.8)");c.addColorStop(1,"rgba(255, 255, 255, 0)");b.fillStyle=c;b.fillRect(0,0,a.width,a.height);this.ub=new THREE.Texture;this.ub.image=a;this.ub.needsUpdate=n;return this.ub};var g=32;return a});
define("co",["require","gW","r"],function(a){var b=a("gW"),c=a("r"),d=new THREE.Matrix4,f=Math.PI/180;return{qo:function(){this.set("rotationX",0);this.set("rotationY",0);this.set("rotationZ",0);this.set("yaw",0);this.set("pitch",0);this.set("roll",0);this.set("scale",1);this.set("hfov",m);this.set("vfov",r);this.bf=new THREE.Matrix4;this.gc=new THREE.Matrix4;this.rk=new THREE.Matrix4;this.Ui=new THREE.Matrix4;this.sg=new THREE.Matrix4;this.li=new THREE.Matrix4;this.vl=new THREE.Matrix4},MQ:function(){var a=
c.Zd()==c.Qj||c.browser()==c.Us?new THREE.CSS3DRectangle:new THREE.CSS3DObject;a.matrixAutoUpdate=y;return a},xp:function(a){if(this.p("contentWidth","contentHeight")){var c=this.get("cssObject");c.contentWidth=this.get("contentWidth");c.contentHeight=this.get("contentHeight");c.updateVertices()}c=y;this.p("composedTranslationX","composedTranslationY","composedTranslationZ")&&(this.bf.makeTranslation(0.5*-this.get("composedTranslationX")*b.Kd,0.5*this.get("composedTranslationY")*b.Kd,0.5*this.get("composedTranslationZ")*
b.Kd),c=n);this.p("composedDeltaYaw","composedDeltaPitch","composedDeltaRoll")&&(this.gc.makeRotationY(-a.ma*f),this.gc.multiply(d.makeRotationX(-this.get("composedDeltaPitch")*f)),this.gc.multiply(d.makeRotationY(this.get("composedDeltaYaw")*f)),this.gc.multiply(d.makeRotationY(a.ma*f)),c=n);this.p("yaw","pitch")&&(this.rk.makeRotationY(-this.get("yaw")*f),this.rk.multiply(d.makeRotationX(this.get("pitch")*f)),c=n);if(this.p("flipHorizontally","hfov","vfov","composedTranslationX","composedTranslationY",
"composedTranslationZ")){var c=this.get("contentWidth"),k=this.get("contentHeight"),i=this.get("hfov"),p=this.get("vfov");this.Ui.makeTranslation(0,0,-(c/(2*Math.tan(0.5*i*f))));var j=(this.get("flipHorizontally")?-1:1)*this.get("scale"),l=this.get("scale");p&&(l*=c*Math.tan(0.5*p*f)/(k*Math.tan(0.5*i*f)));this.li.makeScale(j,l,1);c=n}this.p("rotationX","rotationY","rotationZ","roll")&&(this.sg.makeRotationZ(this.get("roll")*f),this.sg.multiply(d.makeRotationY(this.get("rotationY")*f)),this.sg.multiply(d.makeRotationX(this.get("rotationX")*
f)),this.sg.multiply(d.makeRotationZ(this.get("rotationZ")*f)),c=n);if(c||this.p("meshGroup"))this.vl.copy(this.bf),this.vl.multiply(this.gc),this.vl.multiply(this.rk),this.vl.multiply(this.Ui),this.vl.multiply(this.sg),this.vl.multiply(this.li),this.get("cssObject").matrix.copy(this.vl),this.get("cssObject").matrixWorldNeedsUpdate=n;this.set("cameraYaw",a.ma);this.set("cameraPitch",a.pitch);this.set("cameraRoll",a.md);this.set("cameraHfov",a.bd);this.set("cameraWidth",a.width);this.set("cameraHeight",
a.height);if(a.Kc&&(c||this.p("cameraYaw","cameraPitch","cameraRoll","cameraHfov","cameraWidth","cameraHeight")))this.get("cssObject").projectVertices(a.Kc),this.set("geometryVisible",this.get("cssObject").isVisible),this.p("geometryVisible")&&this.rV()}}});
define("fr",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,["playbackPositions","width","height"],this.nc,n)},sk:function(){b.$b(this.j,["playbackPositions","width","height"],this.nc)},nc:function(){this.set("playbackPositions",this.j.get("playbackPositions"));this.set("contentWidth",this.j.get("width"));this.set("contentHeight",this.j.get("height"))},Zf:function(){this.p("playbackPositions",
"currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("yaw",this.xa.get("yaw")),this.set("pitch",this.xa.get("pitch")),this.set("roll",this.xa.get("roll")),this.set("rotationX",this.xa.get("rotationX")),this.set("rotationY",this.xa.get("rotationY")),this.set("hfov",this.xa.get("hfov")),this.set("vfov",this.xa.get("vfov")));this.p("framePlane","holePlane","imagePlane","yaw","pitch","roll","rotationX","rotationY","hfov","vfov","contentWidth","contentHeight")&&
this.Oa().forEach(function(a){a.set("yaw",this.get("yaw"));a.set("pitch",this.get("pitch"));a.set("roll",this.get("roll"));a.set("rotationX",this.get("rotationX"));a.set("rotationY",this.get("rotationY"));a.set("hfov",this.get("hfov"));a.set("vfov",this.get("vfov"));a.set("contentWidth",this.get("contentWidth"));a.set("contentHeight",this.get("contentHeight"))}.bind(this))}}});
define("jK","require,fg,bC,ev,eg,co,kO,bR,fs,ic,fr".split(","),function(a){var b=a("fg"),c=a("bC"),d=a("ev"),f=a("eg"),e=a("co"),g=a("kO"),k=a("bR"),i=a("fs"),p=a("ic"),a=a("fr"),j=b.extend(f,g,i,function(){f.call(this);this.set("tag","RectangleFrameHotspotImage")}),l=b.extend(d,e,k,function(){d.call(this);this.set("tag","RectangleFrameHotspotFrame")}),q=b.extend(f,g,p,function(){f.call(this);this.set("tag","RectangleFrameHotspotHole")});return b.extend(c,a,function(a){c.call(this,a);this.nu=j;this.SR=
l;this.NS=q})});
define("kP",["require","ih","kx"],function(a){var b=a("ih"),c=a("kx");return{Wj:function(){this.set("playbackPositions",r);this.set("scaleMode",m);this.set("distance",m);this.nc=this.nc.bind(this);this.xa=new c},qk:function(){b.Rb(this.j,["playbackPositions","distance","scaleMode"],this.nc,n)},sk:function(){b.$b(this.j,["playbackPositions","distance","scaleMode"],this.nc)},nc:function(){this.set("scaleMode",this.j.get("scaleMode"));this.set("distance",this.j.get("distance"));this.set("playbackPositions",this.j.get("playbackPositions"))},
Zf:function(){this.p("playbackPositions","currentTime")&&(this.xa.Ps(this.get("playbackPositions")),this.xa.Os(this.get("currentTime")),this.set("yaw",this.xa.get("yaw")),this.set("pitch",this.xa.get("pitch")),this.set("roll",this.xa.get("roll")),this.set("rotationX",this.xa.get("rotationX")),this.set("rotationY",this.xa.get("rotationY")),this.set("hfov",this.xa.get("hfov")),this.set("vfov",this.xa.get("vfov")),this.set("alpha",this.xa.Fh()));this.p("video","image","yaw","pitch","roll","rotationX",
"rotationY","hfov","vfov","distance","scaleMode","image","video")&&this.Oa().forEach(function(a){a.set("yaw",this.get("yaw"));a.set("pitch",this.get("pitch"));a.set("roll",this.get("roll"));a.set("rotationX",this.get("rotationX"));a.set("rotationY",this.get("rotationY"));a.set("hfov",this.get("hfov"));a.set("vfov",this.get("vfov"));a.set("scaleMode",this.get("scaleMode"));a.set("distance",this.get("distance"))}.bind(this))}}});
define("lo","require,fg,dT,eg,kO,fs,fi,kP".split(","),function(a){var b=a("fg"),c=a("dT"),d=a("eg"),f=a("kO"),e=a("fs"),g=a("fi"),a=a("kP"),k=b.extend(d,f,e,function(){d.call(this);this.set("tag","RectangleVideoHotspotImage")}),i=b.extend(d,f,g,function(){d.call(this);this.set("tag","RectangleVideoHotspotVideo")});return b.extend(c,a,function(a){c.call(this,a);this.nu=k;this.xX=i})});
define("dd","require,dW,gU,iU,hd,hw,jq,hs,ko,eI,O,kJ,da,bo,ho,gY,hQ,iq,eW,kq,jK,lo,bH".split(","),function(a){function b(a,b){Array.isArray(b)||(b=[b]);for(var d=0;d<b.length;d++)if(c.qb(b[d],a))return n;return y}var c=a("dW"),d=a("gU"),f=a("iU"),e=a("hd"),g=a("hw"),k=a("jq"),i=a("hs"),p=a("ko"),j=a("eI"),l=a("O"),q=a("kJ"),o=a("da"),t=a("bo"),s=a("ho"),u=a("gY"),v=a("hQ"),w=a("iq"),x=a("eW"),z=a("kq"),F=a("jK"),A=a("lo");a("bH");a={};x.factory=a;a.create=function(a){if(a instanceof d)return a;if(b(a,
["HDRPanorama","LivePanorama","Panorama","VideoPanorama"]))return new l(a);if(b(a,["CubicPanoramaFrame","SphericPanoramaFrame"]))return b(a,"SphericPanoramaFrame")&&a.Hh()?new o(a):new q(a);if(b(a,["DustPanoramaOverlay"]))return new e(a);if(b(a,"HotspotPanoramaOverlay"))return new k(a);if(b(a,["HotspotPanoramaOverlayImage","HotspotPanoramaOverlayMap"]))return new i(a);if(b(a,"Menu"))return new j(a);if(b(a,["CeilingCapPanoramaOverlay","TripodCapPanoramaOverlay"]))return new f(a);if(b(a,["FlatHotspotPanoramaOverlayImage",
"FlatHotspotPanoramaOverlayMap"]))return new g(a);if(b(a,["LensFlarePanoramaOverlay"]))return new p(a);if(b(a,["RainPanoramaOverlay"]))return new w(a);if(b(a,["SnowPanoramaOverlay"]))return new z(a);if(b(a,["PopupPanoramaOverlay"]))return new t(a);if(b(a,["QuadFramePanoramaOverlay"]))return new s(a);if(b(a,["QuadHotspotPanoramaOverlayImage","QuadHotspotPanoramaOverlayMap"]))return new u(a);if(b(a,["QuadVideoPanoramaOverlay"]))return new v(a);if(b(a,["FramePanoramaOverlay"]))return new F(a);if(b(a,
["VideoPanoramaOverlay"]))return new A(a);h("Invalid script object")};return a});
define("lf",["require"],function(){var a={$ba:function(b,c,d,f,e,g){return a.Uua(b,2*(c/f)-1,2*-(d/e)+1,g)},Uua:function(a,c,d,f){f||(f=new THREE.Ray);f.origin.setFromMatrixPosition(a.matrixWorld);f.direction.set(c,d,0.5).unproject(a).sub(f.origin).normalize();return f},hva:function(a,c){c||(c=new THREE.Ray);c.origin.set(0,0,0);c.direction.set(0,0,-1).applyQuaternion(a.quaternion);return c},gva:function(a,c){c||(c=new THREE.Ray);c.origin.set(0,0,0).applyMatrix4(a);c.direction.set(0,0,-1).applyMatrix4(a).sub(c.origin).normalize();
return c}};return a});
define("eD",["require"],function(){function a(a){this.Sb=this.zB(a.get("vrPointerColor"));this.Ym=this.zB(a.get("vrPointerSelectionColor"));this.wp=this.vk([0,0,0],0);this.YK=this.vk([0,0,0],0.125);this.Rja=this.vk(this.Sb,1);this.Sja=this.vk(this.Ym,1);this.xia=this.vk(this.Ym,1);this.wia=this.vk(this.Sb,0.5);this.uia=this.vk(this.Sb,1);this.via=this.vk(this.Ym,1);this.Nh=this.Ce=64;this.JP=4E3;this.Q3=0.1;this.Oh=0.16;this.xk=0.04;this.S2=this.uH=0.68-this.xk;this.tH=1-this.xk;this.v=document.createElement("canvas");
this.v.width=this.Ce;this.v.height=this.Nh;this.ka=this.v.getContext("2d");this.Tf=this.oQ=y;this.Vx=this.OJ=m;this.Ct=0}a.prototype.zB=function(a){a=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(a);return[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]};a.prototype.vk=function(a,c){return"rgba("+a.join(",")+", "+c+")"};a.prototype.Bya=function(a,c){this.Tf=a;this.OJ=c};a.prototype.nN=P("oQ");a.prototype.ad=Q("Ce");a.prototype.Od=Q("Nh");a.prototype.xg=Q("v");a.prototype.update=function(a){return this.oQ?
this.Vja(a):this.Tf?this.$ja():this.Zja()};a.prototype.vH=function(){this.ka.clearRect(0,0,this.Ce,this.Nh)};a.prototype.Zja=function(){if("initial"==this.Vx)return y;this.vH();this.U3(this.Rja);this.Vx="initial";return n};a.prototype.$ja=function(){if(this.OJ===m){if("over"==this.Vx)return y;this.vH();this.U3(this.Sja)}else this.Doa(this.OJ);this.Vx="over";return n};a.prototype.Vja=function(a){for(this.Ct+=a;this.Ct>this.JP;)this.Ct-=this.JP;this.ria(this.Ct/this.JP);this.Vx="changing";return n};
a.prototype.U3=function(a){this.nh(this.Q3+this.xk,0,this.wp,this.YK,0,2*Math.PI);this.nh(this.Q3,0,this.wp,a,0,2*Math.PI)};a.prototype.aka=function(a){this.nh(this.uH-0.5*(this.Oh+this.xk),this.Oh+this.xk,this.YK,this.wp,0,2*Math.PI);this.nh(this.uH-0.5*this.Oh,this.Oh,this.wia,this.wp,0,2*Math.PI);this.nh(this.uH-0.5*this.Oh,this.Oh,this.xia,this.wp,0.5*Math.PI,(0.5+2*a)*Math.PI)};a.prototype.Wja=function(a,c){this.nh(this.S2-0.5*(this.Oh+this.xk),this.Oh+this.xk,this.YK,this.wp,0,2*Math.PI);this.nh(this.S2-
0.5*this.Oh,this.Oh,this.uia,this.wp,0,2*Math.PI);a=(0.5+2*a)*Math.PI;for(c=(0.5+2*c)*Math.PI;c<a;)c+=2*Math.PI;var d=a-this.xk/(2*this.tH*Math.PI),f=c+this.xk/(2*this.tH*Math.PI);Math.abs(f-d+2*Math.PI)<2*this.xk&&(d=0,f=c);this.nh(this.tH-0.5*(this.Oh+this.xk),this.Oh+this.xk,this.YK,this.wp,d,f);this.nh(this.tH-0.5*this.Oh,this.Oh,this.via,this.wp,a,c)};a.prototype.nh=function(a,c,d,f,e,g){var k=Math.round(0.5*this.Ce),i=Math.round(0.5*this.Nh),p=Math.min(k,i),a=Math.round(a*p),j=this.ka;j.$va=
j.HBa=n;j.lineWidth=c*p;j.strokeStyle=d;j.fillStyle=f;j.beginPath();j.arc(k,i,a,e,g,y);j.stroke();j.fill()};a.prototype.ria=function(a){this.vH();var c;0.25>a?(c=a/0.25,a=0.5*c):0.5>a?(c=(a-0.25)/0.25,a=0.5+c,c=1+0.5*c):0.75>a?(c=(a-0.5)/0.25,a=0.5+0.5*c,c=0.5+c):(a=c=(a-0.75)/0.25,c=0.5+0.5*c);this.Wja(a,c)};a.prototype.Doa=function(a){this.vH();this.aka(a)};return a});
define("jv","require,fg,dv,hk,eD,dX,bi".split(","),function(a){var b=a("fg"),c=a("dv"),d=a("hk"),f=a("eD"),e=a("dX"),g=a("bi"),a=b.extend(d,function(){d.call(this);this.v=r;this.set("tag","Reticle");this.set("changing",y);this.set("over",y);this.set("overProgress",m);this.set("visible",n);this.set("attachToCamera",n);this.iK=r});a.prototype.L=function(a){this.gE(a);this.ug(a);this.Zf(a);d.prototype.L.call(this,a)};a.prototype.gE=function(a){if(a.Db&&!this.iK&&g.Qd()==g.iP.rm)this.bg([this.iK=new d])};
a.prototype.ug=function(a){if(!this.v){this.set("textureSource",new e);this.v=new f(this.Ua.C);this.get("textureSource").yi(this.v.xg());this.set("contentWidth",this.v.ad());this.set("contentHeight",this.v.Od());this.set("hfov",6);this.set("distance",this.Ua.C.get("vrPointerDistance"))}this.p("changing")&&this.v.nN(this.get("changing"));this.p("over","overProgress")&&this.v.Bya(this.get("over"),this.get("overProgress"));this.v.update(a.wd)&&this.get("textureSource").update();this.get("changing")&&
this.Ha()};a.prototype.Zf=function(){this.Ck()};a.prototype.oi=function(){this.p("composedAlpha","meshGroup","visible")&&this.yq()};a.prototype.yq=function(){c.xd(this.get("meshGroup"),this.get("visible")?this.get("composedAlpha"):0)};return a});
define("Y","require,jquery.mod,do,ll,r,lC,dK".split(","),function(a){function b(a){this.ra=a;this.R$=this.ra.gk;this.ra.bind(f.Nc,this.fj,this);this.J=c("<span></span>");this.J.css({position:"absolute","z-index":g.W0,"text-align":"center",display:"none"});e.Xa()||this.J.css({"pointer-events":"none"});this.Ad=c("<span></span>");this.Ad.css({position:"absolute",left:0,top:0,right:0,bottom:0});this.J.append(this.Ad);this.pL=c("<span></span>");this.pL.css({position:"relative"});this.J.append(this.pL);
this.tg=this.JI=this.If=r;this.k8=this.j8=m;this.or=y;this.S$=m}var c=a("jquery.mod"),d=a("do"),f=a("ll"),e=a("r"),g=a("lC"),k=a("dK"),i={toolTip:m,toolTipBackgroundColor:"#F6F6F6",toolTipBackgroundOpacity:1,toolTipBorderColor:"#767676",toolTipBorderRadius:3,toolTipBorderSize:1,toolTipFontFamily:"Segoe UI",toolTipFontSize:12,toolTipFontColor:"#606060",toolTipFontWeight:"normal",toolTipFontStyle:"normal",toolTipHorizontalAlign:"center",toolTipOpacity:1,toolTipPaddingBottom:2,toolTipPaddingLeft:4,toolTipPaddingTop:2,
toolTipPaddingRight:4,toolTipShadowBlurRadius:3,toolTipShadowColor:"#333333",toolTipShadowHorizontalLength:3,toolTipShadowOpacity:1,toolTipShadowSpread:0,toolTipShadowVerticalLength:3,toolTipTextShadowBlurRadius:3,toolTipTextShadowColor:"#000000",toolTipTextShadowHorizontalLength:0,toolTipTextShadowOpacity:0,toolTipTextShadowVerticalLength:0,toolTipDisplayTime:600};b.prototype.Cb=Q("J");b.prototype.lw=function(a){if(!this.R$){for(;a&&a.get("toolTipDisabled");)a=a.getParent();this.hide();this.If&&
d(d(i).keys()).each(function(a){this.If.unbind(f.D(a),this.jU,this)},this);if(this.If=a){d(d(i).keys()).each(function(a){this.If.bind(f.D(a),this.jU,this)},this);this.jU()}}};b.prototype.bza=function(a,b){this.If=a;this.S$=b;this.NI()||(this.or?this.h$():this.PD())};b.prototype.f$=function(a,b,c,d,e){this.or&&this.If.trigger(f.fP);this.Csa(a);this.pL.html(this.Nla(b));var b=this.J.outerWidth(),g=this.J.outerHeight();if(e){c=c-this.J.width()*0.5;d=d-this.J.height()*0.5}c=Math.max(Math.min(c,this.ra.Aa()-
b-3),3);d=Math.max(Math.min(d,this.ra.eb()-g-3),3);this.J.css("left",c+"px");this.J.css("top",d+"px");this.J.css("display","inline");this.If.trigger(f.V0);this.or=n;(e||a.get("checkToolTipOcclusion"))&&this.ora(a,c,d)};b.prototype.hide=function(){this.Pt();this.w$();if(this.or){this.J.css("display","none");this.If.trigger(f.fP);this.or=y}};b.prototype.jU=function(){this.If.get("toolTip")?this.NI()||(this.or?this.g$():this.PD()):this.NI()?this.Pt():this.or&&this.hide()};b.prototype.fj=function(a){this.j8=
a.pageX;this.k8=a.pageY};b.prototype.g$=function(){var a=this.j8,b=this.k8+25;this.f$(this.If,this.If.get("toolTip"),a,b,y)};b.prototype.h$=function(){var a=this.If.Cb().offset();this.f$(this.If,this.S$,a.left+this.If.Aa()*0.5,a.top+this.If.eb()*0.5,n)};b.prototype.NI=function(){return this.tg!=r};b.prototype.PD=function(){var a=this.If&&this.If.get("toolTipDisplayTime");if(a===m||a===r)a=i.toolTipDisplayTime;this.Pt();this.tg=setTimeout(function(){this.tg=r;this.R$?this.h$():this.g$()}.bind(this),
a)};b.prototype.Pt=function(){if(this.NI()){clearTimeout(this.tg);this.tg=r}};b.prototype.ora=function(a,b,c){this.w$();var d=function(){this.J.css("display",this.or&&!this.Hma(a,b,c)?"inline":"none")}.bind(this);this.JI=setInterval(d,300);d()};b.prototype.w$=function(){if(this.JI){clearInterval(this.JI);this.JI=r}};b.prototype.Csa=function(a){function b(c){var d=a.get(c);return d===m?i[c]:d}var c={};c.opacity=b("toolTipOpacity");c.filter=c["-ms-filter"]="alpha(opacity="+Math.round(b("toolTipOpacity")*
100)+")";c.paddingTop=b("toolTipPaddingTop")+"px";c.paddingBottom=b("toolTipPaddingBottom")+"px";c.paddingLeft=b("toolTipPaddingLeft")+"px";c.paddingRight=b("toolTipPaddingRight")+"px";c["text-align"]=b("toolTipHorizontalAlign");this.J.css(c);c={};c.opacity=b("toolTipBackgroundOpacity");c.filter=c["-ms-filter"]="alpha(opacity="+Math.round(b("toolTipBackgroundOpacity")*100)+")";c["background-color"]=b("toolTipBackgroundColor");c.border=[b("toolTipBorderSize")+"px","solid",b("toolTipBorderColor")].join(" ");
var e=b("toolTipShadowColor");c["-moz-box-shadow"]=c["-webkit-box-shadow"]=c["box-shadow"]=[b("toolTipShadowHorizontalLength")+"px",b("toolTipShadowVerticalLength")+"px",b("toolTipShadowBlurRadius")+"px",b("toolTipShadowSpread")+"px","rgba("+parseInt("0x"+e.substr(1,2))+", "+parseInt("0x"+e.substr(3,2))+", "+parseInt("0x"+e.substr(5,2))+", "+b("toolTipShadowOpacity")+")"].join(" ");c["-moz-border-radius"]=c["-webkit-border-radius"]=c.borderRadius=b("toolTipBorderRadius")+"px";this.Ad.css(c);c={};
c["font-family"]=k.ys(b("toolTipFontFamily"));e=b("toolTipFontSize");d(e).isNumber()?e=e+"px":d(e).isString()||(e="");c["font-size"]=e;c["font-weight"]=b("toolTipFontWeight");c["font-style"]=b("toolTipFontStyle");c.color=b("toolTipFontColor");e=b("toolTipTextShadowColor");c["-moz-text-shadow"]=c["-webkit-text-shadow"]=c["text-shadow"]=[b("toolTipTextShadowHorizontalLength")+"px",b("toolTipTextShadowVerticalLength")+"px",b("toolTipTextShadowBlurRadius")+"px","rgba("+parseInt("0x"+e.substr(1,2))+", "+
parseInt("0x"+e.substr(3,2))+", "+parseInt("0x"+e.substr(5,2))+", "+b("toolTipTextShadowOpacity")+")"].join(" ");var f=b("toolTipTextShadowVerticalLength")==0&&b("toolTipTextShadowHorizontalLength")==0?135:Math.round(4*Math.atan2("toolTipTextShadowHorizontalLength",-b("toolTipTextShadowVerticalLength"))/Math.PI)*45;c.filter="progid:DXImageTransform.Microsoft.Shadow(color=#"+function(a){for(a=a.toString(16);a.length<2;)a="0"+a;return a}(255*b("toolTipTextShadowOpacity"))+e.substr(1,6)+",direction="+
f+")";this.pL.css(c)};b.prototype.Hma=function(a,b,c){for(var b=document.elementsFromPoint(b,c),a=a.Cb()[0],c=this.ra.Cb()[0],d=0;d<b.length;d++){var e=b[d];if(a==e||a.contains(e))break;if(!this.J[0].contains(e)&&c.contains(e)){var f=window.getComputedStyle(e);if(f.display!="none"&&f.visibility!="hidden"&&(e.tagName=="CANVAS"?1:this.Pia(f.backgroundColor))*f.opacity>0.29)return n}}return y};b.prototype.Pia=function(a){if(!a)return 0;var a=a.toLowerCase(),b=a.match(/rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*,\s*(\d*\.?\d*)\s*\)/);
return b?parseFloat(b[1]):a.match(/transparent/)?0:1};b.prototype.Nla=function(a){for(var a=(a||"").split("\n"),b=0;b<a.length;b++)a[b]=this.hka(a[b]);return a.map(function(a){return"<div>"+a+"</div>"})};b.prototype.hka=function(a){b.K1.nodeValue=a;return b.G1.innerHTML};b.kfa=i;b.G1=document.createElement("pre");b.K1=document.createTextNode("");b.G1.appendChild(b.K1);b.oAa=600;return b});
define("cl",["require","Y","bA","dK"],function(a){function b(a,b){this.C=a;this.ni=b;this.fra()}var c=a("Y"),d=a("bA"),f=a("dK");b.prototype.xg=Q("v");b.prototype.ad=function(){return this.v.width};b.prototype.Od=function(){return this.v.height};b.prototype.fra=function(){this.v=document.createElement("canvas");var a=this.ni.split("\n"),b=this.Fe("toolTipBackgroundColor"),c=this.Fe("toolTipBackgroundOpacity"),i=this.Fe("toolTipBorderRadius"),p=this.Fe("toolTipBorderColor"),j=this.Fe("toolTipBorderSize");
this.Fe("toolTipDisplayTime");var l=this.Fe("toolTipFontFamily"),q=this.Fe("toolTipFontSize"),o=this.Fe("toolTipFontColor"),t=this.Fe("toolTipFontWeight"),s=this.Fe("toolTipFontStyle"),u=this.Fe("toolTipPaddingBottom"),v=this.Fe("toolTipPaddingLeft"),w=this.Fe("toolTipPaddingTop"),x=this.Fe("toolTipPaddingRight"),z=this.Fe("toolTipOpacity"),F=this.Fe("toolTipTextShadowBlurRadius"),A=this.Fe("toolTipTextShadowColor"),K=this.Fe("toolTipTextShadowHorizontalLength"),E=this.Fe("toolTipTextShadowVerticalLength"),
J=this.Fe("toolTipTextShadowOpacity"),B=new d.Q0;B.fontFamily=l;B.fontSize=q+(isNaN(q)?"":"px");B.fontWeight=t;B.fontStyle=s;var O=a.map(function(a){return d(a,B,G)}),N=0,I=0;O.forEach(function(a){N=Math.max(a.width,N);I+=a.height});var L=1<a.length?0.25*(I/a.length):0,I=I+(a.length-1)*L,x=j+v+N+x+j,u=j+w+I+u+j;this.v=document.createElement("canvas");var G=this.v.getContext("2d");this.v.width=x;this.v.height=u;G.globalAlpha=z;G.strokeStyle=p;G.fillStyle="transparent"===b?"rgba(0,0,0,0)":this.Z1(c,
b);G.lineWidth=j;G.beginPath();G.moveTo(i,0);G.lineTo(x-i,0);G.quadraticCurveTo(x,0,x,i);G.lineTo(x,u-i);G.quadraticCurveTo(x,u,x-i,u);G.lineTo(i,u);G.quadraticCurveTo(0,u,0,u-i);G.lineTo(0,i);G.quadraticCurveTo(0,0,i,0);G.closePath();G.fill();0<j&&G.stroke();G.fillStyle=o;G.font=t+" "+("normal"!=s?s+" ":"")+q+(isNaN(q)?"":"px")+" "+f.ys(l);G.shadowColor=this.Z1(J,A);G.shadowOffsetX=K;G.shadowOffsetY=E;G.shadowBlur=F;G.textBaseline="middle";G.textAlign="center";var D=j+v+0.5*N,H=j+w;a.forEach(function(a,
b){G.fillText(a,Math.round(D),Math.round(H+0.5*O[b].height));H+=O[b].height+L})};b.prototype.Fe=function(a){var b=this.C.get(a);return b===m?c.kfa[a]:b};b.prototype.Z1=function(a,b){return"rgba("+parseInt("0x"+b.substr(1,2))+", "+parseInt("0x"+b.substr(3,2))+", "+parseInt("0x"+b.substr(5,2))+", "+a+")"};return b});
define("lh","require,fg,gW,hk,cl,dX".split(","),function(a){var b=a("fg"),c=a("gW"),d=a("hk"),f=a("cl"),e=a("dX"),a=b.extend(d,function(){d.call(this);this.v=r;this.set("tag","ToolTip");this.set("text","");this.Bk=new THREE.Vector3(0,0,-c.Hp())});a.prototype.L=function(a){this.ug(a);d.prototype.L.call(this,a)};a.prototype.ug=function(a){if(!this.v||this.p("text")){this.get("textureSource")||this.set("textureSource",new e);this.v=new f(this.Ua.C,this.get("text"));this.get("textureSource").yi(this.v.xg());
this.set("contentWidth",this.v.ad());this.set("contentHeight",this.v.Od());this.set("hfov",2*Math.atan2(this.v.ad()*0.5,600)*g);this.set("distance",this.Ua.C.get("vrPointerDistance"));var b=this.get("matrix");if(b){this.Bk.applyMatrix4(b);(this.Bk.x!=0||this.Bk.z!=0)&&this.set("yaw",g*Math.atan2(this.Bk.x,-this.Bk.z));(this.Bk.y!=0||this.Bk.z!=0)&&this.set("pitch",g*Math.atan2(this.Bk.y,Math.sqrt(this.Bk.z*this.Bk.z+this.Bk.x*this.Bk.x))+k)}else{this.set("yaw",a.ma);this.set("pitch",a.pitch+i)}}};
var g=180/Math.PI,k=2,i=5;return a});define("kN",["require","lf","M"],function(a){function b(a,b){this.Xd=a;this.g=b;this.oB=r}var c=a("lf"),d=a("M");b.prototype.update=C();b.prototype.clear=C();b.prototype.Qd=Q("Xd");b.prototype.iS=function(){var a=this.m.ye&&d.As(this.m.ye);return this.oB=a?c.hva(a,this.oB):r};b.IG="gaze";b.hP="gaze_click";b.mA="laser";b.nA="mouse";b.oA="touch";return b});
define("eb",["require","kN"],function(a){function b(a,b,c,d){this.ii=a;this.Jl=b;this.oB=c;this.ae=d;this.M2=[];this.fi=[];this.IL=[];this.KS=[];this.ya="";this.fs=Number.MAX_VALUE}function c(a){return a===m?[]:Array.isArray(a)?a:[a]}var d=a("kN");b.prototype.Fs=function(){return this.ii.Qd()==d.nA};b.prototype.Xca=function(){return this.ii.Qd()==d.mA};b.prototype.$v=function(){return this.ii.Qd()==d.oA};b.prototype.kwa=function(){return this.ii.Qd()==d.IG};b.prototype.rs=function(a){this.IL=this.IL.concat(c(a))};
b.prototype.Uz=function(){return 0<this.IL.length};b.prototype.Nta=function(a){this.KS=this.KS.concat(c(a))};b.prototype.wua=function(){return 0==this.IL.length&&0<this.KS.length};b.prototype.qs=function(a){this.fi=this.fi.concat(c(a))};b.prototype.Uwa=function(){return 0<this.fi.length};b.prototype.ri=function(a){if(a&&(this.OH===m||this.OH>a))this.OH=a};b.prototype.ZL=function(a,b){if(""==this.ya||this.fs>b)this.ya=a,this.fs=b};b.prototype.UF=Q("ya");b.prototype.Yp=function(a){this.M2=c(a)};b.prototype.Ch=
function(){return 0<this.M2.length};return b});
define("cg","require,fg,ll,lf,M,jv,lh,eb,kN".split(","),function(a){var b=a("fg"),c=a("ll");a("lf");a("M");var d=a("jv"),f=a("lh"),e=a("eb"),g=a("kN"),a=b.extend(g,function(a){g.call(this,g.IG,a);this.Je=this.m=r;this.fi=[];this.sL=r;this.c8=m;this.Kb=new d;this.g.add(this.Kb);this.af="";this.ya=r;this.w9=this.g.C.get("vrPointerSelectionTime")});a.prototype.clear=function(){this.mW();this.g.remove(this.Kb);this.Kb=r;this.ya&&this.g.remove(this.ya);this.ya=r};a.prototype.update=function(a){this.m=
a;this.Kb.set("changing",a.dM);this.vg()};a.prototype.kx=function(){this.Wf(this.Lf(c.Gi));this.Kb.set("over",y)};a.prototype.vg=function(){var a=this.Lf(c.Hi);this.Wf(a);this.Pl(a.UF());var b;a:{b=this.fi;for(var d=a.fi,e=0;e<b.length;e++)if(d.indexOf(b[e])<0){b=y;break a}for(e=0;e<d.length;e++)if(b.indexOf(d[e])<0){b=y;break a}b=n}if(!b){this.mW();this.Kb.set("over",y);this.fi=a.fi;if(this.fi.length){this.Kb.set("over",a.Uz());this.Kb.set("overProgress",0);this.Bra()}}};a.prototype.Pl=function(a){if(this.af!=
a){this.af&&this.g.remove(this.ya);if(this.af=a){this.ya=new f(this.af);this.ya.set("text",this.af);this.g.add(this.ya)}}};a.prototype.Wf=function(a){this.g.fF().sort(function(a,b){return b.get("index")-a.get("index")}).forEach(function(b){b.Jj(a)}.bind(this))};a.prototype.Lf=function(a){this.Je=this.iS();return new e(this,this.Je?[this.Je]:[],this.Je,a)};a.prototype.mW=function(){this.sL&&(clearInterval(this.sL),this.sL=r)};a.prototype.Bra=function(){this.c8=(new Date).getTime();this.sL=setInterval(this.Jna.bind(this),
100)};a.prototype.Jna=function(){var a=(new Date).getTime()-this.c8;if(a>=this.w9){this.mW();this.kx()}else this.Kb.set("overProgress",a/this.w9)};return a});
define("iJ","require,fg,ll,jv,lh,eb,kN,bi".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("jv"),f=a("lh"),e=a("eb"),g=a("kN"),k=a("bi"),a=b.extend(g,function(a){g.call(this,g.hP,a);this.Je=this.m=r;this.Kb=new d;this.g.add(this.Kb);this.af="";this.ya=r;this.uL=this.uL.bind(this);document.body.addEventListener("touchend",this.uL);k.bind(c.Ii,this.Waa,this,n)});a.prototype.clear=function(){document.body.removeEventListener("touchend",this.uL);k.unbind(c.Ii,this.Waa,this,n);this.g.remove(this.Kb);
this.Kb=r;this.ya&&this.g.remove(this.ya);this.ya=r};a.prototype.update=function(a){this.m=a;this.Kb.set("changing",a.dM);this.vg()};a.prototype.uL=function(){this.kx()};a.prototype.Waa=function(){this.kx()};a.prototype.kx=function(){this.Wf(this.Lf(c.Gi));this.Kb.set("over",y)};a.prototype.vg=function(){var a=this.Lf(c.Hi);this.Wf(a);this.Pl(a.UF());this.Kb.set("over",a.Uz())};a.prototype.Pl=function(a){if(this.af!=a){this.af&&this.g.remove(this.ya);if(this.af=a){this.ya=new f(this.af);this.ya.set("text",
this.af);this.g.add(this.ya)}}};a.prototype.Wf=function(a){this.g.fF().sort(function(a,b){return b.get("index")-a.get("index")}).forEach(function(b){b.Jj(a)}.bind(this))};a.prototype.Lf=function(a){this.Je=this.iS();return new e(this,this.Je?[this.Je]:[],this.Je,a)};return a});
define("il","require,fg,gW,bU,dv,dX,y,kA".split(","),function(a){var b=a("fg"),c=a("gW"),d=a("bU"),f=a("dv"),e=a("dX"),g=a("y"),k=a("kA"),i=new THREE.Matrix4,p=Math.PI/180,a=b.extend(g,function(){g.call(this);this.set("tag","Laser");this.set("matrix",r);this.set("over",y);this.set("pressed",y);this.set("intersectionDistance",0);this.set("visible",y);this.set("attachToCamera",y);this.set("dotVisible",n);this.cV=this.kD=this.Um=this.bV=r;new THREE.Matrix4;this.dV=new THREE.Matrix4;this.dV.multiply(i.makeRotationX(-90*
p));this.dV.multiply(i.makeTranslation(0,j*0.5,0));this.TH=this.SH=this.RH=this.zo=this.xR=r;new THREE.Matrix4;this.yR=new THREE.Matrix4;this.UA=this.QH=this.wR=r;new THREE.Matrix4;this.Tt=[new THREE.Matrix4,new THREE.Matrix4,new THREE.Matrix4];this.Tt[0].multiply(i.makeRotationX(-90*p));this.Tt[0].multiply(i.makeTranslation(0,-q*0.5,0));this.Tt[1].multiply(i.makeRotationX(-90*p));this.Tt[1].multiply(i.makeTranslation(0,-q*0.5,-l*0.5));this.Tt[2].multiply(i.makeRotationX(-90*p));this.Tt[2].multiply(i.makeTranslation(0,
-q*0.5,-l))});a.prototype.L=function(a){g.prototype.L.call(this,a);this.lX();this.ls()};a.prototype.lX=function(){if(this.p("visible"))this.get("meshGroup").visible=this.get("visible");this.p("dotVisible")&&f.xd([this.SH,this.QH],this.get("dotVisible")?1:0)};a.prototype.ls=function(){if(this.p("over","pressed")){this.qaa();this.Aaa()}};var j=0.35,l=0.012,q=0.1;a.prototype.Si=function(){this.QH=f.create(new THREE.SphereGeometry(2.3,32,32),this.dja());this.SH=f.create(new THREE.SphereGeometry(2,32,
32),this.eja());this.cV=f.create(new THREE.CylinderGeometry(0.003,0.003,j,8),this.zja());this.ox=[];this.ox.push(f.create(new THREE.CylinderGeometry(l,l,q,32),this.OQ()));this.ox.push(f.create(new THREE.BoxGeometry(2*l,q,l),this.OQ()));this.ox.push(f.create(new THREE.CylinderGeometry(l,l,q,32),this.OQ()));return[this.QH,this.SH,this.cV].concat(this.ox)};a.prototype.dja=function(){if(this.wR==r){var a=document.createElement("canvas");a.width=a.height=256;var b=a.getContext("2d"),c=new e;c.yi(a);this.wR=
d.ws(c.texture(),new d.Sn);b.fillStyle="rgba(0, 0, 0, 0.75)";b.clearRect(0,0,a.width,a.height);b.fillRect(0,0,a.width,a.height)}return this.wR};a.prototype.eja=function(){if(this.xR==r){this.zo=document.createElement("canvas");this.zo.width=this.zo.height=256;this.RH=this.zo.getContext("2d");this.TH=new e;this.TH.yi(this.zo);this.xR=d.ws(this.TH.texture(),new d.Sn);this.qaa()}return this.xR};a.prototype.qaa=function(){this.RH.fillStyle=this.aS();this.RH.clearRect(0,0,this.zo.width,this.zo.height);
this.RH.fillRect(0,0,this.zo.width,this.zo.height);this.TH.update()};a.prototype.zja=function(){if(this.bV==r){this.Um=document.createElement("canvas");this.Um.width=this.Um.height=256;this.kD=this.Um.getContext("2d");this.eV=new e;this.eV.yi(this.Um);this.bV=d.ws(this.eV.texture(),new d.Sn);this.Aaa()}return[this.bV]};a.prototype.Aaa=function(){var a=k.xF(this.aS()).join(", "),b=this.kD.createLinearGradient(0,0,0,this.Um.height);b.addColorStop(0,"rgba("+a+", 0)");b.addColorStop(0.5,"rgba("+a+", 1)");
b.addColorStop(1,"rgba("+a+", 1)");this.kD.fillStyle=b;this.kD.clearRect(0,0,this.Um.width,this.Um.height);this.kD.fillRect(0,0,this.Um.width,this.Um.height);this.eV.update()};a.prototype.OQ=function(){if(this.UA==r){var a=document.createElement("canvas");a.width=a.height=256;var b=a.getContext("2d"),c=new e;c.yi(a);this.UA=d.ws(c.texture(),new d.Sn);b.fillStyle="rgba(64, 64, 64, 1)";b.clearRect(0,0,a.width,a.height);b.fillRect(0,0,a.width,a.height)}return[this.UA,this.UA,this.UA]};a.prototype.Vl=
function(){var a=y,b=y,d=y;if(this.p("intersectionDistance")){var b=(b=this.get("intersectionDistance"))?c.Qv(b):c.Hp(),e=b/c.Hp();this.yR.makeTranslation(0,0,-b);this.yR.multiply(i.makeScale(e,e,e));b=n}if(this.p("matrix"))d=b=a=n;if(b){i.identity();(b=this.get("matrix"))&&i.multiply(b);i.multiply(this.yR);f.bm(this.SH,i);f.bm(this.QH,i)}if(a){i.identity();(b=this.get("matrix"))&&i.multiply(b);i.multiply(this.dV);f.bm(this.cV,i)}if(d){b=this.get("matrix");for(a=0;a<this.ox.length;a++){i.identity();
b&&i.multiply(b);i.multiply(this.Tt[a]);f.bm(this.ox[a],i)}}};a.prototype.uv=function(){if(this.p("index","meshGroup")){var a=this.get("meshGroup");a&&a.children.forEach(function(a){f.yN(a,this.get("index"))}.bind(this))}};a.prototype.aS=function(){return this.get("pressed")?this.Ua.C.get("vrPointerSelectionColor"):this.get("over")?this.Ua.C.get("vrPointerOverColor"):this.Ua.C.get("vrPointerColor")};return a});
define("ds","require,fg,ll,lf,il,jv,lh,eb,kN,db,bi,ku".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("lf"),f=a("il"),e=a("jv"),g=a("lh"),k=a("eb"),i=a("kN"),p=a("db"),j=a("bi"),l=a("ku"),q=new THREE.Matrix4,o=Math.PI/180,a=b.extend(i,function(a){i.call(this,i.mA,a);this.Je=this.m=r;this.fi=[];this.Jg=new f;this.g.add(this.Jg);this.Kb=new e;this.g.add(this.Kb);this.ji=y;this.af="";this.ya=r;this.Rh=new THREE.Matrix4});a.prototype.clear=function(){this.g.remove(this.Jg);this.g.remove(this.Kb);
this.Kb=this.Jg=r;this.ya&&this.g.remove(this.ya);this.ya=r};a.prototype.update=function(a){this.m=a;this.Kb.set("changing",a.dM);this.Kb.set("visible",a.dM);var b=p.YM();if(b&&!b.nwa()){var c=b.quaternion(),d=b.position(),e=j.zn().position,f=l.ma(j.zn().orientation);this.Rh.identity();if(d){this.Rh.multiply(q.makeRotationY((f-a.ma)*o));this.Rh.multiply(q.makeTranslation(-e.x,-e.y,-e.z));this.Rh.multiply(q.makeTranslation(d.x,d.y,d.z));this.Rh.multiply(q.makeRotationFromQuaternion(c))}else{this.Rh.multiply(q.makeRotationY(-a.ma*
o));b.hand()==p.qa?this.Rh.multiply(q.makeTranslation(-0.2,-0.4,0)):this.Rh.multiply(q.makeTranslation(0.2,-0.4,0));this.Rh.multiply(q.makeRotationY(f*o));this.Rh.multiply(q.makeRotationFromQuaternion(c));this.Rh.multiply(q.makeTranslation(0,0,-0.3))}this.Jg.set("matrix",r);this.Jg.set("matrix",this.Rh);this.Jg.set("pressed",b.pressed());this.Jg.set("visible",n)}else this.Jg.set("visible",y);this.vg();a=!!b&&b.pressed();if(this.ji!=a){this.ji&&this.kx();this.ji=a}this.Jg.Ck();this.Kb.Ck()};a.prototype.kx=
function(){var a=this.Lf(c.Gi);this.Wf(a);this.Jg.set("over",n);this.Jg.set("dotVisible",n);this.Jg.set("intersectionDistance",a.OH);(a=p.YM())&&a.pulse(0.6,50)};a.prototype.vg=function(){var a=this.Lf(c.Hi);this.Wf(a);this.Pl(a.UF());var b;a:{b=this.fi;for(var d=a.fi,e=0;e<b.length;e++)if(d.indexOf(b[e])<0){b=y;break a}for(e=0;e<d.length;e++)if(b.indexOf(d[e])<0){b=y;break a}b=n}if(!b&&(a.Uz()||this.Jg.get("over"))){this.fi=a.fi;(b=p.YM())&&b.pulse(0.6,5)}this.Jg.set("over",a.Uz());this.Jg.set("intersectionDistance",
a.OH);this.Jg.set("dotVisible",!a.wua())};a.prototype.Pl=function(a){if(this.af!=a){this.af&&this.g.remove(this.ya);if(this.af=a){this.ya=new g(this.af);this.ya.set("text",this.af);this.ya.set("matrix",r);this.ya.set("matrix",this.Rh);this.g.add(this.ya)}}};a.prototype.Wf=function(a){this.g.fF().sort(function(a,b){return b.get("index")-a.get("index")}).forEach(function(b){b.Jj(a)}.bind(this))};a.prototype.Lf=function(a){this.Je=d.gva(this.Rh,this.Je);return new k(this,[this.Je],this.iS(),a)};return a});
define("hf","require,fg,ll,lf,M,eb,kN,R".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("lf"),f=a("M"),e=a("eb"),g=a("kN"),k=a("R"),a=b.extend(g,function(a){g.call(this,g.nA,a);this.g.C.bind(c.Nc,this.Lg,this,n);this.g.C.bind(c.Ff,this.j6,this,n);this.g.C.bind(c.Mb,this.Mpa,this,n);this.g.C.bind(c.Eb,this.mc,this,n);this.g.C.bind(c.ec,this.Mg,this,n);this.fp=this.mj=this.Hc=this.Gc=m;this.Je=this.m=r;this.jn=y;this.ya=""});a.prototype.clear=function(){this.g.C.unbind(c.Nc,this.Lg,this,n);this.g.C.unbind(c.Ff,
this.j6,this,n);this.g.C.unbind(c.Eb,this.mc,this,n);this.g.C.unbind(c.ec,this.Mg,this,n);this.jn&&(this.g.Fz(k.me),this.jn=y);this.Pl("")};a.prototype.update=function(a){this.m=a;this.$W()};a.prototype.Lg=function(a){this.Gc=a.x;this.Hc=a.y;this.DL()};a.prototype.j6=function(){this.Hc=this.Gc=m;this.DL()};a.prototype.Mpa=function(){this.Hc=this.Gc=m;this.DL()};a.prototype.mc=function(a){this.Gc=this.mj=a.x;this.Hc=this.fp=a.y;this.Wf(this.Lf(c.G0))};a.prototype.Mg=function(a){this.Gc=a.x;this.Hc=
a.y;this.Wf(this.Lf(c.H0));this.nT(this.mj,this.fp,this.Gc,this.Hc)&&this.Wf(this.Lf(c.Gi))};a.prototype.$W=function(){if(!this.Wl)this.Wl=setTimeout(function(){this.Wl=r;this.vg()}.bind(this),300)};a.prototype.DL=function(){if(this.Wl){clearTimeout(this.Wl);this.Wl=r}this.vg()};a.prototype.vg=function(){var a=this.Lf(c.Hi);this.Wf(a);this.Pl(a.UF());if(this.jn!=a.Uz()){this.jn&&this.g.Fz(k.me);(this.jn=a.Uz())&&this.g.gN(k.me)}};a.prototype.Pl=function(a){if(this.ya!=a){this.ya=a;this.g.C.set("toolTip",
this.ya)}};a.prototype.Wf=function(a){this.g.fF().sort(function(a,b){return b.get("index")-a.get("index")}).forEach(function(b){b.Jj(a)}.bind(this))};a.prototype.Lf=function(a){return new e(this,this.sI(),r,a)};a.prototype.sI=function(){if(this.Gc!==m&&this.Hc!==m&&this.m.ye){var a=f.As(this.m.ye);if(a){this.Je=d.$ba(a,this.Gc,this.Hc,this.m.width,this.m.height,this.Je);return[this.Je]}}return[]};a.prototype.nT=function(a,b,c,d){a=c-a;b=d-b;return Math.sqrt(a*a+b*b)<=5};return a});
define("fb","require,fg,ll,lf,M,eb,kN".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("lf"),f=a("M"),e=a("eb"),g=a("kN"),a=b.extend(g,function(a){g.call(this,g.oA,a);this.g.C.bind(c.Eb,this.mc,this,n);this.g.C.bind(c.ec,this.Mg,this,n);this.fp=this.mj=this.Hc=this.Gc=m;this.m=r;this.pia=Array(k.length);this.Voa=Array(i.length);this.ya="";this.vg=this.vg.bind(this)});a.prototype.clear=function(){this.g.C.unbind(c.Eb,this.mc,this,n);this.g.C.unbind(c.ec,this.Mg,this,n);this.Pl("")};a.prototype.update=
function(a){this.m=a;this.$W()};a.prototype.mc=function(a){this.Gc=this.mj=a.x;this.Hc=this.fp=a.y;this.Wf(this.Lf(c.G0))};a.prototype.Mg=function(a){this.Gc=a.x;this.Hc=a.y;this.Wf(this.Lf(c.H0));this.nT(this.mj,this.fp,this.Gc,this.Hc)&&this.Wf(this.Lf(c.Gi))};a.prototype.$W=function(){if(!this.Wl)this.Wl=setTimeout(this.vg,300)};a.prototype.DL=function(){if(this.Wl){clearTimeout(this.Wl);this.Wl=r}this.vg()};a.prototype.vg=function(){this.Wl=r;var a=this.Lf(c.Hi);this.Wf(a);this.Pl(a.UF())};a.prototype.Pl=
function(a){if(this.ya!=a){this.ya=a;a=this.g.C;a.set("toolTip",this.ya);if(!a.get("toolTipDisabled")){var b=a.Ra().ya;this.ya?b.bza(a,this.ya):b.hide()}}};a.prototype.Wf=function(a){this.g.fF().sort(function(a,b){return b.get("index")-a.get("index")}).forEach(function(b){b.Jj(a)}.bind(this))};a.prototype.Lf=function(a){var b;b=a==c.Hi?this.sI(this.m.width*0.5,this.m.height*0.5,k,this.pia):this.sI(this.Gc,this.Hc,i,this.Voa);return new e(this,b,r,a)};a.prototype.sI=function(a,b,c,e){var g=this.m.ye&&
f.As(this.m.ye);if(g){var i=this.m.width,k=this.m.height,u=Math.min(i,k)/100;c.forEach(function(c,f){e[f]=d.$ba(g,a+c[0]*u,b+c[1]*u,i,k,e[f])});return e}return[]};a.prototype.nT=function(a,b,c,d){a=c-a;b=d-b;b=Math.sqrt(a*a+b*b);d=4*Math.round(1*Math.min(window.screen.width,window.screen.height)/100);return b<=d};var k=function(){for(var a=[],b=-5;b<=5;b++)for(var c=-5;c<=5;c++){var d=Math.sqrt(c*c+b*b);d<5&&a.push([c,b,d])}for(c=-30;c<-5;c++)a.push([c,0,Math.sqrt(c*c)]);for(c=6;c<=30;c++)a.push([c,
0,Math.sqrt(c*c)]);for(b=-15;b<-5;b++)a.push([0,b,Math.sqrt(b*b)]);for(b=6;b<=15;b++)a.push([0,b,Math.sqrt(b*b)]);a.sort(function(a,b){return a[2]-b[2]});return a.map(function(a){return[a[0],a[1]]})}(),i=function(){for(var a=[],b=0;b<5;b++)for(var c=-2+4*b/4,d=0;d<5;d++){var e=-2+4*d/4,f=Math.sqrt(e*e+c*c);f<=2&&a.push([e,c,f])}a.sort(function(a,b){return a[2]-b[2]});return a.map(function(a){return[a[0],a[1]]})}();return a});
define("fD","require,cg,iJ,ds,hf,kN,fb".split(","),function(a){var b=a("cg"),c=a("iJ"),d=a("ds"),f=a("hf"),e=a("kN"),g=a("fb");return{create:function(a,i){switch(a){case e.IG:return new b(i);case e.hP:return new c(i);case e.mA:return new d(i);case e.nA:return new f(i);case e.oA:return new g(i)}}}});
define("lF",["require","R"],function(a){function b(a){this.Pb=a;this.Xf=[]}var c=a("R");b.prototype.push=function(a){this.Xf.push(a);this.L()};b.prototype.pop=function(a){for(var b=this.Xf.length-1;0<=b;b--)if(this.Xf[b]==a){this.Xf.splice(b,1);this.L();break}};b.prototype.clear=function(){0<this.Xf.length&&(this.Pb.set("cursor",c.dd),this.Xf=[])};b.prototype.L=function(){this.Pb.set("cursor",0<=this.Xf.indexOf(c.uG)?c.uG:0<=this.Xf.indexOf(c.me)?c.me:0<this.Xf.length?this.Xf[this.Xf.length-1]:c.dd)};
return b});
define("kG",["require","r"],function(a){function b(a){for(var a=atob(a.split(",")[1]),b=[],c=0;c<a.length;c++)b.push(a.charCodeAt(c));return new Blob([new Uint8Array(b)],{type:"image/jpeg"})}var c=a("r");return{vza:function(a,f){f||(f="screenshot.jpg");var e;a:{try{e=a.toDataURL("image/jpeg");break a}catch(g){}e=m}if(!e)return y;var k=f,i=document.createElement("a");"string"===typeof i.download?(document.body.appendChild(i),i.download=k,i.href=e,i.click(),document.body.removeChild(i)):c.browser()==
c.iq?window.navigator.msSaveOrOpenBlob(b(e),k):window.location.replace(e);return n}}});
define("dQ","require,fg,ih,ll,bZ,d,R,r,db,gm,dS,lr,hy,dG,dd,eW,fD,kN,lF,jN,hZ,it,bi,V,kG".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("bZ"),e=a("d"),g=a("R"),k=a("r"),i=a("db"),p=a("gm"),j=a("dS"),l=a("lr"),q=a("hy"),o=a("dG"),t=a("dd"),s=a("eW"),u=a("fD"),v=a("kN"),w=a("lF"),x=a("jN"),z=a("hZ"),F=a("it"),A=a("bi"),K=a("V"),E=a("kG"),J=Math.PI/180,B=b.extend(e,function(a,b,f){e.call(this);this.Uc("Renderer");this.set("toolTipDisabled",n);this.set("cursor",g.lq);this.set("layout",
"absolute");this.ib=a;this.C=b;this.Tb=f;this.hR=new w(b);this.ii=r;this.m=new l;this.Ua=new s(this.ib,this.C,this.Tb,this);this.Ua.bind(d.aa,this.La,this,n);this.oj=new o;this.m.ye=this.oj.qj;this.m.RE=this.oj.C3;this.m.SE=this.oj.D3;this.m.Kc=this.oj.As();this.Q5=(new Date).getTime();this.Pa().append(this.oj.Cb());this.j4=new j;this.Pa().append(this.j4.Cb());this.Ny=new q(b,f);this.Pa().append(this.Ny.Cb());this.K$=new z;this.K$.bind(d.T,this.ooa,this,n);this.x6=new x;this.x6.bind(d.aa,this.Una,
this,n);this.gI=new p(this.m.width,this.m.height,this.m.bd*J);this.bind(d.vb,this.jb,this,n);this.bind(d.od,this.th,this,n);this.bind(d.zd,this.qh,this,n);A.bind(d.aa,this.mk,this,n);i.bind(d.aa,this.Ina,this,n);c.Rb(this.Tb,["fxaaEnabled","aaEnabled","hotspotsEnabled","preloadEnabled"],function(){this.m.Xv=this.Tb.get("hotspotsEnabled");this.m.yF=this.Tb.get("preloadEnabled");this.m.sM=this.Tb.get("fxaaEnabled");this.m.XL=this.Tb.get("aaEnabled");this.La()}.bind(this),n);c.Rb(this.Tb,["surfaceSelectionEnabled"],
this.hX.bind(this));this.hX();this.mk();c.Rb(this.ib,["defaultVRPointer"],this.Yl.bind(this));this.Yl()});B.prototype.create=function(a){return t.create(a)};B.prototype.add=function(a){this.Ua.appendChild(a)};B.prototype.remove=function(a){(a=this.Ua.$f(a))&&a.remove()};B.prototype.$f=function(a){return this.Ua.$f(a)};B.prototype.fF=function(){return this.Ua.all()};B.prototype.uea=function(a){this.m.aN=a};B.prototype.gN=function(a){this.hR.push(a)};B.prototype.Fz=function(a){this.hR.pop(a)};B.prototype.nN=
function(a){this.m.dM=a;this.La()};B.prototype.AZ=function(){k.browser()!=k.Df&&this.j4.trigger();this.m.gF=n;this.oV();var a=E.vza(this.oj.xg());this.m.gF=y;this.oV();return a};B.prototype.getPixelRatio=function(){return this.oj.getPixelRatio()};B.prototype.Yl=function(){var a;a=this.m.Db?i.YM()&&this.ib.get("defaultVRPointer")=="laser"?v.mA:A.CM()==A.fga.HO?v.hP:v.IG:k.Xa()?v.oA:v.nA;if(!(this.ii&&this.ii.Qd()==a)){this.ii&&this.ii.clear();this.ii=u.create(a,this);this.hX();this.ii.update(this.m)}};
B.prototype.hX=function(){this.m.SF=this.Tb.get("surfaceSelectionEnabled")&&[v.nA,v.mA,v.oA].indexOf(this.ii&&this.ii.Qd())>=0};B.prototype.nj=function(){this.hR.clear();e.prototype.nj.call(this)};B.prototype.jb=function(){var a=this.Aa(),c=this.eb();if(this.m.width!=a||this.m.height!=c)if(!a||!c)b.log("Invalid size values: "+a+" "+c);else{this.m.width=a;this.m.height=c;this.gI.RF(this.m.width);this.gI.pea(this.m.height);this.La()}};B.prototype.th=function(){this.m.enabled=n;this.La()};B.prototype.qh=
function(){this.m.enabled=y;this.La()};B.prototype.mk=function(){this.m.Db=A.isPresenting();this.Yl();this.La()};B.prototype.Ina=function(){this.Yl();this.La()};B.prototype.ooa=function(){this.La()};B.prototype.Una=function(){this.La()};B.prototype.sw=function(a){if(this.m.zi!=a){this.m.zi=a;this.La()}};B.prototype.Ia=function(a,c,d,e){if(this.m.ma!=a||this.m.pitch!=c||this.m.md!=d||this.m.bd!=e)if(isNaN(a)||isNaN(c)||isNaN(d)||!e)b.log("Invalid position values: "+a+" "+c+" "+d+" "+e);else{this.m.ma=
a;this.m.pitch=c;this.m.md=d;this.m.bd=e;this.gI.nw(this.m.bd*J);this.La()}};B.prototype.Zb=function(){return this.m.ma};B.prototype.dc=function(){return this.m.pitch};B.prototype.Pd=function(){return this.m.md};B.prototype.Oe=function(){return this.m.bd};B.prototype.kY=function(){return this.m.Db?this.m.Bf:F.On(this.m.Bf,this.m.width,this.m.height)};B.prototype.lY=function(){return this.m.Bf};B.prototype.unproject=function(a){return this.gI.unproject(a)};B.prototype.La=function(){K.La(this.Ng,this)};
B.prototype.Ng=function(){if(K.OY){var a=(new Date).getTime(),b=Math.max(1,Math.min(a-this.Q5,33));this.Q5=a;this.trigger(new f(B.BO,{frameTime:b}));if(this.m.enabled){this.m.wd=b;this.oV()}}else this.La()};B.prototype.oV=function(){this.oj.update(this.m);this.m.cM=this.oj.Wua();this.m.LE=this.oj.Vua();this.m.Bf=this.oj.Tua();this.m.bh=this.oj.getPixelRatio();this.Ua.update(this.m);this.K$.update(this.m);this.x6.update(this.m);this.ii.update(this.m);this.oj.render()};B.BO="render start";B.Iea=R(n);
return B});define("dt",["require"],function(){function a(){}a.prototype.clear=C();a.OAa=function(b){return a.create(b,C())};a.create=function(b,c){c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.id=b;c.not="!"+b;return c};a.Hv=function(b,c){var d=a.create(b,c);d.ZY=n;return d};return a});
define("eo",["require","dt"],function(a){var a=a("dt"),b={};b.Geometry=a.create("GeometryComponent",function(){this.geometry=r});b.oq=a.create("MaterialComponent",function(){this.material=r});b.Mesh=a.create("MeshComponent",function(){this.Jk=r});b.um=a.Hv("MeshSystemStateComponent",function(){this.Jk=r});b.pq=a.create("ModelComponent",function(){this.kda=r});b.qq=a.create("ModelComponentSystemState",function(){this.manager=r});b.OrthographicCamera=a.create("OrthographicCameraComponent",C());b.Kw=
a.Hv("OrthographicCameraSystemStateComponent",function(){this.Kc=r});b.Kh=a.create("ParentComponent",function(){this.UE=r});b.Yk=a.Hv("ParentSystemStateComponent",function(){this.Vc=this.parent=r});b.Ow=a.create("TransformComponent",function(){this.Xda=this.Wda=this.Vda=this.pZ=this.Fda=this.Eda=0;this.aea=this.$da=this.Zda=1});b.Gf=a.create("RendererComponent",function(){this.canvas=r;this.antialias=n;this.height=this.width=100;this.aM=this.BZ=this.ef=r});b.rq=a.Hv("RendererSystemStateComponent",
function(){this.height=this.width=m;this.Kc=this.Ej=this.ef=r});b.Scene=a.create("SceneComponent",function(){this.Ej=r});b.Nw=a.Hv("SceneSystemStateComponent",function(){this.Ej=r});b.Texture=a.create("TextureComponent",function(){this.texture=r});b.sq=a.create("VideoMaterialComponent",function(){this.Bba=this.Zea=this.Rp=r});b.tq=a.Hv("VideoMaterialSystemStateComponent",function(){this.manager=r});b.jh=a.create("ViewportComponent",function(){this.height=this.width=this.hw=r});b.uq=a.create("ViewportPlaneGeometryComponent",
function(){this.Rp=this.hw=r});b.Zn=a.Hv("ViewportPlaneGeometrySystemStateComponent",function(){this.geometry=r;this.zIndex=this.Yda=this.verticalAlign=this.Ica=this.Fea=this.Gea=m});return b});
define("ji",["require"],function(){function a(b,c){this.Pn=b;this.mza=c||"Entity";this.id=this.mza+"_"+a.Lwa++;this.Dk={};this.AF={};this.c_=0}a.prototype.Ub=function(a){return this.Dk[a.id]};a.prototype.gm=function(a){var c=this.Dk[a.id];c&&this.Pn.eua(this,a);return c};a.prototype.je=function(a){if(a.id in this.Dk)return this.Dk[a.id];a.ZY&&this.c_++;var c=this.Dk[a.id]=new a;this.Pn.Lta(this,a);return c};a.prototype.Mk=function(a){a.id in this.Dk&&(a.ZY&&this.c_--,this.AF[a.id]=this.Dk[a.id],delete this.Dk[a.id],
this.Pn.Nda(this,a,m))};a.prototype.hua=function(){for(var a in this.AF)this.AF[a].clear(),delete this.AF[a]};a.prototype.oxa=function(){for(var a in this.Dk){var c=this.Dk[a].constructor;c.ZY||(this.AF[a]=this.Dk[a],delete this.Dk[a],this.Pn.Nda(this,c,y))}};a.Lwa=0;return a});define("bI",["require"],function(){function a(){this.id=a.WT++;this.entities=[]}a.WT=0;return a});
define("ip",["require"],function(){function a(b,c){this.id=a.WT++;this.name=c;this.entities=b.entities;this.ss=b.entities.slice();this.Wg=[];this.jN=[]}a.prototype.fua=function(){!this.ss.length||(this.ss=[]);!this.Wg.length||(this.Wg=[]);!this.jN.length||(this.jN=[])};a.WT=0;return a});
define("bd",["require","bI","ip"],function(a){function b(){this.Uva={};this.rb={};this.ew={};this.jz={};this.Ep={};this.dw={};this.QE={};this.cw={}}function c(a){return"string"==typeof a?a:a.id}var d=a("bI"),f=a("ip");b.prototype.ke=function(a){this.QE[a.id]={};this.QE[a.not]={}};b.prototype.rua=function(a,b){var c=this.Fla(a),d=new f(c,b);this.ew[c.id].push(d);return d};b.prototype.Fla=function(a){var b=this.Uva[this.Gla(a)];if(b)return b;b=new d;this.rb[b.id]=b;a=a.map(c);this.cw[b.id]={};for(var f=
0;f<a.length;f++){var i=a[f];this.cw[b.id][i]=n;this.QE[i][b.id]=n}this.dw[b.id]={};this.ew[b.id]=[];return b};b.prototype.Gla=function(a){a=a.map(c);a.sort();return a.join("-")};b.prototype.Qwa=function(a){this.jz[a.id]={};this.Ep[a.id]={}};b.prototype.Rwa=function(a){delete this.jz[a.id];delete this.Ep[a.id]};b.prototype.Nwa=function(a,b){var c=b.id,d=b.not,f=a.id;this.jz[f][c]=n;for(var j in this.Ep[f])if(d in this.cw[j]){delete this.dw[j][f];delete this.Ep[f][j];var l=this.rb[j].entities;l.splice(l.indexOf(a),
1);for(var l=this.ew[j],q=0,o=l.length;q<o;q++){var t=l[q];t.jN.push(a)}}for(j in this.QE[c])if(!(f in this.dw[j])){var d=n,s;for(s in this.cw[j])if(l="!"!=s[0],(l?s:s.slice(1))in this.jz[f]!=l){d=y;break}if(d){this.dw[j][f]=n;this.Ep[f][j]=n;this.rb[j].entities.push(a);l=this.ew[j];q=0;for(o=l.length;q<o;q++)t=l[q],t.ss.push(a)}}};b.prototype.Pwa=function(a,b){var c=b.id,d="!"+c,f=a.id;delete this.jz[f][c];for(var j in this.Ep[f])if(c in this.cw[j]){delete this.dw[j][f];delete this.Ep[f][j];var l=
this.rb[j].entities;l.splice(l.indexOf(a),1);for(var l=this.ew[j],q=0,o=l.length;q<o;q++){var t=l[q];t.jN.push(a)}}for(j in this.QE[d])if(!(f in this.dw[j])){var c=n,s;for(s in this.cw[j])if(l="!"!=s[0],(l?s:s.slice(1))in this.jz[f]!=l){c=y;break}if(c){this.dw[j][f]=n;this.Ep[f][j]=n;this.rb[j].entities.push(a);l=this.ew[j];q=0;for(o=l.length;q<o;q++)t=l[q],t.ss.push(a)}}};b.prototype.Owa=function(a,b){var c=b.id,d=a.id,f;for(f in this.Ep[d])if(c in this.cw[f])for(var j=this.ew[f],l=0,q=j.length;l<
q;l++){var o=j[l];0>o.Wg.indexOf(a)&&o.Wg.push(a)}};return b});
define("iC",["require","V","ji","bd"],function(a){function b(a){this.ib=a;this.LR={};this.eB=[];this.Ria={};this.SD=[];this.Zu=new f;this.YH=[];this.Pr=y}var c=a("V"),d=a("ji"),f=a("bd");b.prototype.ke=function(a){this.Ria[a.id]=a;this.Zu.ke(a);return this};b.prototype.gw=function(a,b){var c=new a(this,b);c.order=this.SD.length;this.SD.push(c);for(var d in a.rb)c[d]=this.Zu.rua(a.rb[d],b+"."+d);this.SD.sort(function(a,b){return a.Sd-b.Sd||a.order-b.order});return this};b.prototype.Gv=function(a){a=
new d(this,a);this.LR[a.id]=a;this.Zu.Qwa(a);this.Is();return a};b.prototype.jM=function(a){a.id in this.LR&&(delete this.LR[a.id],this.eB.push(a),a.oxa(),this.Is())};b.prototype.Lta=function(a,b){this.Zu.Nwa(a,b);this.Is()};b.prototype.Nda=function(a,b,c){this.Zu.Pwa(a,b);c||this.YH.push(a);this.Is()};b.prototype.eua=function(a,b){this.Zu.Owa(a,b);this.Is()};b.prototype.Is=function(){this.Pr||(this.Pr=n,c.La(this.update,this))};b.prototype.update=function(){this.Pr=y;var a=(new Date).getTime(),b=
this.R5?a-this.R5:0;this.R5=a;for(var c=0;c<this.SD.length;c++){var d=this.SD[c];d.execute(b,a);for(var f in d.constructor.rb)d[f].fua()}for(c=0;c<this.YH.length;c++)this.YH[c].hua();this.YH.length=0;for(c=this.eB.length-1;0<=c;c--)0==this.eB[c].c_&&(this.Zu.Rwa(this.eB[c]),this.eB.splice(c,1))};return b});define("iT",["require"],function(){function a(a,c){this.Pn=a;this.name=c;this.Sd=0}a.prototype.execute=C();return a});
define("fZ",["require","eo"],function(a){var b=a("eo"),a={Rs:function(a){var c=a.je(b.um);a.je(b.Ow);var e=a.gm(b.Mesh);c.Jk=e.Jk=new THREE.Mesh(a.Ub(b.Geometry).geometry,a.Ub(b.oq).material)}},c=new THREE.Euler;a.update=function(a){var f=a.gm(b.um);f.Jk.geometry=a.Ub(b.Geometry).geometry;f.Jk.material=a.Ub(b.oq).material;var a=a.Ub(b.Ow),f=f.Jk,e=y;if(f.position.x!=a.Eda||f.position.y!=a.Fda||f.position.z!=a.pZ)f.position.x=a.Eda,f.position.y=a.Fda,f.position.z=a.pZ,e=n;if(f.rotation.x!=a.Vda||f.rotation.y!=
a.Wda||f.rotation.z!=a.Xda)c.x=a.Vda,c.y=a.Wda,c.z=a.Xda,f.wBa(c),e=n;if(f.scale.x!=a.Zda||f.scale.y!=a.$da||f.scale.z!=a.aea)f.scale.x=a.Zda,f.scale.y=a.$da,f.scale.z=a.aea,e=n;e&&f.updateMatrix()};a.Mn=function(a){a.Ub(b.um).Jk=r;a.Mk(b.um)};return a});
define("eh",["require","fg","iT","eo","fZ"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("fZ"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){this.rF.entities.length&&this.rF.entities.forEach(function(a){f.Rs(a)});this.qF.Wg.length&&this.qF.Wg.forEach(function(a){f.update(a)});this.ZM.entities.length&&this.ZM.entities.forEach(function(a){f.Mn(a)});this.Iwa.entities.length&&this.ZM.entities.forEach(function(a){f.Mn(a)});this.Jwa.entities.length&&this.ZM.entities.forEach(function(a){f.Mn(a)})};
a.rb={};a.rb.rF=[d.Mesh,d.Geometry,d.oq,d.um.not];a.rb.qF=[d.Mesh,d.Geometry,d.oq,d.Ow,d.um];a.rb.ZM=[d.Mesh.not,d.um];a.rb.Iwa=[d.Geometry.not,d.um];a.rb.Jwa=[d.oq.not,d.um];return a});
define("bz",["require","eo"],function(a){function b(a){this.Bo=a;this.Ug=y;this.Vla=new THREE.GLTFLoader;this.Vla.load(this.Bo.Ub(c.pq).kda.get("url"),this.Fna.bind(this),this.Hna.bind(this),this.Gna.bind(this))}var c=a("eo");b.prototype.Fna=function(a){console.log("GLTF loaded",a)};b.prototype.Hna=function(a){console.log("GLTF loading progress",a.loaded+"/"+a.total)};b.prototype.Gna=function(a){console.log("GLTF loading error",a)};b.prototype.update=function(){this.Ug&&(this.Ug=y)};b.prototype.Ha=
function(){this.Ug||(this.Ug=n,this.Bo.Pn.Is())};b.prototype.dispose=C();b.Rs=function(a){a.je(c.qq).manager=new b(a)};b.Mn=function(a){var b=a.Ub(c.qq);b.manager.dispose();b.manager=r;a.Mk(c.qq)};b.update=function(a){a.Ub(c.qq).manager.update()};return b});
define("iv",["require","fg","iT","eo","bz"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("bz"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){this.mda.entities.length&&this.mda.entities.forEach(function(a){f.Rs(a)});this.lda.Wg.length&&this.lda.Wg.forEach(function(a){f.update(a)});this.nda.entities.length&&this.nda.entities.forEach(function(a){f.Mn(a)})};a.rb={};a.rb.mda=[d.pq,d.qq.not];a.rb.lda=[d.pq,d.qq];a.rb.nda=[d.pq.not,d.qq];return a});
define("fY",["require","eo"],function(a){function b(a){if(!a)return r;var b=a.Ub(c.Scene);return b?b.Ej:(b=a.Ub(c.Mesh))?b.Jk:(a=a.Ub(c.OrthographicCamera))?a.Kc:r}var c=a("eo");return{Rs:function(a){var f=a.je(c.Yk);f.parent=b(a.Ub(c.Kh).UE);f.Vc=b(a);f.parent&&f.Vc&&f.parent.add(f.Vc)},update:function(a){var f=a.gm(c.Yk),e=b(a.Ub(c.Kh).UE),a=b(a);if(f.parent!=e||f.Vc!=a)f.parent&&f.Vc&&f.parent.remove(f.Vc),f.parent=e,f.Vc=a,f.parent&&f.Vc&&f.parent.add(f.Vc)},Mn:function(a){var b=a.Ub(c.Yk);b.parent&&
b.Vc&&b.parent.remove(b.Vc);b.parent=r;b.Vc=r;a.Mk(c.Yk)}}});
define("jO",["require","fg","iT","eo","fY"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("fY"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){this.rF.entities.length&&this.rF.entities.forEach(function(a){f.Rs(a)});this.vF.entities.length&&this.vF.entities.forEach(function(a){f.Rs(a)});this.qF.Wg.length&&this.qF.Wg.forEach(function(a){f.update(a)});this.yda.Wg.length&&this.yda.Wg.forEach(function(a){f.update(a)});this.nba.entities.length&&this.nba.entities.forEach(function(a){f.Mn(a)});
this.oba.entities.length&&this.oba.entities.forEach(function(a){f.Mn(a)})};a.rb={};a.rb.rF=[d.Mesh,d.Kh,d.Yk.not];a.rb.vF=[d.OrthographicCamera,d.Kh,d.Yk.not];a.rb.qF=[d.Mesh,d.Kh,d.Yk];a.rb.yda=[d.OrthographicCamera,d.Kh,d.Yk];a.rb.nba=[d.OrthographicCamera.not,d.Mesh.not,d.Kh,d.Yk];a.rb.oba=[d.Kh.not,d.Yk];return a});define("eJ",["require","fK"],function(a){return a("fK")});
define("iP",["require","fg","iT","eo","eJ"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("eJ"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){for(var a=0,b=this.bea.entities.length;a<b;a++)this.Wya(this.bea.entities[a]);a=0;for(b=this.vF.entities.length;a<b;a++)this.Uya(this.vF.entities[a]);a=0;for(b=this.Qda.entities.length;a<b;a++)this.Vya(this.Qda.entities[a]);a=0;for(b=this.iw.entities.length;a<b;a++)this.Eua(this.iw.entities[a]);a=0;for(b=this.cea.entities.length;a<
b;a++)this.rza(this.cea.entities[a]);a=0;for(b=this.zda.entities.length;a<b;a++)this.pza(this.zda.entities[a]);a=0;for(b=this.Rda.entities.length;a<b;a++)this.qza(this.Rda.entities[a])};a.prototype.Wya=function(a){var b=a.gm(d.Scene);a.je(d.Nw).Ej=b.Ej=new THREE.Scene};a.prototype.Uya=function(a){var b=a.gm(d.OrthographicCamera);a.je(d.Kw).Kc=b.Kc=new THREE.OrthographicCamera};a.prototype.Vya=function(a){var b=a.Ub(d.Gf),a=a.je(d.rq);a.ef=new THREE.WebGLRenderer({precision:"mediump",alpha:n,canvas:b.canvas,
context:f.bY(b.canvas,b.antialias||y)});a.ef.setPixelRatio(f.getPixelRatio());a.ef.autoClear=y;a.ef.setClearColor(0,0);a.width=b.width;a.height=b.height};a.prototype.Eua=function(a){var b=a.Ub(d.Gf),a=a.Ub(d.rq),c=a.ef,f=b.aM&&b.aM.Ub(d.OrthographicCamera).Kc,p=b.width,j=b.height;if(a.width!=p||a.height!=j||a.Kc!=f)a.width=p,a.height=j,a.Kc=f,c.setSize(p,j),f&&(f.left=-0.5*p,f.right=0.5*p,f.top=0.5*j,f.bottom=-0.5*j,f.updateProjectionMatrix());b=b.BZ&&b.BZ.Ub(d.Scene).Ej;a.Ej!=b&&(a.Ej=b);c.clear();
b&&f&&c.render(b,f)};a.prototype.qza=function(a){var b=a.Ub(d.rq);b.ef.forceContextLoss();b.ef.dispose();b.ef=r;a.Mk(d.rq)};a.prototype.pza=function(a){var b=a.Ub(d.Kw);b.Kc.parent&&b.Kc.parent.remove(b.Kc);b.Kc=r;a.Mk(d.Kw)};a.prototype.rza=function(a){a.Ub(d.Nw).Ej=r;a.Mk(d.Nw)};a.rb={};a.rb.Qda=[d.Gf,d.rq.not];a.rb.Rda=[d.Gf.not,d.rq];a.rb.iw=[d.Gf,d.rq];a.rb.bea=[d.Scene,d.Nw.not];a.rb.cea=[d.Scene.not,d.Nw];a.rb.vF=[d.OrthographicCamera,d.Kw.not];a.rb.zda=[d.OrthographicCamera.not,d.Kw];return a});
define("eV",["require","ll","fu","bZ","kT"],function(a){function b(a,b,c,e){this.F=a;this.V=b;this.ZH=c;this.Ha=e;this.ib=a.Ra();this.Em=this.V.get("currentTime");this.m=this.V.get("state");this.kK=this.ib.get("mute");this.sJ=this.V.get("mute");this.m=this.V.get("autoplay")?d.O:d.uc;this.EP();this.V.set("state",this.m);this.F.Jd(this.kK||this.sJ);this.F.Zp(this.Em);this.F.jc(this.m)}var c=a("ll"),d=a("fu"),f=a("bZ"),e=a("kT");b.prototype.dispose=function(){this.iV()};b.prototype.K7=function(){var a=
this.V.get("currentTime",0);this.Em!=a&&this.F.Zp(this.Em=a)};b.prototype.M7=function(){var a=this.V.get("state",d.I);this.m!=a&&this.F.jc(this.m=a)};b.prototype.L7=function(){var a=this.V.get("mute",y);this.sJ!=a&&this.F.Jd(this.kK||(this.sJ=a))};b.prototype.FC=function(){var a=this.ib.get("mute",y);this.kK!=a&&this.F.Jd((this.kK=a)||this.sJ)};b.prototype.LC=function(){this.V.set("currentTime",this.Em=this.F.zj())};b.prototype.JC=function(){this.V.set("duration",this.F.Aj())};b.prototype.KC=function(){this.V.set("state",
this.m=this.F.Pe());this.Ha()};b.prototype.MC=function(){this.ZH.trigger(new f(c.Ba));this.V.get("loop")&&(this.F.Zp(this.Em=0),this.F.jc(this.m=d.O))};b.prototype.EP=function(){this.ib.bind(c.D("mute"),this.FC,this,n);this.F.bind(e.Ld,this.LC,this,n);this.F.bind(e.cg,this.JC,this,n);this.F.bind(c.xc,this.KC,this,n);this.F.bind(c.Ba,this.MC,this,n);this.V.bind(c.D("currentTime"),this.K7,this,n);this.V.bind(c.D("state"),this.M7,this,n);this.V.bind(c.D("mute"),this.L7,this,n)};b.prototype.iV=function(){this.ib.unbind(c.D("mute"),
this.FC,this,n);this.F.unbind(e.Ld,this.LC,this,n);this.F.unbind(e.cg,this.JC,this,n);this.F.unbind(c.xc,this.KC,this,n);this.F.unbind(c.Ba,this.MC,this,n);this.V.unbind(c.D("currentTime"),this.K7,this,n);this.V.unbind(c.D("state"),this.M7,this,n);this.V.unbind(c.D("mute"),this.L7,this,n);this.V.unbind(c.D("opacity"),this.iU,this,n)};return b});
define("s","require,ll,fu,ge,bS,iG,eJ".split(","),function(a){function b(a,b,d,e,f){this.ub=a;this.F=b;this.V=d;this.ab=e;this.Ha=f;this.ry=this.ab.get("posterURL");this.vta=this.ab.get("url");this.Ac=r;this.V5();this.ab.bind(c.D("posterURL"),this.I7,this,n);this.Ha();this.ka=this.v=r}var c=a("ll"),d=a("fu"),f=a("ge"),e=a("bS"),g=a("iG"),k=a("eJ");b.prototype.update=function(){var a=this.F.vM();a.isEmpty()&&(a=r);if(a&&(!this.Ac||this.Ac&&!this.Ac.isEqual(a))){this.Ac=a;a=this.Ac.Zt;if(!this.v&&k.Yea(this.vta)){this.v=
document.createElement("canvas");this.ka=this.v.getContext("2d")}if(this.v&&k.Hh(a)){this.ka.drawImage(a,0,0,this.v.width=a.videoWidth,this.v.height=a.videoHeight);a=this.v}this.ub.image=a;this.ub.needsUpdate=n}else if(!this.Ac&&this.eD&&this.ub.image!=this.eD){this.ub.image=this.eD;this.ub.needsUpdate=n}(this.ub.needsUpdate||this.F.Pe()==d.O)&&this.Ha()};b.prototype.I7=function(){this.Rqa(this.ab.get("posterURL"))};b.prototype.Rqa=function(a){if(this.ry!=a){this.haa();this.ry=a;this.V5()}};b.prototype.V5=
function(){if(this.ry){this.eD=r;this.qy=new e;this.qy.ZZ([this.ry]);this.qy.bind(c.T,this.H7,this,n);g.In(this.qy,this.V.get("loadPriority",f.Sj))}};b.prototype.haa=function(){if(this.ry){this.qy.unbind(c.T,this.H7,this,n);g.Ai(this.qy,this.V.get("loadPriority",f.Sj));this.eD=this.qy=r}};b.prototype.H7=function(){this.eD=g.ve(this.ry);this.Ha()};b.prototype.dispose=function(){this.haa();this.ab.unbind(c.D("posterURL"),this.I7,this,n);this.ka=this.ab=r;this.v&&(this.v=this.v.width=this.v.height=0);
this.Ha=this.xf=this.F=this.ub=r};return b});
define("in",["require","eJ"],function(a){var b=a("eJ");return{ifa:function(){this.blending=0;this.Bz=m;this.Dea=this.Pea=0},pga:function(){this.Es=y;this.height=this.width=100},create:function(a,d,f){var e=a.Es&&b.Gca(),g=a.Es&&b.Fca(),k={uniforms:{},transparent:n};k.uniforms.texture={type:"sampler2D",value:f};k.uniforms.opacity={type:"float",value:1};f.flipY=!e;k.vertexShader=["varying vec2 vUV;\nvoid main() {","\tvUV = vec2( uv.x, "+(e?"1.0 - uv.y":"uv.y")+");","\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}"].join("\n");
if(g||d.blending||d.Bz){var e=[],i=[],e=e.concat(["uniform sampler2D texture;","uniform float opacity;","varying vec2 vUV;"]),i=i.concat([" vec4 color = texture2D(texture, vUV);"," float alpha = color.a * opacity;"]);if(d.blending){var p=0.5*Math.min(a.width,a.height)*d.blending;k.uniforms.blendingLimit={type:"v2",value:new THREE.Vector2(p/a.width,p/a.height)};e=e.concat(["uniform vec2 blendingLimit;"]);i=i.concat(" float xCoef = 0.0;, float yCoef = 0.0;, if (vUV.x < blendingLimit.x) {, xCoef = 1.0 - (vUV.x / blendingLimit.x);, xCoef = xCoef * xCoef;, } else if ((1.0 - vUV.x) < blendingLimit.x) {, xCoef = 1.0 - ((1.0 - vUV.x) / blendingLimit.x);, xCoef = xCoef * xCoef;, }, if (vUV.y < blendingLimit.y) {, yCoef = 1.0 - (vUV.y / blendingLimit.y);, yCoef = yCoef * yCoef;, } else if ((1.0 - vUV.y) < blendingLimit.y) {, yCoef = 1.0 - ((1.0 - vUV.y) / blendingLimit.y);, yCoef = yCoef * yCoef;, }, alpha = alpha * (1.0 - sqrt(xCoef + yCoef));".split(","))}d.Bz&&
(k.uniforms.chromaColor={type:"v3",value:new THREE.Vector3(parseInt(d.Bz.substr(1,2),16)/255,parseInt(d.Bz.substr(3,2),16)/255,parseInt(d.Bz.substr(5,2),16)/255)},k.uniforms.chromaThreshold={type:"f",value:d.Pea},k.uniforms.chromaSmoothing={type:"f",value:d.Dea},e=e.concat(["uniform vec3 chromaColor;","uniform float chromaThreshold;","uniform float chromaSmoothing;"]),i=i.concat(" float maskY = 0.2989 * chromaColor.r + 0.5866 * chromaColor.g + 0.1145 * chromaColor.b;{ float maskCr = 0.7132 * (chromaColor.r - maskY);{ float maskCb = 0.5647 * (chromaColor.b - maskY);{ float Y = 0.2989 * color.r + 0.5866 * color.g + 0.1145 * color.b;{ float Cr = 0.7132 * (color.r - Y);{ float Cb = 0.5647 * (color.b - Y);{ float chromaBlendValue = smoothstep(chromaThreshold, chromaThreshold + chromaSmoothing, distance(vec2(Cr, Cb), vec2(maskCr, maskCb)));{ alpha = alpha * chromaBlendValue;".split("{")));
i=i.concat(["\tgl_FragColor = vec4(color"+(g?".bgr":".rgb")+", alpha);"]);f.format=THREE.RGBAFormat;k.fragmentShader=[].concat(e,["void main() {"],i,["}"]).join("\n")}else k.fragmentShader="uniform sampler2D texture;\nuniform float opacity;\nvarying vec2 vUV;\nvoid main() {\n vec4 color = texture2D(texture, vUV);\n float alpha = color.a * opacity;\n\tgl_FragColor = vec4(color.rgb, alpha);\n}";a=new THREE.ShaderMaterial(k);a.transparent=n;a.depthWrite=n;a.side=THREE.FrontSide;a.depthTest=n;a.needsUpdate=
n;return a}}});define("dI",["require"],function(){var a={},b=r;a.Yua=function(){if(!b){var a=document.createElement("canvas");a.width=128;a.height=128;a.getContext("2d").clearRect(0,0,a.width,a.height);b=a}return b};return a});
define("Q","require,ih,ll,fu,eV,s,in,dI,eJ,eo,jt,hT,kT".split(","),function(a){function b(a){this.Bo=a;this.eU=this.eU.bind(this);a=a.Ub(j.sq);this.ZH=a.Bba;this.V=a.Rp;this.zX=a.Zea;this.ib=this.Bo.Pn.ib;this.Ug=y;this.ab=r;c.Rb(this.zX,["levels.url","levels.width","levels.height"],this.eU,n)}var c=a("ih"),d=a("ll"),f=a("fu"),e=a("eV"),g=a("s"),k=a("in"),i=a("dI"),p=a("eJ"),j=a("eo");a("jt");var l=a("hT"),q=a("kT");b.prototype.update=function(){if(this.Ug){this.Ug=y;this.sW.update()}};b.prototype.eU=
function(){this.N9(q.Zg(this.zX))};b.prototype.N9=function(a){if(this.ab!=a){if(this.ab){this.Raa.dispose();this.Raa=r;this.sW.dispose();this.sW=r;this.Oja();this.Pja();this.Qja();this.V.unbind(d.D("opacity"),this.iU,this,n);this.Ug=y}if(this.ab=a){this.ZA();this.YA();this.Eja();this.Ha=this.Ha.bind(this);this.Raa=new e(this.F,this.V,this.ZH,this.Ha);this.sW=new g(this.ub,this.F,this.V,this.ab,this.Ha);this.V.bind(d.D("opacity"),this.iU,this,n);this.Q9(this.zb=this.V.get("opacity",1));this.Ug=y;this.Ha()}}};
b.prototype.Ha=function(){if(!this.Ug){this.Ug=n;this.Bo.Pn.Is()}};b.prototype.ZA=function(){this.ub=new THREE.Texture;this.ub.image=i.Yua();this.ub.generateMipmaps=y;this.ub.minFilter=THREE.LinearFilter;this.ub.magFilter=THREE.LinearFilter;this.ub.format=THREE.RGBFormat};b.prototype.Pja=function(){this.ub.dispose();this.ub=r};b.prototype.Eja=function(){this.F=new q(this.Bo.Pn.ib,this.zX);this.rp=new l(this.V,this.F)};b.prototype.Qja=function(){this.F.jc(f.I);this.F.clear();this.F=r;this.rp.clear();
this.rp=r};b.prototype.YA=function(){var a=new k.pga;a.Es=p.Es(this.ab.get("url"));a.width=this.ab.get("width");a.height=this.ab.get("height");var b=new k.ifa;b.blending=this.V.get("blending",0);b.Bz=this.V.get("chromaColor");b.Pea=this.V.get("chromaThreshold",0);b.Dea=this.V.get("chromaSmoothing",0);this.wu=k.create(a,b,this.ub);this.Bo.je(j.oq).material=this.wu};b.prototype.Oja=function(){this.wu.dispose();this.wu=r;this.Bo.Mk(j.oq)};b.prototype.dispose=function(){this.N9(r);this.V.set("state",
f.I);this.Bo=this.ZH=this.V=this.ib=r};b.prototype.iU=function(){var a=this.V.get("opacity");if(this.zb!=a){this.Q9(this.zb=a);this.Ha()}};b.prototype.Q9=function(a){this.wu.opacity=a;if(this.wu.isShaderMaterial&&this.wu.uniforms.opacity)this.wu.uniforms.opacity.value=a};b.Rs=function(a){a.je(j.tq).manager=new b(a)};b.Mn=function(a){var b=a.Ub(j.tq);b.manager.dispose();b.manager=r;a.Mk(j.tq)};b.update=function(a){a.Ub(j.tq).manager.update()};return b});
define("dA",["require","fg","iT","eo","Q"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("Q"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){this.Ewa.entities.forEach(function(a){f.Rs(a)});this.Fwa.entities.forEach(function(a){f.Mn(a)});this.materials.entities.forEach(function(a){f.update(a)})};a.rb={};a.rb.Ewa=[d.sq,d.tq.not];a.rb.materials=[d.sq,d.tq];a.rb.Fwa=[d.sq.not,d.tq];return a});
define("iA",["require","fg","iT","eo"],function(a){var b=a("fg"),c=a("iT"),d=a("eo"),a=b.extend(c,function(){c.apply(this,arguments)});a.prototype.execute=function(){for(var a=0,b=this.o_.ss.length;a<b;a++)this.era(this.o_.ss[a]);a=0;for(b=this.iw.Wg.length;a<b;a++)this.Haa(this.iw.Wg[a]);a=0;for(b=this.iw.ss.length;a<b;a++)this.Haa(this.iw.ss[a])};a.prototype.era=function(a){var b=a.Ub(d.jh),c=b.hw.Ub(d.Gf),k=c&&c.height||100;if(b.width!=(c&&c.width||100)||b.height!=k)b=a.gm(d.jh),b.width=c&&c.width||
100,b.height=c&&c.height||100};a.prototype.Haa=function(a){var b=a.Ub(d.Gf);this.o_.entities.forEach(function(c){if(c.Ub(d.jh).hw==a){var k=c.Ub(d.jh);if(k.width!=b.width||k.height!=b.height)k=c.gm(d.jh),k.width=b.width,k.height=b.height}})};a.rb={};a.rb.o_=[d.jh];a.rb.iw=[d.Gf];return a});
define("di",["require"],function(){return{create:function(){var a=new THREE.BufferGeometry;a.setAttribute("position",new THREE.BufferAttribute(new Float32Array(18),3));a.setAttribute("normal",new THREE.BufferAttribute(new Float32Array(18),3));a.setAttribute("uv",new THREE.BufferAttribute(new Float32Array(12),2));a.setIndex(new THREE.BufferAttribute(new Uint32Array(6),1));return a},set:function(a,b,c,d,f,e,g,k,i,p,j,l,q,o,t){var s=a.getAttribute("position").array,u=a.getAttribute("normal").array,v=
a.getAttribute("uv").array,w=a.getIndex().array;s[9]=s[0]=b;s[10]=s[1]=c;s[11]=s[2]=d;v[6]=v[0]=f;v[7]=v[1]=e;s[3]=s[0]+j;s[4]=s[1]+l;s[5]=s[2]+q;v[2]=v[0];v[3]=v[1]+o;s[12]=s[6]=s[3]+g;s[13]=s[7]=s[4]+k;s[14]=s[8]=s[5]+i;v[8]=v[4]=v[2]+p;v[9]=v[5]=v[3];s[15]=s[12]-j;s[16]=s[13]-l;s[17]=s[14]-q;v[10]=v[8];v[11]=v[9]-o;b=k*q-i*l;i=i*j-g*q;g=g*l-k*j;k=1/Math.sqrt(b*b+i*i+g*g);u[0]=u[3]=u[6]=u[9]=u[12]=u[15]=b*k;u[1]=u[4]=u[7]=u[10]=u[13]=u[16]=i*k;u[2]=u[5]=u[8]=u[11]=u[14]=u[17]=g*k;w[0]=0;w[1]=2;
w[2]=1;w[3]=3;w[4]=5;w[5]=4;a.getAttribute("position").needsUpdate=n;a.getAttribute("normal").needsUpdate=n;a.getAttribute("uv").needsUpdate=n;a.clearGroups();a.addGroup(0,6,t);a.computeBoundingBox();a.computeBoundingSphere();return a}}});
define("kY",["require","ll","iN"],function(a){function b(a,b,d){this.Yi=a;this.V=b;this.AS=d;this.JK=this.JK.bind(this);this.Yw=m;this.V.forEach(function(a){this.Yi.bind(c.D(a),this.Fu,this,n)}.bind(this));this.JK()}var c=a("ll"),d=a("iN");b.prototype.stop=function(){this.V.forEach(function(a){this.Yi.unbind(c.D(a),this.Fu,this,n)}.bind(this));this.Yw&&(d.cancel(this.Yw),this.Yw=m)};b.prototype.Fu=function(){this.Yw||(this.Yw=d.jw(this.JK))};b.prototype.JK=function(){this.Yw=m;var a=this.Yi;this.AS.apply(window,
this.V.map(function(b){return a.get(b)}))};return b});
define("ek","require,fg,iT,eo,di,kY,jY,jn".split(","),function(a){var b=a("fg"),c=a("iT"),d=a("eo"),f=a("di"),e=a("kY"),g=a("jY"),k=a("jn"),i=b.extend(c,function(){c.apply(this,arguments)});i.prototype.execute=function(){for(var a=0,b=this.Bda.entities.length;a<b;a++)this.dra(this.Bda.entities[a]);a=0;for(b=this.Ada.Wg.length;a<b;a++)this.Ysa(this.Ada.Wg[a]);a=0;for(b=this.Cda.entities.length;a<b;a++)this.Tra(this.Cda.entities[a])};i.prototype.dra=function(a){var b=a.Ub(d.uq),c=a.je(d.jh);c.hw=b.hw;
var g=b.hw.Ub(d.Gf);if(g){c.width=g.width;c.height=g.height}c=a.je(d.Zn);c.geometry=f.create();c.Gda=new e(b.Rp,["width","height","horizontalAlign","verticalAlign","scaleMode","zIndex"],function(b,c,e,f,g,i){var k=a.gm(d.Zn);k.Gea=b;k.Fea=c;k.Ica=e;k.verticalAlign=f;k.Yda=g;k.zIndex=i});a.je(d.Geometry).geometry=c.geometry};i.prototype.Tra=function(a){var b=a.Ub(d.Zn);b.geometry.dispose();b.geometry=r;b.Gda.stop();b.Gda=r;a.Mk(d.Geometry);a.Mk(d.jh);a.Mk(d.Zn)};i.prototype.Ysa=function(a){var b=a.Ub(d.Zn),
c=a.Ub(d.jh),e=c.width,o=c.height,t=b.Gea,s=b.Fea,u;switch(b.Yda){case k.NONE:c=t;u=s;break;case k.Wk:c=e;u=s*e/t;break;case k.ih:u=o;c=t*o/s;break;case k.tm:if(t*o>s*e){u=o;c=t*o/s}else{c=e;u=s*e/t}break;default:if(t*o>s*e){c=e;u=s*e/t}else{u=o;c=t*o/s}}switch(b.Ica){case g.qa:e=-e*0.5;break;case g.Ma:e=e*0.5-c;break;default:e=-c*0.5}switch(b.verticalAlign){case g.mb:o=o*0.5-u;break;case g.lb:o=-o*0.5;break;default:o=-u*0.5}t=b.zIndex-i.Jfa;f.set(b.geometry,e,o,0,0,0,c,0,0,1,0,u,0,1,0);(a.gm(d.Ow)||
a.je(d.Ow)).pZ=t;a.Pn.Is()};i.Jfa=100;i.rb={};i.rb.Bda=[d.uq,d.Zn.not];i.rb.Ada=[d.uq,d.Zn,d.jh];i.rb.Cda=[d.uq.not,d.Zn];return i});define("gD","require,eh,iv,jO,iP,dA,iA,ek".split(","),function(a){var b=a("eh"),c=a("iv"),d=a("jO"),f=a("iP"),e=a("dA"),g=a("iA"),a=a("ek"),k={};k.Mesh=b;k.pq=c;k.Kh=d;k.Gf=f;k.sq=e;k.jh=g;k.uq=a;return k});
define("eP","require,fg,ll,d,iC,eo,gD".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("d"),f=a("iC"),e=a("eo"),g=a("gD"),a=b.extend(d,function(a){d.call(this);this.CE=(new f(a)).ke(e.Geometry).ke(e.oq).ke(e.Mesh).ke(e.um).ke(e.pq).ke(e.qq).ke(e.OrthographicCamera).ke(e.Kw).ke(e.Kh).ke(e.Yk).ke(e.Ow).ke(e.Gf).ke(e.rq).ke(e.Scene).ke(e.Nw).ke(e.Texture).ke(e.sq).ke(e.tq).ke(e.jh).ke(e.uq).ke(e.Zn).gw(g.jh,"Viewport").gw(g.Kh,"Parent").gw(g.sq,"VideoMaterial").gw(g.uq,"ViewportPlaneGeometry").gw(g.Mesh,
"Mesh").gw(g.pq,"Model").gw(g.Gf,"Renderer");this.qj=this.CE.Gv("Scene");this.qj.je(e.Scene);this.wb=this.CE.Gv("Camera");this.wb.je(e.OrthographicCamera);this.wb.je(e.Kh).UE=this.qj;this.g=this.CE.Gv("Renderer");this.bind(c.vb,this.jb,this,n);this.bind(c.od,this.th,this,n);this.bind(c.zd,this.qh,this,n)});a.prototype.Gv=function(a){return this.CE.Gv(a)};a.prototype.jM=function(a){this.CE.jM(a)};a.prototype.As=Q("wb");a.prototype.Js=function(a){if(this.wb!=a){this.wb=a;if(a=this.g.gm(e.Gf))a.aM=this.wb}};
a.prototype.jb=function(){var a=this.g.gm(e.Gf);if(a){a.width=this.Hd();a.height=this.Gd()}};a.prototype.th=function(){this.ira()};a.prototype.qh=function(){this.Ura()};a.prototype.ira=function(){var a=this.g.Ub(e.Gf);if(!a){a=this.g.je(e.Gf);a.canvas=document.createElement("canvas");this.Pa().QX(a.canvas);a.aM=this.wb;a.BZ=this.qj;a.antialias=n;a.width=this.Hd();a.height=this.Gd()}};a.prototype.Ura=function(){var a=this.g.Ub(e.Gf);if(a){this.Pa().rxa(a.canvas);this.g.Mk(e.Gf)}};return a});
define("ba",["require","fg","ll","cR"],function(a){var b=a("fg"),c=a("ll"),d=a("cR"),a=b.extend(d,function(a,b){d.call(this,a);this.F=b;this.F.bind(c.D("video"),this.pU,this);this.pU()});a.prototype.clear=function(){this.F&&(this.F.unbind(c.D("video"),this.pU,this),this.F=r);d.prototype.clear.call(this)};a.prototype.pU=function(){this.YZ(this.F.get("video"))};return a});
define("dZ","require,fg,ll,R,d,dc,ba".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("R"),f=a("d"),e=a("dc"),g=a("ba"),a=b.extend(f,function(a,b,p){f.call(this);this.ib=a;this.C=b;this.F=p;this.set("toolTipDisabled",n);this.set("cursor",d.lq);this.bind(c.vb,this.jb,this,n);this.Ny=new g(b,p);this.lj=new e.CG;this.lj.pN(e.CG.wG);this.lj.xe(this.cp=y);[this.Ny.Cb(),this.lj.Cb()].forEach(function(a,b){this.Pa().append(a);a.css({position:"absolute",left:0,top:0,right:0,bottom:0,overflow:"hidden",
"z-index":b})}.bind(this))});a.prototype.pw=function(a,b){if(this.cp!=a){this.cp=a;this.lj.CZ(b);this.lj.xe(a)}};a.prototype.jb=function(){this.ID=n;this.lj.setSize(this.Aa(),this.eb())};return a});
define("jr","require,fg,R,c,kS,eo,eP,dZ".split(","),function(a){var b=a("fg"),c=a("R"),d=a("c"),f=a("kS"),e=a("eo"),g=a("eP"),k=a("dZ"),a=b.extend(f,function(a,b,e){f.call(this);this.ib=a;this.C=b;this.F=e;this.Uc("Renderer");this.set("toolTipDisabled",n);this.set("cursor",c.lq);this.set("layout",d.bG);this.Ga=this.cf=r;this.PL=[];this.zE=[];this.Xl()});a.prototype.Fa=function(){f.prototype.Fa.call(this);if(this.cf==r){this.cf=new g(this.ib);this.cf.M({left:0,top:0,right:0,bottom:0});this.la(this.cf);
this.PL.forEach(function(a){this.WA(a)}.bind(this))}if(this.Ga==r){this.Ga=new k(this.ib,this.C,this.F);this.Ga.M({left:0,top:0,right:0,bottom:0});this.la(this.Ga);this.Xl()}};a.prototype.Sta=function(a){this.PL.push(a);this.cf&&this.WA(a)};a.prototype.WA=function(a){var b=this.cf.Gv("Video");b.je(e.Kh).UE=this.cf.qj;b.je(e.Mesh).Rp=a;var c=b.je(e.uq);c.Rp=a;c.hw=this.cf.g;c=b.je(e.sq);c.Rp=a;c.Zea=a.get("video");c.Bba=a;this.zE.push(b);this.Xl()};a.prototype.Pda=function(a){a=this.PL.indexOf(a);
if(!(a<0)){this.PL.splice(a,1);this.cf&&this.rR(this.zE[a])}};a.prototype.rR=function(a){var b=this.zE.indexOf(a);if(!(b<0)){this.zE.splice(b,1);this.cf.jM(a);this.Xl()}};a.prototype.pw=function(a){this.cp=a;this.Xl()};a.prototype.Xl=function(){this.Ga&&this.Ga.pw(this.cp&&this.zE.length>0)};return a});
define("bl","require,do,fg,ll,fu,bZ,dW,jT,eT,cr,dQ,jr,r,dm,ck,fm,kS".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("fu"),e=a("bZ"),g=a("dW"),k=a("jT"),i=a("eT"),p=a("cr"),j=a("dQ"),l=a("jr"),q=a("r"),o=a("dm"),t=a("ck"),s=a("fm"),u=a("kS"),v=c.extend(u,function(){u.call(this);this.set("childrenInteractionEnabled",n);this.set("contentOpaque",n);this.set("creationPolicy",t.pt);this.set("vrPointerColor","#ffffff");this.set("vrPointerOverColor","#007acc");this.set("vrPointerSelectionColor",
"#ff6600");this.set("vrPointerDistance",2);this.set("vrPointerSelectionTime",1200);this.set("surfaceReticleColor","#ffffff");this.set("surfaceReticleSelectionColor","#ffffff");this.set("surfaceReticleOpacity",0.6);this.set("surfaceReticleSelectionOpacity",1);this.set("displayTooltipInSurfaceSelection",n);this.set("doubleClickAction","toggle_fullscreen");this.set("subtitlesEnabled",n);this.set("checkToolTipOcclusion",n);this.Gm=this.Nb=this.$H=this.Ze=r;this.IU=this.Tm=y;this.Vf=f.I;this.Mi=this.kh=
r;this.fk=y;this.bind(v.F0,this.boa,this,n);this.bind(v.E0,this.aoa,this,n);this.bind(d.Eb,this.F7,this);this.bind(d.Eb,this.F7,this);this.bind(d.wc,this.uoa,this);this.bind(d.Mb,this.toa,this);this.bind(d.od,this.NJ,this,n);this.bind(d.zd,this.soa,this,n);this.VX=new k(this,"buttonPause",o.Mh);this.VX.bind(d.U,this.Ju,this);this.VX.set("state",s.dd);this.XX=new k(this,"buttonPlay",o.Mh);this.XX.bind(d.U,this.Ku,this);this.XX.set("state",s.dd);this.WX=new k(this,"buttonPlayPause",o.Mh);this.WX.bind(d.U,
this.Yna,this);this.WX.set("state",s.dd);this.YX=new k(this,"buttonStop",o.Mh);this.YX.bind(d.U,this.Hr,this);this.YX.set("state",s.Ca);this.Vta=new k(this,"buttonRestart",o.Wc);this.Vta.bind(d.U,this.Gr,this);this.$L=new k(this,"buttonToggleSubtitles",o.Mh);this.$L.bind(d.Bg,function(){this.set("subtitlesEnabled",n)},this,n);this.$L.bind(d.Lh,function(){this.set("subtitlesEnabled",y)},this,n);this.bind(d.D("subtitlesEnabled"),function(){this.$L.set("pressed",this.get("subtitlesEnabled"))},this);
this.$L.set("pressed",this.get("subtitlesEnabled"));this.Dma=c.jm(this.pta,this);this.bind(d.yG,this.roa,this,n)});g.A("ViewerArea",v).B("UIComponent").K({buttonPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlay:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonStop:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRestart:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonToggleSubtitles:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",cardboardPointerColor:"color",cardboardPointerSelectionTime:"number",cardboardPointerSelectionColor:"color",cardboardPointerDistance:"number",externalPlaybackBar:"PlaybackBar",vrPointerColor:"color",vrPointerOverColor:"color",vrPointerSelectionTime:"number",vrPointerSelectionColor:"color",vrPointerDistance:"number",transitionMode:"enum[blending, fade_out_fade_in]",transitionDuration:"number",blendingTransitionDuration:"number",
disolveTransitionDuration:"number",displayTooltipInSurfaceSelection:"bool",displayTooltipInTouchScreens:"bool",doubleClickAction:"enum[toggle_fullscreen, none]",firstTransitionDuration:"number",translationTransitionDuration:"number",translationTransitionEnabled:"bool",progressBackgroundColor:"or[array[color], color]",progressBackgroundColorDirection:"enum[horizontal, vertical]",progressBackgroundColorRatios:"array[number]",progressBackgroundOpacity:"number",progressBarBackgroundColor:"or[array[color], color]",
progressBarBackgroundColorDirection:"enum[horizontal, vertical]",progressBarBackgroundColorRatios:"array[number]",progressBarBorderColor:"color",progressBarBorderRadius:"number",progressBarBorderSize:"number",progressBarOpacity:"number",progressBorderColor:"color",progressBorderRadius:"number",progressBorderSize:"number",progressBottom:"or[number, percent]",progressHeight:"or[number, percent]",progressLeft:"or[number, percent]",progressOpacity:"number",progressRight:"or[number, percent]",externalProgressBar:"ProgressBar",
playbackBarBackgroundColor:"or[array[color], color]",playbackBarBackgroundColorDirection:"enum[horizontal, vertical]",playbackBarBackgroundOpacity:"number",playbackBarBorderColor:"color",playbackBarBorderRadius:"number",playbackBarBorderSize:"number",playbackBarBottom:"or[number, percent]",playbackBarHeight:"or[number, percent]",playbackBarWidth:"or[number, percent]",playbackBarLeft:"or[number, percent]",playbackBarOpacity:"number",playbackBarRight:"or[number, percent]",playbackBarRollOverDisplay:"bool",
playbackBarLiveDragging:"bool",playbackBarProgressBackgroundColor:"or[array[color], color]",playbackBarProgressBackgroundColorDirection:"enum[horizontal, vertical]",playbackBarProgressBackgroundColorRatios:"array[number]",playbackBarProgressBorderColor:"color",playbackBarProgressBorderRadius:"number",playbackBarProgressBorderSize:"number",playbackBarProgressOpacity:"number",playbackBarHeadBackgroundColor:"or[array[color], color]",playbackBarHeadBackgroundColorDirection:"enum[horizontal, vertical]",
playbackBarHeadBackgroundColorRatios:"array[number]",playbackBarHeadBorderColor:"color",playbackBarHeadBorderRadius:"number",playbackBarHeadBorderSize:"number",playbackBarHeadOpacity:"number",playbackBarHeadWidth:"or[number, percent]",playbackBarHeadHeight:"or[number, percent]",playbackBarHeadShadow:"bool",playbackBarHeadShadowBlurRadius:"number",playbackBarHeadShadowColor:"color",playbackBarHeadShadowHorizontalLength:"number",playbackBarHeadShadowOpacity:"number",playbackBarHeadShadowSpread:"number",
playbackBarHeadShadowVerticalLength:"number",playbackState:"enum[stopped, playing, paused]",subtitlesBackgroundColor:"color",subtitlesBackgroundOpacity:"number",subtitlesBorderColor:"color",subtitlesBorderSize:"number",subtitlesBottom:"or[number, percent]",subtitlesEnabled:"bool",subtitlesFontFamily:"string",subtitlesFontColor:"color",subtitlesFontSize:"or[number, size]",subtitlesFontStyle:"enum[italic, normal]",subtitlesFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",
subtitlesGap:"number",subtitlesHorizontalAlign:"enum[left, center, right]",subtitlesOpacity:"number",subtitlesPaddingTop:"number",subtitlesPaddingBottom:"number",subtitlesPaddingLeft:"number",subtitlesPaddingRight:"number",subtitlesShadow:"bool",subtitlesShadowBlurRadius:"number",subtitlesShadowColor:"color",subtitlesShadowOpacity:"number",subtitlesShadowHorizontalLength:"number",subtitlesShadowVerticalLength:"number",subtitlesTextDecoration:"enum[underline, overline, line-through, none]",subtitlesTextShadowBlurRadius:"number",
subtitlesTextShadowColor:"color",subtitlesTextShadowHorizontalLength:"number",subtitlesTextShadowOpacity:"number",subtitlesTextShadowVerticalLength:"number",subtitlesTop:"or[number, percent]",subtitlesVerticalAlign:"enum[top, middle, bottom]",surfaceReticleColor:"color",surfaceReticleOpacity:"number",surfaceReticleSelectionColor:"color",surfaceReticleSelectionOpacity:"number"}).Ag({play:function(){this.Ku()},pause:function(){this.Ju()},stop:function(){this.Hr()},restart:function(){this.Gr()}});v.nb=
{progressBackgroundColor:m,progressBackgroundColorDirection:m,progressBackgroundColorRatios:m,progressBackgroundOpacity:m,progressBarBackgroundColor:m,progressBarBackgroundColorDirection:m,progressBarBackgroundColorRatios:m,progressBarBorderColor:m,progressBarBorderRadius:m,progressBarBorderSize:m,progressBarOpacity:m,progressBorderColor:m,progressBorderRadius:m,progressBorderSize:m,progressBottom:0,progressHeight:20,progressLeft:0,progressOpacity:m,progressPercent:0,progressRight:0,progressVisible:y,
externalPlaybackBar:m,externalProgressBar:m,playbackBarBackgroundColor:m,playbackBarBackgroundColorDirection:m,playbackBarBackgroundOpacity:m,playbackBarBorderColor:m,playbackBarBorderRadius:m,playbackBarBorderSize:m,playbackBarBottom:10,playbackBarHeight:m,playbackBarWidth:m,playbackBarLeft:m,playbackBarOpacity:m,playbackBarRight:m,playbackBarLiveDragging:m,playbackBarDuration:100,playbackBarPosition:0,playbackBarRollOverDisplay:y,plabackBarSteps:m,plabackBarSelectedStep:m,playbackBarVisible:y,playbackBarProgressBackgroundColor:m,
playbackBarProgressBackgroundColorDirection:m,playbackBarProgressBackgroundColorRatios:m,playbackBarProgressBorderColor:m,playbackBarProgressBorderRadius:m,playbackBarProgressBorderSize:m,playbackBarProgressOpacity:m,playbackBarHeadBackgroundColor:m,playbackBarHeadBackgroundColorDirection:m,playbackBarHeadBackgroundColorRatios:m,playbackBarHeadBorderColor:m,playbackBarHeadBorderRadius:m,playbackBarHeadBorderSize:m,playbackBarHeadOpacity:m,playbackBarHeadWidth:m,playbackBarHeadHeight:m,playbackBarHeadShadow:m,
playbackBarHeadShadowBlurRadius:m,playbackBarHeadShadowColor:m,playbackBarHeadShadowHorizontalLength:m,playbackBarHeadShadowOpacity:m,playbackBarHeadShadowSpread:m,playbackBarHeadShadowVerticalLength:m,playbackBarStepBackgroundColor:m,playbackBarStepBackgroundColorDirection:m,playbackBarStepBackgroundColorRatios:m,playbackBarStepBorderColor:m,playbackBarStepBorderRadius:m,playbackBarStepBorderSize:m,playbackBarStepOpacity:m,playbackBarStepWidth:m,playbackBarStepHeight:m,playbackBarStepShadow:m,playbackBarStepShadowBlurRadius:m,
playbackBarStepShadowColor:m,playbackBarStepShadowHorizontalLength:m,playbackBarStepShadowOpacity:m,playbackBarStepShadowSpread:m,playbackBarStepShadowVerticalLength:m,playbackBarStepSelectedBackgroundColor:m,playbackBarStepSelectedBackgroundColorDirection:m,playbackBarStepSelectedBackgroundColorRatios:m,playbackBarStepSelectedBorderColor:m,playbackBarStepSelectedBorderRadius:m,playbackBarStepSelectedBorderSize:m,playbackBarStepSelectedOpacity:m,playbackBarStepSelectedWidth:m,playbackBarStepSelectedHeight:m,
playbackBarStepSelectedShadow:m,playbackBarStepSelectedShadowBlurRadius:m,playbackBarStepSelectedShadowColor:m,playbackBarStepSelectedShadowHorizontalLength:m,playbackBarStepSelectedShadowOpacity:m,playbackBarStepSelectedShadowSpread:m,playbackBarStepSelectedShadowVerticalLength:m,subtitlesBackgroundColor:"#000000",subtitlesBackgroundOpacity:1,subtitlesBorderColor:m,subtitlesBorderSize:0,subtitlesBottom:"10%",subtitlesFontFamily:m,subtitlesFontColor:"#ffffff",subtitlesFontSize:"12px",subtitlesFontStyle:m,
subtitlesFontWeight:m,subtitlesGap:10,subtitlesHorizontalAlign:"center",subtitlesOpacity:1,subtitlesPaddingTop:5,subtitlesPaddingBottom:5,subtitlesPaddingLeft:5,subtitlesPaddingRight:5,subtitlesShadow:y,subtitlesShadowBlurRadius:m,subtitlesShadowHorizontalLength:0,subtitlesShadowVerticalLength:0,subtitlesShadowColor:"#000000",subtitlesShadowOpacity:0,subtitlesTextDecoration:m,subtitlesTextShadowBlurRadius:m,subtitlesTextShadowColor:"#000000",subtitlesTextShadowHorizontalLength:0,subtitlesTextShadowOpacity:0,
subtitlesTextShadowVerticalLength:0,subtitlesTop:m,subtitlesVerticalAlign:"bottom",transitionDuration:500,blendingTransitionDuration:m,disolveTransitionDuration:m,translationTransitionDuration:m,translationTransitionEnabled:n,toolTipEnabled:n};b.defaults(v.nb,u.nb);v.prototype.set=function(a,b){if(a=="playbackState"){b=this.Vf;if(this.get(a)!=b){this.IU=n;this.Dma()}}switch(a){case "toolTipEnabled":this.set("toolTipDisabled",b===y);break;case "cardboardPointerDistance":this.set("vrPointerDistance",
b);break;case "cardboardPointerColor":this.set("vrPointerColor",b);break;case "cardboardPointerSelectionColor":this.set("vrPointerSelectionColor",b);break;case "cardboardPointerSelectionTime":this.set("vrPointerSelectionTime",b);break;case "playbackBarVisible":case "playbackBarRollOverDisplay":this.mE()}u.prototype.set.call(this,a,b)};v.prototype.za=function(){this.$j(v.nb)};v.prototype.Fa=function(){u.prototype.Fa.call(this);if(this.Ze==r){this.Ze=new p;this.la(this.Ze)}if(this.Nb==r){this.Nb=new i;
this.Nb.bind(d.aa,this.GU,this,n);this.la(this.Nb);this.mE()}};v.prototype.kva=Q("Nb");v.prototype.Bi=function(){u.prototype.Bi.call(this);var a=this.Oa(),c=b(a).find(function(a){return a instanceof j}),d=b(a).find(function(a){return a instanceof l}),e=this.Ze&&this.ZE(this.Ze)>=0?this.Ze:r,f=this.Nb&&this.ZE(this.Nb)>=0?this.Nb:r;b([{child:c,index:0},{child:d,index:c?1:0},{child:f,index:a.length-(e?2:1)},{child:e,index:a.length-1}]).each(function(a){var b=a.child,a=a.index;b&&this.ZE(b)!=a&&this.Fj(b,
a)},this)};v.prototype.ja=function(){if(this.n("externalProgressBar")){(this.$H=this.k("externalProgressBar"))?this.removeChild(this.Ze):this.la(this.Ze);this.q("externalProgressBar");b(v.H1).each(function(a){this.gv(a)},this)}this.hb(v.xga,v.w1,[this.Ze],n,n);var a=[this.Ze];this.$H&&a.push(this.$H);this.hb(v.H1,v.I1,a,n,n);if(this.n("externalPlaybackBar")){this.Gm&&this.Gm.unbind(d.aa,this.GU,this,n);(this.Gm=this.k("externalPlaybackBar"))?this.removeChild(this.Nb):this.la(this.Nb);this.mE();this.Gm&&
this.Gm.bind(d.aa,this.GU,this,n);this.q("externalPlaybackBar");b(v.D1).each(function(a){this.gv(a)},this)}this.hb(v.wga,v.v1,[this.Nb],n,n);a=[this.Nb];this.Gm&&a.push(this.Gm);this.hb(v.D1,v.E1,a,n,n);u.prototype.ja.call(this)};v.prototype.pta=function(){if(this.IU){this.IU=y;this.VX.set("state",this.Vf==f.uc?s.Ca:s.dd);this.XX.set("state",this.Vf==f.O||this.Vf==f.uc?s.Ca:s.dd);this.WX.set("state",this.Vf==f.O?s.Ca:s.dd);this.YX.set("state",this.Vf==f.I?s.Ca:s.dd)}};v.prototype.Xb=function(a){this.Vf=
a;this.set("playbackState",a)};v.prototype.NJ=function(){v.th(this)};v.prototype.soa=function(){v.qh(this)};v.prototype.Ju=function(){this.Vf==f.uc?this.Pg():this.pk()};v.prototype.Ku=function(){this.Pg()};v.prototype.Yna=function(){this.Vf==f.O?this.pk():this.Pg()};v.prototype.Hr=function(){this.sj()};v.prototype.Gr=function(){this.sj();this.Pg()};v.prototype.roa=function(){if(!this.kh||!this.kh.mba())switch(this.get("doubleClickAction")){case "toggle_fullscreen":var a=this.Ra().mg;a&&a.available()&&
a.toggle()}};v.prototype.Pg=function(){this.Mi&&this.Mi.play()};v.prototype.pk=function(){this.Mi&&this.Mi.pause()};v.prototype.sj=function(){this.Mi&&this.Mi.stop()};v.prototype.boa=function(a){this.B9(a.data.player)};v.prototype.aoa=function(a){this.kh==a.data.player&&this.B9(r)};v.prototype.F7=function(){v.nm(this)};v.prototype.uoa=function(){this.fk=n;this.mE()};v.prototype.toa=function(){this.fk=y;this.mE()};v.prototype.mE=function(){this.Nb&&this.Nb.set("visible",this.get("playbackBarVisible")&&
(this.fk||!this.get("playbackBarRollOverDisplay")||q.BN()))};v.prototype.B9=function(a){if(this.kh!=a){this.set("playbackBarVisible",y);this.kh&&this.kh.nm(y);this.Mi&&this.Mi.unbind(d.D("state"),this.BP,this);this.Zoa=this.kh;(this.kh=a)&&this.kh.nm(!!this.Rx);(this.Mi=this.kh&&this.kh.kia?this.kh:r)&&this.Mi.bind(d.D("state"),this.BP,this,n);this.BP()}};v.prototype.nm=function(a){this.Rx=a;this.kh&&this.kh.nm(!!this.Rx)};v.prototype.Iza=function(){return!this.Zoa};v.prototype.BP=function(){this.Mi?
this.Xb(this.Mi.get("state")):this.Xb(f.I)};v.prototype.GU=function(){var a=(this.Gm?this.Gm:this.Nb).get("position");this.trigger(new e(v.zO,{position:a}))};v.w1={progressBackgroundColor:"backgroundColor",progressBackgroundColorDirection:"backgroundColorDirection",progressBackgroundColorRatios:"backgroundColorRatios",progressBackgroundOpacity:"backgroundOpacity",progressBarBackgroundColor:"barBackgroundColor",progressBarBackgroundColorDirection:"barBackgroundColorDirection",progressBarBackgroundColorRatios:"barBackgroundColorRatios",
progressBarBorderColor:"barBorderColor",progressBarBorderRadius:"barBorderRadius",progressBarBorderSize:"barBorderSize",progressBarOpacity:"barOpacity",progressBorderColor:"borderColor",progressBorderRadius:"borderRadius",progressBorderSize:"borderSize",progressHeight:"height",progressOpacity:"opacity",progressBottom:"bottom",progressLeft:"left",progressRight:"right"};v.xga=b(v.w1).keys();v.I1={progressPercent:"percent",progressVisible:"visible"};v.H1=b(v.I1).keys();v.v1={playbackBarBackgroundColor:"backgroundColor",
playbackBarBackgroundColorDirection:"backgroundColorDirection",playbackBarBackgroundOpacity:"backgroundOpacity",playbackBarBorderColor:"borderColor",playbackBarBorderRadius:"borderRadius",playbackBarBorderSize:"borderSize",playbackBarBottom:"bottom",playbackBarHeight:"height",playbackBarWidth:"width",playbackBarLeft:"left",playbackBarOpacity:"opacity",playbackBarRight:"right",playbackBarLiveDragging:"liveDragging",playbackBarProgressBackgroundColor:"barBackgroundColor",playbackBarProgressBackgroundColorDirection:"barBackgroundColorDirection",
playbackBarProgressBackgroundColorRatios:"barBackgroundColorRatios",playbackBarProgressBorderColor:"barBorderColor",playbackBarProgressBorderRadius:"barBorderRadius",playbackBarProgressBorderSize:"barBorderSize",playbackBarProgressOpacity:"barOpacity",playbackBarHeadBackgroundColor:"playheadBackgroundColor",playbackBarHeadBackgroundColorDirection:"playheadBackgroundColorDirection",playbackBarHeadBackgroundColorRatios:"playheadBackgroundColorRatios",playbackBarHeadBorderColor:"playheadBorderColor",
playbackBarHeadBorderRadius:"playheadBorderRadius",playbackBarHeadBorderSize:"playheadBorderSize",playbackBarHeadOpacity:"playheadOpacity",playbackBarHeadWidth:"playheadWidth",playbackBarHeadHeight:"playheadHeight",playbackBarHeadShadow:"playheadShadow",playbackBarHeadShadowBlurRadius:"playheadShadowBlurRadius",playbackBarHeadShadowColor:"playheadShadowColor",playbackBarHeadShadowHorizontalLength:"playheadShadowHorizontalLength",playbackBarHeadShadowOpacity:"playheadShadowOpacity",playbackBarHeadShadowSpread:"playheadShadowSpread",
playbackBarHeadShadowVerticalLength:"playheadShadowVerticalLength",playbackBarStepBackgroundColor:"stepBackgroundColor",playbackBarStepBackgroundColorDirection:"stepBackgroundColorDirection",playbackBarStepBackgroundColorRatios:"stepBackgroundColorRatios",playbackBarStepBorderColor:"stepBorderColor",playbackBarStepBorderRadius:"stepBorderRadius",playbackBarStepBorderSize:"stepBorderSize",playbackBarStepOpacity:"stepOpacity",playbackBarStepWidth:"stepWidth",playbackBarStepHeight:"stepHeight",playbackBarStepShadow:"stepShadow",
playbackBarStepShadowBlurRadius:"stepShadowBlurRadius",playbackBarStepShadowColor:"stepShadowColor",playbackBarStepShadowHorizontalLength:"stepShadowHorizontalLength",playbackBarStepShadowOpacity:"stepShadowOpacity",playbackBarStepShadowSpread:"stepShadowSpread",playbackBarStepShadowVerticalLength:"stepShadowVerticalLength",playbackBarSelectedStepBackgroundColor:"selectedStepBackgroundColor",playbackBarSelectedStepBackgroundColorDirection:"selectedStepBackgroundColorDirection",playbackBarSelectedStepBackgroundColorRatios:"selectedStepBackgroundColorRatios",
playbackBarSelectedStepBorderColor:"selectedStepBorderColor",playbackBarSelectedStepBorderRadius:"selectedStepBorderRadius",playbackBarSelectedStepBorderSize:"selectedStepBorderSize",playbackBarSelectedStepOpacity:"selectedStepOpacity",playbackBarSelectedStepWidth:"selectedStepWidth",playbackBarSelectedStepHeight:"selectedStepHeight",playbackBarSelectedStepShadow:"selectedStepShadow",playbackBarSelectedStepShadowBlurRadius:"selectedStepShadowBlurRadius",playbackBarSelectedStepShadowColor:"selectedStepShadowColor",
playbackBarSelectedStepShadowHorizontalLength:"selectedStepShadowHorizontalLength",playbackBarSelectedStepShadowOpacity:"selectedStepShadowOpacity",playbackBarSelectedStepShadowSpread:"selectedStepShadowSpread",playbackBarSelectedStepShadowVerticalLength:"selectedStepShadowVerticalLength"};v.wga=b(v.v1).keys();v.E1={playbackBarDuration:"duration",playbackBarPosition:"position",playbackBarSteps:"steps",playbackBarSelectedStep:"selectedStep",playbackBarVisible:"visible"};v.D1=b(v.E1).keys();v.WO="requestByPlayer";
v.F0="playerShow";v.E0="playerHide";v.zO="playbackBarPositionChange";v.su=r;v.nm=function(a){if(v.su!=a){v.su&&v.su.nm(y);v.su=a;v.su&&v.su.nm(n)}};v.ps=[];v.th=function(a){var b=v.ps.indexOf(a);b<0&&v.ps.splice(b,1);v.ps.push(a);this.nm(a)};v.qh=function(a){var b=v.ps.indexOf(a);b<0&&v.ps.splice(b,1);v.su==a&&v.nm(v.ps.length?v.ps[v.ps.length-1]:r)};return v});
define("cu","fg,jd,ll,bZ,dW,bl".split(","),function(a,b,c,d,f,e){var g=a.extend(b,function(a){b.call(this);this.kia=a;this.GD=this.wr=r});g.le="mediaShow";g.dg="mediaHide";g.prototype.nm=C();g.prototype.mba=R(y);g.prototype.CD=function(a){if(this.wr!=a){this.wr&&this.NW(this.wr);(this.wr=a)&&this.cQ(this.wr)}};g.prototype.cQ=function(a){a.bind(e.WO,this.Taa,this);a.bind(e.zO,this.$C,this)};g.prototype.NW=function(a){a.unbind(e.WO,this.Taa,this);a.unbind(e.zO,this.$C,this)};g.prototype.oD=function(){this.wr.trigger(new d(e.WO,
{player:this}))};g.prototype.Taa=function(a){a.data.player!=this&&this.My()};g.prototype.$C=C();g.prototype.My=C();g.prototype.dC=function(a){this.trigger(new d(g.le,{media:a}));this.GD=this.wr;this.GD.trigger(new d(e.F0,{player:this}))};g.prototype.cC=function(a){this.trigger(new d(g.dg,{media:a}));if(this.GD){this.GD.trigger(new d(e.E0,{player:this}));this.GD=r}};return g});
define("dk","fg,jd,ll,bZ,dW,jT,cu,bl,fu,dm,fm".split(","),function(a,b,c,d,f,e,g,k,i,p,j){b=a.extend(g,function(){g.call(this,n);this.Tm=y;this.pp=n;this.m=i.I;this.fQ=new e(this,"buttonPlayPause",p.Mh);this.fQ.bind(c.Bg,this.Zna,this,n);this.fQ.bind(c.Lh,this.$na,this,n);this.z2=new e(this,"buttonPause",p.Wc);this.z2.bind(c.U,this.Ju,this,n);this.A2=new e(this,"buttonPlay",p.Wc);this.A2.bind(c.U,this.Ku,this,n);this.F2=new e(this,"buttonStop",p.Wc);this.F2.bind(c.U,this.Hr,this,n);this.cia=new e(this,
"buttonRestart",p.Wc);this.cia.bind(c.U,this.Gr,this,n);this.D5=a.jm(this.$sa,this);this.D5()});b.prototype.set=function(a,b){a!="state"&&g.prototype.set.call(this,a,b)};b.prototype.get=function(a,b){switch(a){case "state":return this.m}return g.prototype.get.call(this,a,b)};b.prototype.$sa=function(){if(this.pp){this.pp=y;this.z2.set("state",this.m==i.uc?j.Ca:j.dd);this.A2.set("state",this.m==i.O||this.m==i.uc?j.Ca:j.dd);this.fQ.set("pressed",this.m==i.O);this.F2.set("state",this.m==i.I?j.Ca:j.dd)}};
b.prototype.ds=function(a){if(this.Tm!=a)(this.Tm=a)||this.Xb(i.I)};b.prototype.Xb=function(a){var b=this.m;this.m=a;g.prototype.set.call(this,"state",a);if(b!=this.m){this.pp=n;this.D5();this.trigger(new d(c.xc,{oldState:b,state:this.m}))}};b.prototype.Ju=function(){this.Tm&&(this.m==i.uc?this.Pg():this.pk())};b.prototype.Ku=function(){this.Tm&&this.Pg()};b.prototype.Zna=function(){this.Tm&&this.Pg()};b.prototype.$na=function(){this.Tm&&this.pk()};b.prototype.Hr=function(){this.Tm&&this.sj()};b.prototype.Gr=
function(){if(this.Tm){this.sj();this.Pg()}};b.prototype.Pg=C();b.prototype.pk=C();b.prototype.sj=C();return b});define("hG",[],function(){return{Ys:"constrained",sfa:"free_drag",Tza:"free_drag_and_rotation",cP:"sync_with_field_of_view"}});
define("ii",["fg","hG","jn"],function(a,b,c){function d(){this.Z=n;this.fa=this.da=0.5;this.Jb=0;this.ta=1;this.Ed=c.Se;this.dj=b.Ys;this.LT=this.PT=1;this.Sc=this.Tc=this.Ni=this.Oi=100;this.pj=d.vt}d.prototype.yca=function(){return this.pj!==d.vt};d.prototype.xca=function(){return this.pj&d.Pw?n:y};d.prototype.zca=function(){return this.pj&d.Qw?n:y};d.prototype.Aca=function(){return this.pj&d.zt?n:y};d.prototype.wca=function(){return this.pj&d.ut?n:y};d.prototype.getX=function(){this.wj();return this.da};
d.prototype.getY=function(){this.wj();return this.fa};d.prototype.hm=function(){this.wj();return this.ta};d.prototype.lz=function(){this.wj();return this.Jb};d.prototype.DF=function(a,b,c,d,i){this.Tc=a;this.Sc=b;this.Ed=c;this.PT=d;this.LT=i;this.fa=this.da=0.5;this.Jb=0;this.ta=d;this.Z=n};d.prototype.Ia=function(a,b,c,d){this.da=a;this.fa=b;this.Jb=c;this.ta=d;this.Z=n};d.prototype.om=function(a){this.dj=a;this.Z=n};d.prototype.setSize=function(a,b){this.Oi=a;this.Ni=b;this.Z=n};d.prototype.wj=
function(){if(this.Z){this.Z=y;var a=d.vt;this.ta>this.LT?(this.ta=this.LT,a|=d.yga):this.ta<this.PT&&(this.ta=this.PT,a|=d.zga);var e,g,k,i;if(this.dj==b.Ys){switch(this.Ed){case c.NONE:g=this.Tc;i=this.Sc;break;case c.Wk:g=this.Oi;i=this.Sc*this.Oi/this.Tc;break;case c.ih:g=this.Tc*this.Ni/this.Sc;i=this.Ni;break;case c.tm:this.Tc*this.Ni>this.Sc*this.Oi?(g=this.Tc*this.Ni/this.Sc,i=this.Ni):(g=this.Oi,i=this.Sc*this.Oi/this.Tc);break;default:case c.Se:this.Tc*this.Ni>this.Sc*this.Oi?(g=this.Oi,
i=this.Sc*this.Oi/this.Tc):(g=this.Tc*this.Ni/this.Sc,i=this.Ni)}g*=this.ta;i*=this.ta;e=Math.min(0.5*this.Oi/g,0.5);g=Math.max(1-0.5*this.Oi/g,0.5);k=Math.min(0.5*this.Ni/i,0.5);i=Math.max(1-0.5*this.Ni/i,0.5)}else e=0,g=1,k=0,i=1;this.da<e?(this.da=e,a|=d.Pw):this.da>g&&(this.da=g,a|=d.Qw);this.fa<k?(this.fa=k,a|=d.zt):this.fa>i&&(this.fa=i,a|=d.ut);if((this.dj==b.Ys||this.dj==b.sfa)&&0!=this.Jb)this.Jb=0,a|=d.Dga;this.pj=a}};d.vt=0;d.Pw=1;d.Qw=2;d.zt=4;d.ut=8;d.zga=16;d.yga=32;d.Dga=64;return d});
define("eS",[],function(){function a(){this.iB=0.1;this.KH=this.YQ=this.aR=this.$Q=this.gR=this.XQ=this.eR=this.dR=this.IE=this.MX=this.Bt=this.HP=this.GE=this.JX=this.EE=this.HX=0}a.prototype.oN=P("iB");a.prototype.vea=function(a,c,d,f,e,g,k,i){this.HX=a;this.JX=c;this.HP=d;this.MX=f;this.EE+=e;this.GE+=g;this.Bt+=k;this.IE+=i};a.prototype.ld=function(){return 0!=this.dR||0!=this.eR||0!=this.XQ||0!=this.gR||0!=this.HX||0!=this.JX||0!=this.HP||0!=this.MX||0!=this.EE||0!=this.GE||0!=this.Bt||0!=this.IE};
a.prototype.fb=function(a){a=1E3/a;this.$Q=this.UH(this.dR/a,this.HX/a+this.EE,this.iB);this.aR=this.UH(this.eR/a,this.JX/a+this.GE,this.iB);this.YQ=this.UH(this.XQ/a,this.HP/a+this.Bt,this.iB);this.KH=this.UH(this.gR/a,this.MX/a+this.IE,this.iB);this.dR=this.$Q*a;this.eR=this.aR*a;this.XQ=this.YQ*a;this.gR=this.KH*a;this.IE=this.Bt=this.GE=this.EE=0};a.prototype.UH=function(a,c,d){return 0==c?this.Ee(a,c,d):c};a.prototype.Ee=function(a,c,d){a=(c-a)*(1-d);0.01>Math.abs(a)&&(a=0);return c-a};return a});
define("eX",["fg","ll","bZ","eO","jn"],function(a,b,c,d){var f=a.extend(d,function(){d.call(this);this.yx=7;this.pJ=this.jT=y;this.rJ=m;this.Jb=0;this.ta=1;this.Sc=this.Tc=100;this.TI=1;this.NU=n;this.OU=y;this.Gta=n;this.LX=y;this.ua=r});f.prototype.EF=P("yx");f.prototype.jc=function(a,b,c,d){this.Jb=a;this.ta=b;this.Tc=c;this.Sc=d};f.prototype.Mya=function(a){this.NU=a;this.TK(this.NU&&!!this.ua)};f.prototype.kw=function(a){this.ua!=a&&(this.TK(y),this.SV(y),this.si(),this.ua=a,this.TK(this.NU&&
!!this.ua),this.SV(this.Gta&&!!this.ua))};f.prototype.si=function(){this.TK(y);this.SV(y);this.ua=r};f.prototype.TK=function(a){this.OU!=a&&((this.OU=a)?this.Mha():this.wsa())};f.prototype.SV=function(a){this.LX!=a&&((this.LX=a)?this.Nha():this.xsa())};f.prototype.Mha=function(){this.ua.bind(b.Eb,this.mc,this,n);this.ua.bind(b.Nc,this.Lg,this,n);this.ua.bind(b.ec,this.Mg,this,n)};f.prototype.wsa=function(){this.ua.unbind(b.Eb,this.mc,this);this.ua.unbind(b.Nc,this.Lg,this);this.ua.unbind(b.ec,this.Mg,
this)};f.prototype.Nha=function(){this.ua.bind(b.nq,this.Au,this,n);this.ua.bind(b.Ew,this.gu,this,n)};f.prototype.xsa=function(){this.ua.unbind(b.nq,this.Au,this);this.ua.unbind(b.Ew,this.gu,this)};f.prototype.mc=function(a){this.wra(a)};f.prototype.Lg=function(a){this.waa(a)};f.prototype.Mg=function(){this.JR()};f.prototype.Au=function(a){this.mX(a)};f.prototype.gu=function(a){this.nX(a)};f.prototype.wra=function(a){this.jT=n;this.pJ=y;this.rJ=a;this.waa(a)};f.prototype.waa=function(a){if(this.jT){var b=
a.pageX-this.rJ.pageX,d=a.pageY-this.rJ.pageY;this.pJ||(Math.sqrt(b*b+d*d)>this.yx?this.pJ=n:b=d=0);this.pJ&&(this.rJ=a);a=this.Jb*Math.PI/180;this.trigger(new c(f.Sk,{xDelta:-((b*Math.cos(a)+d*Math.sin(a))/this.Tc),yDelta:-((d*Math.cos(a)-b*Math.sin(a))/this.Sc)}))}};f.prototype.JR=function(){this.jT=y};f.prototype.nX=function(a){if(this.TI!=a.scale){this.JR();var b=this.TI;this.TI=a.scale;this.trigger(new c(f.Vk,{zoomDelta:this.ta*this.TI/b-this.ta}))}};f.prototype.mX=function(a){0!=a.Dp&&(this.JR(),
this.trigger(new c(f.Vk,{zoomDelta:0.1*this.ta*a.eY})))};f.Sk="position change";f.Vk="zoom change";f.eAa="vieport navigation";f.dAa="relative navigation";f.cAa="relative exponential navigation";f.bAa="dragging";return f});define("hr",[],function(){return{XO:"rotateClockwise",YO:"rotateCounterClockwise",$n:"zoomIn",ao:"zoomOut",oe:"stop"}});
define("kv","fg,bZ,eO,jn,eS,eX,hr,ll".split(","),function(a,b,c,d,f,e,g){var k=a.extend(c,function(a,b){c.call(this);this.g=a;this.H=b;this.Jm=this.rK=this.W=y;this.fa=this.da=0.5;this.Jb=0;this.ta=1;this.Sc=this.Tc=100;this.Ed=d.Ys;this.bb=new f;this.wa=new e;if(this.g.gk){this.wa.EF(k.wP);this.bb.oN(k.xP)}else{this.wa.EF(0);this.bb.oN(1)}this.wa.bind(e.Sk,this.Rna,this,n);this.wa.bind(e.Vk,this.Cr,this,n)});k.prototype.clear=function(){this.wa.unbind(e.Sk,this.pBa,this,n);this.wa.unbind(e.Vk,this.Cr,
this,n);this.wa.si();this.g=this.H=this.bb=this.wa=r};k.prototype.dh=function(a){switch(a){case g.XO:this.Ab(0,0,+k.rP,0,0,0,0,0);break;case g.YO:this.Ab(0,0,-k.rP,0,0,0,0,0);break;case g.$n:this.Ab(0,0,0,+k.qA,0,0,0,0);break;case g.ao:this.Ab(0,0,0,-k.qA,0,0,0,0);break;case g.oe:this.Ab(0,0,0,0,0,0,0,0)}};k.prototype.Ia=function(a,b,c,d,e,f){this.da=a;this.fa=b;this.Jb=c;this.ta=d;this.Tc=e;this.Sc=f;this.wa.jc(this.Jb,this.ta,this.Tc,this.Sc)};k.prototype.ld=function(){return this.W&&this.bb.ld()};
k.prototype.fb=function(a){this.bb.fb(a);this.H.Ia(this.da+this.bb.$Q,this.fa+this.bb.aR,this.Jb+this.bb.YQ,this.ta+this.bb.KH);this.da=this.H.getX();this.fa=this.H.getY();this.Jb=this.H.lz();this.ta=this.H.hm()};k.prototype.IF=function(a){this.Jm=a;this.wa.Mya(!this.Jm)};k.prototype.nd=function(a){(this.W=a)?this.wa.kw(this.g.getParent()):this.wa.si()};k.prototype.Rna=function(a){this.Ab(0,0,0,0,a.data.xDelta,a.data.yDelta,0,0)};k.prototype.Cr=function(a){this.Ab(0,0,0,0,0,0,0,a.data.zoomDelta)};
k.prototype.Ab=function(a,b,c,d,e,f,g,k){this.bb.vea(a,b,c,d,e,f,g,k);this.wf()};k.prototype.wf=function(){this.trigger(new b(k.jf))};k.jf="position change request";k.wP=7;k.xP=0.2;k.qA=0.5;k.rP=30;return k});
define("jR","fg,bZ,eO,kX,bq,eS,eX,hr,ll".split(","),function(a,b,c,d,f,e,g,k){var i=a.extend(c,function(a,b){c.call(this);this.g=a;this.H=b;this.W=y;this.fa=this.da=0.5;this.Jb=0;this.ta=1;this.Sc=this.Tc=100;this.P=r;this.GR=n;this.Hb=r;this.WJ=0;this.cn=this.up=this.tp=m;this.bb=new e;this.wa=new g;if(this.g.gk){this.wa.EF(i.wP);this.bb.oN(i.xP)}else{this.wa.EF(0);this.bb.oN(1)}this.wa.bind(g.Vk,this.Cr,this,n)});i.prototype.vya=function(a,b){this.Tc=a;this.Sc=b;this.HL()};i.prototype.$p=function(a){if(this.Hb!=
a){this.Hb=a;this.WJ=m;this.HL()}};i.prototype.Ij=function(a,b){if(this.Hb==a){this.WJ=b;this.HL()}};i.prototype.HL=function(){var a,b,c;if(this.Hb&&this.WJ!=m){a=this.Hb.get("x",0)/this.Tc;b=this.Hb.get("y",0)/this.Sc;c=-(this.WJ+this.Hb.get("angle",0))}else c=b=a=m;if(this.cn!=c){this.cn=c;this.wf()}if(this.tp!=a||this.up!=b){this.tp=a;this.up=b;this.Cma();this.wf()}};i.prototype.Cma=function(){this.GR=n;this.wf()};i.prototype.jE=function(){if(this.GR||this.P&&this.P.Qe()){this.GR=y;this.P=r;if(this.tp!=
m&&this.up!=m&&this.cn!=m){for(var a=this.cn-this.Jb;a>180;)a=a-360;for(;a<-180;)a=a+360;if(this.da!=this.tp||this.fa!=this.up)this.P=new d("quad_in_out",[new f("x",this.da,this.tp,1),new f("y",this.fa,this.up,1),new f("angleDif",a,a,360)],500);else if(this.cn!=this.Jb)this.P=new d("quad_in_out",[new f("x",this.da,this.da,1),new f("y",this.fa,this.fa,1),new f("angleDif",a,0,360)],500)}}};i.prototype.clear=function(){this.wa.unbind(g.Vk,this.Cr,this,n);this.wa.si();this.g=this.H=this.P=this.bb=this.wa=
r};i.prototype.dh=function(a){switch(a){case k.$n:this.Ab(+i.qA,0);break;case k.ao:this.Ab(-i.qA,0);break;case k.oe:this.Ab(0,0)}};i.prototype.Ia=function(a,b,c,d,e,f){this.da=a;this.fa=b;this.Jb=c;this.ta=d;this.wa.jc(this.Jb,this.ta,e,f)};i.prototype.ld=function(){return this.W&&(this.P||this.bb.ld()||this.tp!=m&&this.da!=this.tp||this.up!=m&&this.fa!=this.up||this.cn!=m&&this.Jb!=this.cn)?n:y};i.prototype.fb=function(a){this.jE();if(this.P){this.P.fb(a);this.da=this.P.Bb("x");this.fa=this.P.Bb("y");
this.Jb=this.cn-this.P.Bb("angleDif")}else{if(this.tp!=m)this.da=this.tp;if(this.up!=m)this.fa=this.up;if(this.cn!=m)this.Jb=this.cn}this.bb.fb(a);this.H.Ia(this.da,this.fa,this.Jb,this.ta+this.bb.KH);this.da=this.H.getX();this.fa=this.H.getY();this.Jb=this.H.lz();this.ta=this.H.hm()};i.prototype.nd=function(a){if(this.W=a){this.wa.kw(this.g.getParent());this.HL()}else this.wa.si()};i.prototype.Cr=function(a){this.Ab(0,a.data.zoomDelta)};i.prototype.Ab=function(a,b){this.bb.vea(0,0,0,a,0,0,0,b);this.wf()};
i.prototype.wf=function(){this.trigger(new b(i.jf))};i.jf="position change request";i.wP=7;i.xP=0.2;i.qA=0.5;i.rP=30;return i});
define("kK","fg,bZ,eO,hG,jn,ii,kv,jR,ll".split(","),function(a,b,c,d,f,e,g,k,i){var p=a.extend(c,function(a){c.call(this);this.g=a;this.g.bind(i.vb,this.jb,this);this.dj=d.Ys;this.Hb=r;this.fa=this.da=0.5;this.Jb=0;this.ta=1;this.na=r;this.HK=this.GK=this.rn=this.qn=y;this.tj=n;this.W=y;this.H=new e;this.H.om(this.dj);this.Ta=new g(this.g,this.H);this.Ta.bind(g.jf,this.zl,this,n);this.Yf=new k(this.g,this.H);this.Yf.bind(k.jf,this.zl,this,n);this.tK()});p.prototype.clear=function(){this.Ta.unbind(g.jf,
this.zl,this);this.Ta.clear();this.Ta=r;this.Yf.unbind(k.jf,this.zl,this);this.Yf.clear();this.na=this.H=this.Yf=r;this.g.unbind(i.vb,this.jb,this);this.g=r};p.prototype.stop=function(){this.Cc=this.na=r;this.W=y;this.Ta.nd(y);this.Yf.nd(y);this.lp(0,0,0,0)};p.prototype.start=function(a){var b=a.na,c=b.get("width",100),d=b.get("height",100),e=b.get("scaleMode",f.Se),g=b.get("minimumZoomFactor",1),i=b.get("maximumZoomFactor",1),k=b.get("initialZoomFactor",1);this.na=b;this.W=n;this.Cc=a.getItem();
this.lp(0,0,0,0);this.Yf.vya(c,d);this.H.DF(c,d,e,g,i);this.H.Ia(0.5,0.5,0,k);this.g.JF(this.Cc,this.H.getX(),this.H.getY(),this.H.lz(),this.H.hm());this.tK()};p.prototype.dh=function(a){this.Ta.dh(a);this.Yf.dh(a)};p.prototype.om=function(a){if(this.dj!=a){this.dj=a;this.H.om(a);this.tK()}};p.prototype.$p=function(a){if(this.Hb!=a){this.Hb=a;this.Yf.$p(a);this.tK()}};p.prototype.IF=function(a){this.Ta&&this.Ta.IF(a)};p.prototype.Ij=function(a,b,c,d){this.Yf.Ij(a,b,c,d)};p.prototype.Sp=function(a){if(this.W)if(this.Yf.ld()){this.Yf.fb(a);
this.mi(this.Yf.da,this.Yf.fa,this.Yf.Jb,this.Yf.ta);this.ea()}else if(this.Ta.ld()){this.Ta.fb(a);this.mi(this.Ta.da,this.Ta.fa,this.Ta.Jb,this.Ta.ta);this.ea()}else this.lp(0,0,0,0)};p.prototype.cc=function(){if(this.Cc){var a=this.g.dF(this.Cc),b=this.g.eF(this.Cc),c=this.g.yM(this.Cc),d=this.g.Uba(this.Cc),e=this.g.cF(this.Cc),f=this.g.bF(this.Cc),g=a-this.da,i=b-this.fa,k=c-this.Jb,p=d-this.ta;this.da=a;this.fa=b;this.Jb=c;this.ta=d;this.lp(g,i,k,p);this.Yf.Ia(a,b,c,d,e,f);this.Ta.Ia(a,b,c,d,
e,f)}};p.prototype.tK=function(){if(this.dj==d.cP&&this.Hb!=r&&this.Hb.get("map")==this.na){this.Ta.nd(y);this.Yf.nd(n)}else{this.Ta.nd(n);this.Yf.nd(y)}};p.prototype.zl=function(){this.ea()};p.prototype.jb=function(){this.H.setSize(this.g.Aa(),this.g.eb());this.ea()};p.prototype.ea=function(){this.trigger(new b(p.Ja))};p.prototype.mi=function(a,b,c,d){this.g.JF(this.Cc,a,b,c,d)};p.prototype.lp=function(a,c,d,e){a=y;if(this.rn!=e<0){this.rn=!this.rn;a=n}if(this.qn!=e>0){this.qn=!this.qn;a=n}if(this.GK!=
this.Bt>0){this.GK=!this.GK;a=n}if(this.HK!=this.Bt<0){this.HK=!this.HK;a=n}if(this.tj!=(e==0)){this.tj=!this.tj;a=n}a&&this.trigger(new b(p.gh,{rotatingClockwise:this.GK,rotatingCounterClockwise:this.HK,zoomingIn:this.qn,zoomingOut:this.rn,stopped:this.tj}))};p.Ja="request frame";p.gh="movement change";return p});
define("ja","require,fg,bZ,eO,jn,ii".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("eO"),f=a("jn"),e=a("ii"),g=b.extend(d,function(a,b){d.call(this);this.C=a;this.g=b;this.H=new e;this.Ye=[];this.S=g.lf;this.ak=this.mh=this.ak=this.Qh=r;this.Me=this.C.get("transitionDuration");this.ue=m});g.prototype.om=function(a){this.H.om(a)};g.prototype.TE=function(a){a.kF()&&this.wQ();this.Ye.push(a);this.FJ()};g.prototype.hide=function(){this.wQ();this.Ye.push(r);this.FJ()};g.prototype.clear=function(){this.S=
g.lf;this.wQ();this.opa();this.hV();this.g=r};g.prototype.cc=function(a){if(this.S!=g.lf&&(this.S==g.Uj||this.S==g.vq)){this.ue=this.ue+a;a=Math.min(1,this.ue/this.Me);this.S==g.Uj?this.g.mm(this.ak,a):this.g.mm(this.NH,1-a);this.ue<this.Me?this.ea():this.S==g.Uj?this.eka():this.gka()}};g.prototype.FJ=function(){if(this.S==g.lf){for(;this.Ye.length>0&&this.jha(this.Ye[0],this.mh);)this.Ye.shift();this.Ye.length>0&&this.el()}};g.prototype.jha=function(a,b){return a==b||!!a&&!!b&&a.isEqual(b)};g.prototype.el=
function(){this.mh&&(!this.Ye[0]||this.Ye[0].kF())&&this.trigger(new c(g.at,{map:this.mh.na}));if(this.C.get("transitionMode","blending")=="fade_out_fade_in"&&this.mh&&(!this.Ye[0]||this.Ye[0].kF()))this.Aq();else{this.ak=(this.Qh=this.Ye.shift())&&this.Qh.getItem();this.Qh?this.EA():this.mh&&this.Aq()}};g.prototype.EA=function(){this.Oga();this.Qh.kF()&&this.aqa();this.ue=0;this.S=g.Uj;this.ea()};g.prototype.eka=function(){this.hV();this.mh=this.Qh;this.NH=this.ak;this.ak=this.Qh=r;this.Wq()};g.prototype.Aq=
function(){this.ue=0;this.S=g.vq;this.ea()};g.prototype.gka=function(){this.hV();this.mh=r;this.Wq()};g.prototype.Wq=function(){this.S=g.lf;this.mh&&this.mh.kF()&&this.trigger(new c(g.bt,{map:this.mh.na}));this.Ye.length==0?this.mh?this.trigger(new c(g.nO,{level:this.mh})):this.trigger(new c(g.aO)):this.el()};g.prototype.aqa=function(){var a=this.Qh.na;this.Qh.Zg();this.H.DF(a.get("width",100),a.get("height",100),a.get("scaleMode",f.Se),a.get("minimumZoomFactor",1),a.get("maximumZoomFactor",1));this.H.Ia(0.5,
0.5,0,a.get("initialZoomFactor",1));this.g.JF(this.ak,this.H.getX(),this.H.getY(),this.H.lz(),this.H.hm())};g.prototype.ea=function(){this.trigger(new c(g.Ja))};g.prototype.wQ=function(){for(;this.Ye.length>0;){var a=this.Ye.shift();a&&this.g.Ai(a.getItem())}};g.prototype.Oga=function(){if(this.Qh){this.g.OX(this.ak);this.g.UX(this.ak);this.g.mm(this.ak,0);this.trigger(new c(g.mO,{level:this.Qh}))}};g.prototype.hV=function(){if(this.mh){this.g.removeItem(this.NH);this.trigger(new c(g.kG,{level:this.mh}));
this.g.Ai(this.NH);this.NH=this.mh=r}};g.prototype.opa=function(){if(this.Qh){this.g.removeItem(this.ak);this.trigger(new c(g.kG,{level:this.Qh}));this.g.Ai(this.ak);this.ak=this.Qh=r}};g.lf="stopped";g.Uj="blending";g.vq="disolving";g.Ja="request frame";g.mO="level added";g.kG="level removed";g.nO="level fully displayed";g.aO="all pending maps hidden";g.bt="map show";g.at="map hide";return g});
define("iy",[],function(){function a(a,c){this.na=a;this.ia=a.get("image");this.Xd=c;this.hT=m}a.prototype.getItem=function(){switch(this.Xd){case a.EG:return this.na.cca();default:return this.na.$g()}};a.prototype.Zg=function(){switch(this.Xd){case a.EG:return this.na.Rv();default:return this.na.fm()}};a.prototype.kF=function(){return this.hT===m?0==this.getIndex():this.hT};a.prototype.gya=P("hT");a.prototype.mF=function(){return this.Xd==a.$_};a.prototype.isEqual=function(a){return a&&this.na==
a.map&&this.Xd==a.type};a.prototype.getIndex=function(){return this.Xd==a.EG||this.na.vz()?0:1};a.prototype.Lba=function(){return this.na.vz()?2:1};a.EG="preload";a.$_="load";return a});
define("hE","require,fg,ih,ll,bZ,eO,iy,r".split(","),function(a){var b=a("fg"),c=a("ih"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("iy"),k=a("r"),i=b.extend(e,function(a){e.call(this);this.g=a;this.Ye=[];this.dB=this.uu=this.De=r;this.ou=y;this.VI=r;this.DJ=b.jm(this.DJ,this)});i.prototype.clear=function(){this.stop();this.g=r};i.prototype.gda=function(a,b){if(this.VI!=a||b){this.stop();this.na=a;this.na.Bxa();c.Jta(this.na,"image.levels.url",this.DJ);var d=[];a.vz()&&k.Xa()&&d.push(new g(a,g.EG));d.push(new g(a,
g.$_));d=d.filter(function(a){return a.getItem().Bj()});if(d.length){this.Ye=this.Ye.concat(d);this.FJ()}}};i.prototype.DJ=function(){this.reload()};i.prototype.reload=function(){this.gda(this.na,n)};i.prototype.stop=function(){c.$b(this.na,"image.levels.url",this.DJ);this.VI=this.na=r;this.Ye=[];this.x$();if(this.ou){this.ou=y;this.KW();this.g.Ai(this.De.getItem());this.De=r;this.trigger(new f(i.lG))}};i.prototype.FJ=function(){this.ou||this.ET()};i.prototype.ET=function(){if(this.Ye.length>0){this.De=
this.Ye.shift();if(!this.ou){this.ou=n;this.trigger(new f(i.jG,{level:this.De,percent:0}))}this.Hha();this.g.In(this.De.getItem());this.g.g_(this.De.getItem())&&this.cU()}else if(this.ou){this.ou=y;this.trigger(new f(i.lG))}};i.prototype.cU=function(){this.KW();this.pra();this.De=r;this.ET()};i.prototype.pra=function(){this.x$();this.uu=this.De;var a=this;this.dB=setTimeout(function(){a.dB=r;a.Ana()},500)};i.prototype.Ana=function(){var a=this.uu.na;this.uu.gya(a!=this.VI);this.VI=a;this.trigger(new f(i.oO,
{level:this.uu}));this.uu=r};i.prototype.x$=function(){if(this.dB!=r){clearTimeout(this.dB);this.dB=r;this.g.Ai(this.uu.getItem());this.uu=r}};i.prototype.N6=function(){this.KW();this.De=r;this.ET()};i.prototype.O6=function(a){this.trigger(new f(i.jG,{level:this.De,percent:a.Ih}))};i.prototype.Hha=function(){var a=this.De.getItem();a.bind(d.T,this.cU,this);a.bind(d.ne,this.N6,this);a.bind(d.vc,this.O6,this)};i.prototype.KW=function(){var a=this.De.getItem();a.unbind(d.T,this.cU,this);a.unbind(d.ne,
this.N6,this);a.unbind(d.vc,this.O6,this)};i.jG="level loading progress";i.oO="level loaded";i.lG="load stopped";return i});define("ch",["require"],function(){function a(a,c){this.x=a;this.y=c}a.prototype.rotate=function(a){var c=Math.cos(a),a=Math.sin(a),d=this.x*a+this.y*c;this.x=this.x*c-this.y*a;this.y=d;return this};a.prototype.translate=function(a,c){this.x+=a;this.y+=c;return this};a.prototype.scale=function(a,c){this.x*=a;this.y*=c;return this};return a});
define("jJ",["require","jn","jY"],function(a){function b(a,b,g){this.te=a;this.m$=b;this.l$=g;this.Ed=c.Vn;this.Vh=d.Mc;this.pi=d.tc}var c=a("jn"),d=a("jY");b.prototype.Qs=P("Ed");b.prototype.Oz=P("Vh");b.prototype.Sz=P("pi");b.prototype.iz=function(a,b,g){var k=this.m$,i=this.l$,p,j;switch(this.Ed){case c.NONE:j=p=1;break;case c.Se:p=j=Math.min(b/k,g/i);break;case c.tm:p=j=Math.max(b/k,g/i);break;case c.Wk:p=j=b/k;break;case c.ih:p=j=g/i;break;default:p=b/k,j=g/i}var l=b/p;p=Math.min(this.m$*p,b);
l=Math.min(l,k);switch(this.Vh){case d.qa:k=b=0;break;case d.Ma:b-=p;k-=l;break;default:b=0.5*(b-p),k=0.5*(k-l)}var q=g/j;j=Math.min(this.l$*j,g);q=Math.min(q,i);switch(this.pi){case d.mb:i=g=0;break;case d.lb:g-=j;i-=q;break;default:g=0.5*(g-j),i=0.5*(i-q)}a.drawImage(this.te,Math.round(k),Math.round(i),Math.round(l+k-Math.round(k)),Math.round(q+i-Math.round(i)),Math.round(b),Math.round(g),Math.round(p+b-Math.round(b)),Math.round(j+g-Math.round(g)))};return b});
define("ju","require,ll,ge,ch,id,jJ".split(","),function(a){function b(a,b,f,g){this.g=a;this.na=b;this.Tc=this.na.get("width");this.Sc=this.na.get("height");this.Cc=this.na.$g();this.o5=f;this.ek=g;this.ku=r;if(this.ek){this.By=this.o5.By;this.X=this.ek.get("width");this.ha=this.ek.get("height");this.da=this.ek.get("x",0);this.fa=this.ek.get("y",0);this.Bu=this.ek.get("offsetX",0);this.Cu=this.ek.get("offsetY",0);if(this.ab=this.ek.fm()){this.rf=new e(d.Sj);this.rf.load(this.ab.get("url"));this.rf.bind(c.T,
this.q7,this)}}else this.rf=r}var c=a("ll"),d=a("ge"),f=a("ch"),e=a("id"),g=a("jJ");b.prototype.clear=function(){this.ek=this.o5=this.Cc=this.na=this.g=r;if(this.rf){this.rf.unbind(c.T,this.q7,this);this.rf.cancel();this.rf=r}this.ku=r};b.prototype.Wba=function(a,b){this.p5=m;if(this.ku&&a!=m&&b!=m){var c=this.g.Aa()*0.5,d=this.g.eb()*0.5,e=this.g.yM(this.Cc)*Math.PI/180,g=this.g.cF(this.Cc),o=this.g.bF(this.Cc),t=this.g.dF(this.Cc),s=this.g.eF(this.Cc),u=new f(a,b);u.translate(-c,-d);u.rotate(-e);
u.scale(1/g,1/o);u.translate(t,s);u.scale(this.Tc,this.Sc);u.translate(-this.da,-this.fa);if(!this.By){u.rotate(e);u.scale(g/this.Tc,o/this.Sc)}u.translate(this.Bu,this.Cu);c=Math.round(u.x);u=Math.round(u.y);if(c>=0&&c<this.ku.width&&u>=0&&u<this.ku.height){u=(this.ku.width*u+c)*4;c=this.ku.data;this.p5=c[u+3]>0?"#"+this.iQ(c[u+0])+this.iQ(c[u+1])+this.iQ(c[u+2]):"transparent"}}return this.p5};b.prototype.q7=function(){var a=new g(this.rf.ve(),this.ab.get("width"),this.ab.get("height"));a.Qs(this.ek.get("scaleMode"));
a.Oz(this.ek.get("horizontalAlign"));a.Sz(this.ek.get("verticalAlign"));var b=document.createElement("canvas");b.width=Math.round(this.X);b.height=Math.round(this.ha);var c=b.getContext("2d");a.iz(c,b.width,b.height);this.ku=c.getImageData(0,0,b.width,b.height);b.width=b.height=0};b.prototype.iQ=function(a){for(a=a.toString(16);a.length<2;)a="0"+a;return a};return b});
define("iu","require,do,fg,ll,bZ,eO,kA,ju,R,kX,bq".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("kA"),k=a("ju"),i=a("R"),p=a("kX"),j=a("bq"),l=c.extend(e,function(a,b,c){e.call(this);this.g=a;this.na=b;this.Ga=c;this.Y=this.Ga.getItem();this.Nl=this.Ga.dca();this.Ol=this.Ga.fca();this.Io=this.fk=m;this.C=this.g.getParent();this.C.bind(d.Nc,this.fj,this);this.C.bind(d.Mb,this.vC,this);this.C.bind(d.Eb,this.Br,this);this.C.bind(d.ec,this.xC,this);c.bind(d.D("selected"),
this.P7,this);c.bind(d.D("enabled"),this.Cna,this);this.cJ=new k(this.g,this.na,this.Ga,this.Ga.get("map",r));this.eJ=new k(this.g,this.na,this.Ga,this.Ga.get("rollOverMap",this.Ga.get("map",r)));this.fJ=new k(this.g,this.na,this.Ga,this.Ga.get("selectedMap",this.Ga.get("rollOverMap",this.Ga.get("map",r))));this.yI=new k(this.g,this.na,this.Ga,this.Ga.get("image",r));this.zI=new k(this.g,this.na,this.Ga,this.Ga.get("rollOverImage",this.Ga.get("image",r)));this.AI=new k(this.g,this.na,this.Ga,this.Ga.get("selectedImage",
this.Ga.get("rollOverImage",this.Ga.get("image",r))));this.Hc=this.Gc=m;this.Ry=r;this.eo=[];this.zA=[];this.mf={};this.c6=[];this.zS=y;this.jn=this.Ga.get("useHandCursor");this.P=r;this.Ly=m;this.OK=this.EK=this.OI=0;a=this.Ga.get("areas",[]);for(b=0;b<a.length;b++){var c=a[b],f=c.get("mapColor");if(f){f=f.toLowerCase();if(this.mf[f]===m){this.mf[f]=[];this.c6.push(f)}this.mf[f].push(c)}}if(this.Y){this.g.YL(this.na.$g(),this.Y);this.g.mm(this.Y,this.OI)}if(this.Nl){this.g.YL(this.na.$g(),this.Nl);
this.g.mm(this.Nl,this.EK)}if(this.Ol){this.g.YL(this.na.$g(),this.Ol);this.g.mm(this.Ol,this.OK)}this.BD("none");this.VW();this.K9(y);this.L9(this.Ga.get("selected"))});l.prototype.clear=function(){this.C.unbind(d.Nc,this.fj,this);this.C.unbind(d.Mb,this.vC,this);this.C.unbind(d.Eb,this.Br,this);this.C.unbind(d.ec,this.xC,this);this.C=r;this.cJ&&this.cJ.clear();this.cJ=r;this.eJ&&this.eJ.clear();this.eJ=r;this.fJ&&this.fJ.clear();this.fJ=r;this.yI&&this.yI.clear();this.yI=r;this.zI&&this.zI.clear();
this.zI=r;this.AI&&this.AI.clear();this.AI=r;this.eo=[];this.fk=y;this.VW();this.zA=[];this.mf={};this.B$();this.pE();this.na=this.g=r;this.Ga.unbind(d.D("selected"),this.P7,this);this.Ol=this.Nl=this.Y=this.Ga=r};l.prototype.match=function(a){return this.Ga==a};l.prototype.cc=function(a){this.Px(y);if(this.P){this.P.fb(a);this.OI=this.P.Bb("itemAlpha");this.EK=this.P.Bb("rollOverItemAlpha");this.OK=this.P.Bb("selectedItemAlpha");this.Y&&this.g.mm(this.Y,this.OI);this.Nl&&this.g.mm(this.Nl,this.EK);
this.Ol&&this.g.mm(this.Ol,this.OK);this.P.Qe()?this.P=r:this.ea()}};l.prototype.Br=function(a){this.Gc=a.x-this.C.ti();this.Hc=a.y-this.C.yn();this.Px(n);this.zA=this.eo.slice()};l.prototype.fj=function(a){this.Gc=a.x-this.C.ti();this.Hc=a.y-this.C.yn();this.Px(n)};l.prototype.xC=function(a){this.Gc=a.x-this.C.ti();this.Hc=a.y-this.C.yn();this.Px(n);a=b.intersection(this.zA,this.eo);this.zA=[];this.FW(a,"click")};l.prototype.vC=function(){this.Hc=this.Gc=m;this.Px(n);this.zA=this.eo.slice()};l.prototype.P7=
function(){this.L9(this.Ga.get("selected"))};l.prototype.Cna=function(){this.Px(n);this.ie();this.ea()};l.prototype.Px=function(a){this.C5=n;a?this.Qy():this.Nma()||this.Dra()};l.prototype.Dra=function(){this.B$();var a=this;this.Ry=setTimeout(function(){a.Ry=r;a.Qy()},200)};l.prototype.Nma=function(){return this.Ry?n:y};l.prototype.B$=function(){if(this.Ry){clearTimeout(this.Ry);this.Ry=r}};l.prototype.Qy=function(){if(this.C5){this.C5=y;var a=this.eo,c=this.Ika();this.eo=c;if(!this.C.gk){this.FW(b.difference(c,
a),"rollOver");this.K9(c.length>0);this.FW(b.difference(a,c),"rollOut");this.pE()}}};l.prototype.pE=function(){for(var a="",b=0;b<this.eo.length&&!a;b++){var c=this.eo[b];c.get("toolTip")&&(a=c.get("toolTip"))}if(this.ya!=a){this.ya&&this.g.cxa(this.ya);(this.ya=a)&&this.g.jxa(this.ya)}};l.prototype.VW=function(){var a=this.fk&&(this.jn!==y||b(this.eo).any(function(a){return a.get("useHandCursor")===n}));if(this.zS!=a)(this.zS=a)?this.g.gN(i.me):this.g.Fz(i.me)};l.prototype.Ika=function(){if(this.Ga.get("enabled")===
y)return[];var a=[],b=this.Io?this.fJ:this.fk?this.eJ:this.cJ;if(b)if(b=b.Wba(this.Gc,this.Hc)){this.mf.any&&(a=a.concat(this.mf.any));b=="transparent"&&this.mf.transparent&&(a=a.concat(this.mf.transparent));if(b!="transparent"){a=this.mf[b]?a.concat(this.mf[b]):a.concat(this.mf[g.Exa(b,this.c6,5)]||[]);this.mf.image&&(a=a.concat(this.mf.image))}}if(b=this.Io?this.AI:this.fk?this.zI:this.yI)if(b=b.Wba(this.Gc,this.Hc)){this.mf.any&&(a=a.concat(this.mf.any));b=="transparent"&&this.mf.transparent&&
(a=a.concat(this.mf.transparent));b!="transparent"&&this.mf.image&&(a=a.concat(this.mf.image))}for(var b=[],c=0;c<a.length;c++){var d=a[c];b.indexOf(d)<0&&b.push(d)}return b};l.prototype.FW=function(a,b){if(a)for(var c=0;c<a.length;c++)a[c].trigger(new f(b))};l.prototype.K9=function(a){if(this.fk!=a){this.fk=a;this.trigger(new f(l.iO));this.ie();this.VW();this.ea()}};l.prototype.L9=function(a){if(this.Io!=a){this.Io=a;this.ie();this.ea()}};l.prototype.ie=function(){(this.fk||this.Ga.get("rollOverDisplay")!=
n)&&this.Ga.get("enabled")!==y?this.Io?this.BD("selected"):this.fk?this.BD("roll over"):this.BD("visible"):this.BD("none")};l.prototype.BD=function(a){if(this.Ly!=a){this.Ly=a;var c,d;if(b(["selected"]).contains(this.Ly)&&this.Ol){d=1;a=c=0}else if(b(["selected","roll over"]).contains(this.Ly)&&this.Nl){c=1;a=d=0}else if(b(["selected","roll over","visible"]).contains(this.Ly)){a=1;d=c=0}else a=d=c=0;var e=this.OI,f=this.EK,g=this.OK,i=this.Ly=="none"?"quad_out":"quad_in",k=Math.max(200*Math.abs(a-
e),200*Math.abs(c-f),200*Math.abs(d-g));this.P=new p(i,[new j("itemAlpha",e,a),new j("rollOverItemAlpha",f,c),new j("selectedItemAlpha",g,d)],k)}};l.prototype.ea=function(){this.trigger(new f(l.Ja))};l.Ja="request frame";l.iO="is over update";return l});define("jX",["fg","hC"],function(a,b){var c=a.extend(b,function(a,c,e,g,k,i,p){b.call(this,b.Z0,a,c);this.tma=e;this.uma=g;this.Boa=k;this.Coa=i;this.pc=p;this.sE=[]});c.prototype.Tv=Q("pc");return c});
define("eq","fg,ll,bZ,eO,ch,jX".split(","),function(a,b,c,d,f,e){var g=a.extend(d,function(a,c,e){d.call(this);this.g=a;this.C=this.g.getParent();this.C.bind(b.Eb,this.Br,this,n);this.C.bind(b.Nc,this.fj,this,n);this.C.bind(b.Ff,this.vC,this,n);this.na=c;this.Tc=this.na.get("width");this.Sc=this.na.get("height");this.epa=Math.sqrt(this.Tc*this.Tc+this.Sc*this.Sc)*this.na.get("fieldOfViewOverlayRadiusScale",1);this.Cc=this.na.$g();this.Hb=e;this.jy=this.Hb.get("x",0);this.ky=this.Hb.get("y",0);this.VJ=
this.Hb.get("angle",0);this.Y=this.rja();this.Jm=y;this.$=0;this.ba=Math.PI*0.5;this.mc=y;this.Hc=this.Gc=m;this.g.YL(this.na.$g(),this.Y)});g.prototype.wea=function(a,b){this.$=a+this.VJ-90;this.ba=b;this.ea()};g.prototype.clear=function(){this.C.unbind(b.Eb,this.Br,this);this.C.unbind(b.Nc,this.fj,this);this.C.unbind(b.Ff,this.vC,this);this.C=r;this.g.qxa(this.na.$g(),this.Y);this.Y=this.Hb=this.Cc=this.na=this.g=r};g.prototype.cc=function(){this.g.kya(this.Y,this.$,this.ba)};g.prototype.rja=function(){return new e(this.jy,
this.ky,this.na.get("fieldOfViewOverlayInsideColor","#FFFFFF"),this.na.get("fieldOfViewOverlayInsideOpacity",0),this.na.get("fieldOfViewOverlayOutsideColor","#000000"),this.na.get("fieldOfViewOverlayOutsideOpacity",0),this.na.get("fieldOfViewOverlayRadiusScale",1))};g.prototype.ea=function(){this.trigger(new c(g.Ja))};g.prototype.XW=function(){var a=y;if(this.Gc!=m&&this.Hc!=m){var b=this.g.Aa()*0.5,d=this.g.eb()*0.5,e=this.g.yM(this.Cc)*Math.PI/180,l=this.g.cF(this.Cc),q=this.g.bF(this.Cc),o=this.g.dF(this.Cc),
t=this.g.eF(this.Cc),a=new f(this.Gc,this.Hc);a.translate(-b,-d);a.rotate(-e);a.scale(1/l,1/q);a.translate(o,t);a.scale(this.Tc,this.Sc);a.translate(-this.jy,-this.ky);a.rotate(-this.$*Math.PI/180);b=Math.round(Math.atan2(a.y,a.x)*180/Math.PI);a=Math.round(Math.sqrt(a.x*a.x+a.y*a.y))<=this.epa&&Math.abs(b)<this.ba*0.5}if(this.Jm!=a){this.Jm=a;this.trigger(new c(g.MO,{inFOV:this.Jm}))}};g.prototype.awa=Q("Jm");g.prototype.Br=function(a){this.Gc=a.x;this.Hc=a.y;this.mc=n;this.XW()};g.prototype.fj=function(a){if(!this.mc){this.Gc=
a.x;this.Hc=a.y;this.XW()}};g.prototype.vC=function(){this.Hc=this.Gc=m;this.mc=y;this.XW()};g.Ja="request frame";g.MO="mouse in fov change";return g});
define("lc","do,fg,bZ,eO,gs,iu,eq,R".split(","),function(a,b,c,d,f,e,g){var k=b.extend(d,function(a){d.call(this);this.g=a;this.ZB=[];this.Go=[];this.Wi=[];this.hj=this.Hb=r});k.prototype.clear=function(){for(var a=0;a<this.Go.length;a++)this.Go[a].clear();for(a=0;a<this.Wi.length;a++)this.Wi[a].clear();this.g=this.ZB=this.Hb=this.Wi=this.Go=r};k.prototype.TE=function(a){a.mF()&&this.Yga(a.na)};k.prototype.JY=function(a){a.mF()&&this.zpa(a.na)};k.prototype.$p=function(a){if(this.Hb!=a){this.Hb&&this.X8(this.Hb.get("map"));
this.Hb=a;this.hj=r;if(this.Hb){a=this.Hb.get("map");this.iT(a)&&this.W1(a)}}};k.prototype.Ij=function(a,b,c,d){this.hj={yaw:b,pitch:c,hfov:d};for(c=0;c<this.Wi.length;c++){var e=this.Wi[c];if(e.Hb==a){e.wea(b,d);break}}};k.prototype.Yga=function(a){if(!this.iT(a)){this.ZB.push(a);this.Rga(a);this.W1(a)}};k.prototype.zpa=function(b){if(this.iT(b)){this.ZB=a(this.ZB).without(b);this.tpa(b);this.X8(b)}};k.prototype.iT=function(b){return a(this.ZB).indexOf(b)>=0};k.prototype.cc=function(a){for(var b=
0;b<this.Go.length;b++)this.Go[b].cc(a);for(b=0;b<this.Wi.length;b++)this.Wi[b].cc(a)};k.prototype.Rga=function(a){for(var b=a.get("overlays",[]),c=0;c<b.length;c++){var d=b[c];if(d instanceof f){d=new e(this.g,a,d);d.bind(e.Ja,this.ea,this,n);d.bind(e.iO,this.K5,this,n);this.Go.push(d)}}};k.prototype.W1=function(a){if(this.Hb&&this.Hb.get("map")==a&&this.Hb.get("visible")!==y){a=new g(this.g,a,this.Hb);a.bind(g.Ja,this.ea,this,n);a.bind(g.MO,this.zJ,this,n);this.Wi.push(a);this.hj&&a.wea(this.hj.yaw,
this.hj.hfov)}this.zJ()};k.prototype.tpa=function(a){for(var a=a.get("overlays",[]),b=0;b<a.length;b++)for(var c=a[b],d=0;d<this.Go.length;d++){var f=this.Go[d];if(f.match(c)){f.unbind(e.Ja,this.ea,this);f.unbind(e.iO,this.K5,this);f.clear();this.Go.splice(d,1);break}}};k.prototype.X8=function(a){for(var b=0;b<this.Wi.length;b++){var c=this.Wi[b];if(c.na==a){c.unbind(g.Ja,this.ea,this);c.unbind(g.MO,this.zJ,this);c.clear();this.Wi.splice(b,1);break}}this.zJ()};k.prototype.K5=C();k.prototype.ea=function(){this.trigger(new c(k.Ja))};
k.prototype.zJ=function(){for(var a=y,b=0;b<this.Wi.length;b++)this.Wi[b].awa()&&(a=n);this.trigger(new c(k.hO,{inFOV:a}))};k.Ja="request frame";k.hO="in fov change";return k});
define("B","fg,ll,bZ,eO,hG,ch".split(","),function(a,b,c,d,f,e){var g=a.extend(d,function(a){d.call(this);this.g=a;this.C=this.g.getParent();this.C.bind(b.Nc,this.fj,this,n);this.C.bind(b.Eb,this.Br,this,n);this.C.bind(b.ec,this.xC,this,n);this.na=r;this.Cc=this.Sc=this.Tc=m;this.Hb=r;this.VJ=this.ky=this.jy=m;this.Jm=y;this.Hc=this.Gc=this.dj=m;this.mc=y;this.$=0});g.prototype.clear=function(){this.C.unbind(b.Nc,this.fj,this);this.C.unbind(b.Eb,this.Br,this);this.C.unbind(b.ec,this.xC,this);this.g=
this.Hb=this.Cc=this.na=this.C=r};g.prototype.IF=function(a){this.Jm=a;this.RW()};g.prototype.TE=function(a){a.mF()&&this.P9(a.na)};g.prototype.JY=function(a){a.mF()&&this.na==a.na&&this.P9(r)};g.prototype.P9=function(a){if(this.na!=a)if(this.na=a){this.Tc=this.na.get("width");this.Sc=this.na.get("height");this.Cc=this.na.$g()}else{this.Sc=this.Tc=m;this.Cc=r}};g.prototype.$p=function(a){if(this.Hb!=a)if(this.Hb=a){this.jy=this.Hb.get("x",0);this.ky=this.Hb.get("y",0);this.VJ=this.Hb.get("angle",
0)}else this.VJ=this.ky=this.jy=m};g.prototype.Ij=function(a,b){if(this.Hb==a)this.$=b};g.prototype.om=P("dj");g.prototype.Br=function(a){this.Gc=a.x;this.Hc=a.y;this.mc=n;this.RW()};g.prototype.fj=function(a){this.Gc=a.x;this.Hc=a.y;if(this.CR){a=this.V4();this.trigger(new c(g.hh,{yawDelta:a-this.Jb}));this.Jb=a}};g.prototype.xC=function(a){this.Gc=a.x;this.Hc=a.y;this.mc=y;this.RW()};g.prototype.RW=function(){var a=this.mc&&this.Hb&&this.na&&(this.dj==f.cP||this.Jm);if(this.CR!=a)if(this.CR=a)this.Jb=
this.V4()};g.prototype.V4=function(){var a=this.g.Aa()*0.5,b=this.g.eb()*0.5,c=new e(this.Gc,this.Hc);c.translate(-a,-b);if(this.dj==f.cP)return-Math.atan2(c.y,c.x)*180/Math.PI;var a=this.g.yM(this.Cc)*Math.PI/180,b=this.g.cF(this.Cc),d=this.g.bF(this.Cc),g=this.g.dF(this.Cc),q=this.g.eF(this.Cc);c.rotate(-a);c.scale(1/b,1/d);c.translate(g,q);c.scale(this.Tc,this.Sc);c.translate(-this.jy,-this.ky);return Math.atan2(c.y,c.x)*180/Math.PI};g.hh="request yaw change";return g});
define("jQ",["fg","bZ","eO","V"],function(a,b,c,d){var f=a.extend(c,function(a){c.call(this);this.W=n;this.eu=y;this.g=a});f.prototype.clear=function(){this.W=y;this.g=r};f.prototype.La=function(){this.eu||(this.eu=n,d.La(this.Ng,this))};f.prototype.Ng=function(a){this.W&&(this.eu=y,this.trigger(new b(f.Tk,{frameTime:a})),this.trigger(new b(f.Uk,{frameTime:a})),this.g.render())};f.Tk="frameStart";f.Uk="positionSet";return f});
define("jm","require,fg,ll,bZ,eO,kK,ja,hE,lc,B,jQ".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("kK"),g=a("ja"),k=a("hE"),i=a("lc"),p=a("B"),j=a("jQ"),l=b.extend(f,function(a,b){f.call(this);this.C=a;this.g=b;this.g.set("visible",y);this.$J=r;this.fe=new j(this.g);this.de=new k(this.g);this.ga=new g(this.C,this.g);this.oa=new e(this.g);this.El=new i(this.g);this.Rm=new p(this.g);this.C.bind(c.od,this.NJ,this,n);this.fe.bind(j.Tk,this.Er,this,n);this.fe.bind(j.Uk,this.Fr,
this,n);this.de.bind(k.lG,this.rC,this);this.de.bind(k.oO,this.i7,this);this.de.bind(k.jG,this.j7,this);this.ga.bind(g.Ja,this.Zc,this,n);this.ga.bind(g.mO,this.g7,this,n);this.ga.bind(g.kG,this.k7,this,n);this.ga.bind(g.nO,this.h7,this,n);this.ga.bind(g.at,this.Wo,this,n);this.ga.bind(g.bt,this.zr,this,n);this.ga.bind(g.aO,this.B6,this,n);this.oa.bind(e.Ja,this.Zc,this,n);this.oa.bind(e.gh,this.xl,this);this.El.bind(i.Ja,this.Zc,this,n);this.El.bind(i.hO,this.Z6,this,n);this.Rm.bind(p.hh,this.GC,
this,n);this.Z3=y});l.prototype.om=function(a){this.oa.om(a);this.ga.om(a);this.Rm.om(a)};l.prototype.clear=function(){this.Z3=n;this.de.clear();this.fe.clear();this.oa.clear();this.ga.clear();this.El.clear();this.Rm.clear();this.C.unbind(c.od,this.NJ,this);this.de.unbind(k.lG,this.rC,this);this.de.unbind(k.oO,this.i7,this);this.de.unbind(k.jG,this.j7,this);this.fe.unbind(j.Tk,this.Er,this);this.fe.unbind(j.Uk,this.Fr,this);this.ga.unbind(g.Ja,this.Zc,this);this.ga.unbind(g.mO,this.g7,this);this.ga.unbind(g.kG,
this.k7,this);this.ga.unbind(g.nO,this.h7,this);this.ga.unbind(g.at,this.Wo,this);this.ga.unbind(g.bt,this.zr,this);this.ga.unbind(g.aO,this.B6,this);this.oa.unbind(e.pfa,this.Zc,this);this.oa.unbind(e.gh,this.xl,this);this.El.unbind(i.Ja,this.Zc,this);this.El.unbind(i.hO,this.Z6,this);this.Rm.unbind(p.hh,this.GC,this);this.C=this.g=this.Rm=this.El=this.ga=this.oa=this.fe=this.de=r};l.prototype.NJ=function(){if(this.$J){this.tea(this.$J);this.$J=r}};l.prototype.tea=function(a){this.g.set("visible",
n);if(this.C.pr)this.de.gda(a);else{this.de.stop();this.oa.stop();this.ga.hide();this.$J=a}};l.prototype.Xp=function(){this.de.stop();this.oa.stop();this.ga.hide()};l.prototype.dh=function(a){this.oa.dh(a)};l.prototype.$p=function(a){if(!this.Z3){this.oa.$p(a);this.El.$p(a);this.Rm.$p(a)}};l.prototype.Ij=function(a,b,c,d){this.oa.Ij(a,b,c,d);this.El.Ij(a,b,c,d);this.Rm.Ij(a,b,c,d)};l.prototype.j7=function(a){var b=a.data.level,a=(a.data.percent+100*b.getIndex())/b.Lba();this.trigger(new d(l.sm,{percent:a}))};
l.prototype.i7=function(a){this.g.set("visible",n);a=a.data.level;this.oa.stop();this.ga.TE(a)};l.prototype.rC=function(){this.trigger(new d(l.$s))};l.prototype.Zc=function(){this.fe.La()};l.prototype.Er=function(a){this.oa.Sp(a.data.frameTime)};l.prototype.Fr=function(a){a=a.data.frameTime;this.ga.cc(a);this.oa.cc(a);this.El.cc(a)};l.prototype.g7=function(a){a=a.data.level;this.El.TE(a);this.Rm.TE(a)};l.prototype.k7=function(a){a=a.data.level;this.El.JY(a);this.Rm.JY(a)};l.prototype.h7=function(a){a=
a.data.level;a.mF()&&this.oa.start(a)};l.prototype.B6=function(){this.g.set("visible",y)};l.prototype.Z6=function(a){a=a.data.inFOV;this.oa.IF(a);this.Rm.IF(a)};l.prototype.zr=function(a){this.trigger(new d(l.bt,{map:a.data.map}))};l.prototype.Wo=function(a){this.trigger(new d(l.at,{map:a.data.map}))};l.prototype.xl=function(a){this.trigger(new d(l.gh,a.data))};l.prototype.GC=function(a){this.trigger(new d(l.hh,{yawDelta:a.data.yawDelta}))};l.gh="movementChange";l.$s="loadingEnd";l.sm="loadingProgress";
l.bt="mapShow";l.at="mapHide";l.hh="requestYawChange";return l});
define("fN",["require","jquery.mod","r"],function(a){function b(a,b){this.Y=a;this.Q=b;this.SB=0;this.Xm=this.Wm=0.5;this.he=0;this.zb=1;this.vp=this.Oo=this.ha=this.X=0;this.pc=1;this.bT=this.eT=n;this.J=c("<canvas/>");this.v=this.J.get(0);this.ka=this.v.getContext("2d")}var c=a("jquery.mod"),a=a("r");b.prototype.getItem=Q("Y");b.prototype.kz=function(a){return this.Y==a?this:r};b.prototype.Ck=function(){this.Q&&this.Q.TX(this)};b.prototype.xd=function(a){this.Jqa(a)};b.prototype.M9=function(a){this.SB!=
a&&(this.SB=a,this.Q&&this.Q.TM())};b.prototype.Jqa=function(a){this.zb!=a&&(this.zb=a,this.SM())};b.prototype.UK=function(a){this.he!=a&&(this.he=a,this.SM())};b.prototype.AD=function(a,b){if(this.X!=a||this.ha!=b)this.X=a,this.ha=b,this.PM()};b.prototype.mi=function(a,b){if(this.Oo!=a||this.vp!=b)this.Oo=a,this.vp=b,this.SM()};b.prototype.SM=function(){this.Q&&this.Q.QM()};b.prototype.Dc=function(){this.eT=n};b.prototype.ja=function(){this.eT&&(this.eT=y,this.Ne())};b.prototype.Ne=C();b.prototype.PM=
function(){this.bT=n;this.SM()};b.prototype.CN=function(){if(this.bT){this.bT=y;if(this.v.width!=this.X||this.v.height!=this.ha)this.v.width=Math.round(this.X),this.v.height=Math.round(this.ha);this.ka.clearRect(0,0,this.v.width,this.v.height);this.ug()}};b.prototype.ug=C();b.prototype.Bua=function(a){if(0<this.zb&&1<=this.X&&1<=this.ha){a.save();var b=Math.round(this.Oo),c=Math.round(this.vp),g=Math.round(this.X*this.Wm),k=Math.round(this.ha*this.Xm);a.scale(this.pc,this.pc);a.translate(b+g,c+k);
a.rotate(this.he*Math.PI/180);a.globalAlpha=this.zb;a.drawImage(this.v,-g,-k);a.restore()}};b.a0=window.devicePixelRatio||1;b.bh=b.a0;b.Ifa=a.Zd()==a.Qj?16E6:256E6;return b});
define("jP",["require","do","fg","fN"],function(a){var b=a("do"),c=a("fg"),d=a("fN"),a=c.extend(d,function(a,b){d.call(this,a,b);this.xb=[];this.WL=r;this.Ap=n});a.prototype.aba=function(a){(a=this.NQ(a))||h("Container renderer can't create child renderer for an item");this.xb.push(a);this.TM();this.QM()};a.prototype.NQ=C();a.prototype.Lda=function(a){if(a=this.un(a))this.xb=b.without(this.xb,a),this.TM(),this.QM()};a.prototype.kz=function(a){for(var b=d.prototype.kz.call(this,a),c=0;c<this.xb.length&&
!b;c++)b=this.xb[c].kz(a);return b};a.prototype.un=function(a){for(var b=r,c=0;c<this.xb.length&&!b;c++)this.xb[c].getItem()==a&&(b=this.xb[c]);for(c=0;c<this.xb.length&&!b;c++)this.xb[c].getItem().Rva(a)&&(b=this.xb[c]);return b};a.prototype.TX=function(a){this.xb=b.without(this.xb,a);this.xb.push(a);this.TM();this.QM()};a.prototype.TM=function(){this.Ap=n;this.Dc()};a.prototype.QM=function(){this.PM()};a.prototype.ja=function(){d.prototype.ja.call(this);for(var a=0;a<this.xb.length;a++)this.xb[a].ja()};
a.prototype.Ne=function(){if(this.Ap){this.Ap=y;for(var a=[],b=0;b<this.xb.length;b++){var c=this.xb[b];a.push({l:c.SB,z:b,r:c})}a.sort(function(a,b){return a.l==b.l?a.z-b.z:a.l-b.l});this.WL=[];for(b=0;b<a.length;b++)this.WL.push(a[b].r);this.PM()}d.prototype.Ne.call(this)};a.prototype.CN=function(){for(var a=0;a<this.xb.length;a++)this.xb[a].CN();d.prototype.CN.call(this)};a.prototype.ug=function(){for(var a=0;a<this.WL.length;a++)this.WL[a].Bua(this.ka);d.prototype.ug.call(this)};return a});
define("H",["require","fg","fN"],function(a){var b=a("fg"),c=a("fN"),a=b.extend(c,function(a,b){c.call(this,a,b)});a.prototype.rN=C();return a});
define("jp",["require","fg","H"],function(a){var b=a("fg"),c=a("H"),a=b.extend(c,function(a,b){c.call(this,a,b);this.ZJ=this.Q.getItem().ad();this.YJ=this.Q.getItem().Od();this.pc=2;this.xx=0;this.ba=0.5*Math.PI;this.cT=this.dT=n;this.Yh=1;this.KI=n;this.M9(1)});a.prototype.rN=function(a,b){this.Yh!=b&&(this.Yh=b,this.KI=n,this.Dc())};a.prototype.Yxa=function(a,b){this.ba!=b&&(this.ba=b,this.dT=n,this.Dc());this.xx!=a&&(this.xx=a,this.cT=n,this.Dc())};a.prototype.Ne=function(){this.dT&&(this.dT=y,
this.PM());if(this.KI||this.cT){this.cT=this.KI=y;this.pc=Math.max(1,Math.ceil(Math.sqrt(this.ZJ*this.ZJ+this.YJ*this.YJ))/4096);var a=this.Yh/this.pc,b=this.Y.getX()*a,e=this.Y.getY()*a,g=a*this.YJ,a=Math.max(b,a*this.ZJ-b),g=Math.max(e,g-e),g=2*Math.ceil(Math.sqrt(a*a+g*g)),k=this.xx*Math.PI/180,a=Math.cos(k),k=Math.sin(k),b=b-this.Wm*g-(0.5-this.Wm)*g*a+(0.5-this.Xm)*g*k,e=e-this.Xm*g-(0.5-this.Xm)*g*a-(0.5-this.Wm)*g*k;this.KI=y;this.mi(b,e);this.AD(g,g);this.UK(this.xx)}c.prototype.Ne.call(this)};
a.prototype.ug=function(){var a=this.Y.uma,b=this.Y.Coa;if(0<b||0<a){var e=this.Yh*this.ZJ,g=this.Yh*this.YJ,e=Math.ceil(Math.sqrt(e*e+g*g))*this.Y.Tv()/this.pc,g=Math.round(0.5*this.X),k=Math.round(0.5*this.ha),i=this.ba*Math.PI/180,p=0.5*-i,i=p+i;0<b&&(this.ka.fillStyle=this.Y.Boa,this.ka.globalAlpha=b,this.ka.rect(0,0,this.X,this.ha),this.ka.fill(),this.ka.globalCompositeOperation="destination-out",this.ka.fillStyle="#FFFFFF",this.ka.globalAlpha=1,this.ka.beginPath(),this.ka.moveTo(g,k),this.ka.arc(g,
k,e,p,i,y),this.ka.lineTo(g,k),this.ka.closePath(),this.ka.fill(),this.ka.globalCompositeOperation="source-over");0<a&&(this.ka.fillStyle=this.Y.tma,this.ka.globalAlpha=a,this.ka.beginPath(),this.ka.moveTo(g,k),this.ka.arc(g,k,e,p,i,y),this.ka.lineTo(g,k),this.ka.closePath(),this.ka.fill())}c.prototype.ug.call(this)};return a});
define("i","require,fg,fN,H,iG,jJ".split(","),function(a){var b=a("fg"),c=a("fN"),d=a("H"),f=a("iG"),e=a("jJ"),a=b.extend(d,function(a,b){d.call(this,a,b);this.M9(this.Y.o9?0:2);this.yb=f.ve(this.Y.Bj());this.LK=new e(this.yb,this.yb.width,this.yb.height);this.LK.Qs(this.Y.Ed);this.LK.Sz(this.Y.pi);this.LK.Oz(this.Y.Vh);this.XB=0;this.Yh=1;this.IT=n});a.prototype.rN=function(a,b){if(this.XB!=a||this.Yh!=b){this.XB=a;this.Yh=b;this.IT=n;this.Dc()}};a.prototype.Ne=function(){if(this.IT){this.IT=y;var a=
this.Y.getX(),b=this.Y.getY(),e=this.Y.ad(),f=this.Y.Od(),j=this.Y.Bu,l=this.Y.Cu;if(this.Y.o9){this.UK(0);this.mi((a-j)*this.Yh,(b-l)*this.Yh);this.AD(e*this.Yh,f*this.Yh)}else{var e=e*c.bh,f=f*c.bh,j=j*c.bh,l=l*c.bh,q=Math.cos(-this.XB*Math.PI/180),o=Math.sin(-this.XB*Math.PI/180),a=a*this.Yh-this.Wm*e-(j-this.Wm*e)*q+(l-this.Xm*f)*o,b=b*this.Yh-this.Xm*f-(l-this.Xm*f)*q-(j-this.Wm*e)*o;this.UK(-this.XB);this.mi(a,b);this.AD(e,f)}}d.prototype.Ne.call(this)};a.prototype.ug=function(){this.LK.iz(this.ka,
this.v.width,this.v.height);d.prototype.ug.call(this)};return a});
define("gq","require,fg,jn,iG,cD,hC,jp,i,jP".split(","),function(a){var b=a("fg"),c=a("jn"),d=a("iG"),f=a("cD"),e=a("hC"),g=a("jp"),k=a("i"),i=a("jP"),a=b.extend(i,function(a,b){i.call(this,a,b,a.nk);this.Na=this.Y.ad();this.Ya=this.Y.Od();this.Ed=this.Y.Ed;this.aI=this.Y.PR;this.fc=this.bc=100;this.FQ=n;this.fa=this.da=0.5;this.Jb=0;this.ta=1;this.cD=n;this.sd=1;this.yb=d.ve(this.Y.Bj())});a.prototype.NQ=function(a){a.Qd()!=f.b1&&h("Invalid item type");switch(a.Eoa){case e.Z0:a=new g(a,this);break;
case e.$0:a=new k(a,this);break;default:a=r}a&&a.rN(this.Jb,this.sd*this.ta);return a};a.prototype.getX=Q("da");a.prototype.getY=Q("fa");a.prototype.lz=Q("Jb");a.prototype.hm=Q("ta");a.prototype.Aa=function(){return Math.round(this.Na*this.ta*this.sd)};a.prototype.eb=function(){return Math.round(this.Ya*this.ta*this.sd)};a.prototype.mw=function(a,b){if(this.bc!=a||this.fc!=b){this.bc=a;this.fc=b;this.FQ=n;this.Dc()}};a.prototype.Ia=function(a,b,c,d){if(this.da!=a||this.fa!=b||this.Jb!=c||this.ta!=
d){this.da=a;this.fa=b;this.Jb=c;this.ta=d;this.cD=n;this.Dc()}};a.prototype.Ne=function(){if(this.FQ){this.FQ=y;switch(this.Ed){case c.NONE:this.sd=1;break;case c.Wk:this.sd=this.bc/this.Na;break;case c.ih:this.sd=this.fc/this.Ya;break;case c.tm:this.sd=this.Na*this.fc>this.Ya*this.bc?this.fc/this.Ya:this.bc/this.Na;break;default:this.sd=this.Na*this.fc>this.Ya*this.bc?this.bc/this.Na:this.fc/this.Ya}this.cD=n}if(this.cD){this.cD=y;var a=this.Aa(),b=this.eb(),d=Math.cos(this.Jb*Math.PI/180),e=Math.sin(this.Jb*
Math.PI/180);this.mi(this.bc*0.5-this.Wm*a+(this.Wm-this.da)*d*a-(this.Xm-this.fa)*e*b,this.fc*0.5-this.Xm*b+(this.Xm-this.fa)*d*b+(this.Wm-this.da)*e*a);this.UK(this.Jb);this.AD(a,b);for(a=0;a<this.xb.length;a++)this.xb[a].rN(this.Jb,this.sd*this.ta)}i.prototype.Ne.call(this)};a.prototype.ug=function(){var a=Math.round(this.X),b=Math.round(this.ha);if(this.aI){this.ka.save();this.ka.translate(a,0);this.ka.scale(-1,1);this.ka.drawImage(this.yb,0,0,a,b);this.ka.restore()}else this.ka.drawImage(this.yb,
0,0,a,b);i.prototype.ug.call(this)};return a});
define("fq","require,do,fg,cD,jP,gq".split(","),function(a){a("do");var b=a("fg"),c=a("cD"),d=a("jP"),f=a("gq"),a=b.extend(d,function(){d.call(this,r,r);this.qQ=n});a.prototype.Cb=Q("J");a.prototype.render=function(){this.ja();this.CN()};a.prototype.rva=function(){for(var a=1,b=0;b<this.xb.length;b++){var c=this.xb[b],c=c.Aa()*c.eb();a<c&&(a=c)}return a};a.prototype.NQ=function(a){a.Qd()!=c.a1&&h("Invalid item type");a=new f(a,this);a.mw(this.X,this.ha);a.Ia(0.5,0.5,0,1);return a};a.prototype.setSize=
function(a,b){this.AD(a,b);this.qQ=n;this.Dc()};a.prototype.Ne=function(){if(this.qQ){this.qQ=y;for(var a=0;a<this.xb.length;a++)this.xb[a].mw(this.X,this.ha)}d.prototype.Ne.call(this)};return a});
define("ib","require,do,fg,ll,ge,iG,fN,fq,bi,R,d".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("ge"),e=a("iG"),g=a("fN"),k=a("fq"),i=a("bi"),p=a("R"),j=a("d"),a=c.extend(j,function(){j.call(this);this.Uc("Renderer");this.set("toolTipDisabled",n);this.set("cursor",p.lq);this.Tq=[];this.mv=[];this.ya="";this.sf=new k;this.Pa().append(this.sf.Cb());this.bind(d.vb,this.jb,this,n);this.bind(d.od,this.th,this,n);this.bind(d.zd,this.qh,this,n);i.bind(d.aa,this.cX,this,n);this.bv=this.pV=
y});a.prototype.In=function(a){e.In(a,f.Sj)};a.prototype.g_=function(a){return e.g_(a)};a.prototype.Ai=function(a){e.Ai(a,f.Sj)};a.prototype.OX=function(a){this.sf.aba(a)};a.prototype.removeItem=function(a){this.sf.Lda(a)};a.prototype.YL=function(a,b){this.sf.un(a).aba(b);this.aX()};a.prototype.qxa=function(a,b){var c=this.sf.un(a);c&&c.Lda(b)};a.prototype.UX=function(a){this.sf.kz(a).Ck()};a.prototype.mm=function(a,b){this.sf.kz(a).xd(b)};a.prototype.JF=function(a,b,c,d,e){this.sf.un(a).Ia(b,c,d,
e);this.aX()};a.prototype.aX=function(){var a=this.sf.rva();if(a){g.bh=Math.min(g.a0,g.bh*Math.sqrt(g.Ifa/a));this.uaa()}};a.prototype.kya=function(a,b,c){this.sf.kz(a).Yxa(b,c)};a.prototype.dF=function(a){return this.sf.un(a).getX()};a.prototype.eF=function(a){return this.sf.un(a).getY()};a.prototype.yM=function(a){return this.sf.un(a).lz()};a.prototype.Uba=function(a){return this.sf.un(a).hm()};a.prototype.cF=function(a){return this.sf.un(a).Aa()/g.bh};a.prototype.bF=function(a){return this.sf.un(a).eb()/
g.bh};a.prototype.render=function(){this.bv&&this.sf.render()};a.prototype.gN=function(a){this.Tq.push(a);this.paa()};a.prototype.Fz=function(a){a=b(this.Tq).lastIndexOf(a);a>=0&&this.Tq.splice(a,1);this.paa()};a.prototype.paa=function(){var a;a=this.Tq.length>0?this.Tq[this.Tq.length-1]:p.dd;this.getParent().set("cursor",a)};a.prototype.xH=function(){if(this.Tq.length>0){this.getParent().set("cursor",p.dd);this.Tq=[]}};a.prototype.jxa=function(a){this.mv.push(a);this.pE()};a.prototype.cxa=function(a){a=
b(this.mv).lastIndexOf(a);a>=0&&this.mv.splice(a,1);this.pE()};a.prototype.pE=function(){var a=this.mv.length==0?"":this.mv[this.mv.length-1]||"";if(this.ya!=a){this.ya=a;this.getParent().set("toolTip",this.ya)}};a.prototype.Hia=function(){this.ya&&this.getParent().set("toolTip","");this.ya="";this.mv=[]};a.prototype.nj=function(){this.Hia();this.xH();j.prototype.nj.call(this)};a.prototype.jb=function(){this.uaa();this.aX()};a.prototype.uaa=function(){this.sf.Cb().css({transform:g.bh!=1?"scale("+
(1/g.bh).toFixed(3)+")":"none","transform-origin":"0% 0%"});this.sf.setSize(this.Aa()*g.bh,this.eb()*g.bh);this.render()};a.prototype.th=function(){this.pV=n;this.cX()};a.prototype.qh=function(){this.pV=y;this.cX()};a.prototype.cX=function(){var a=this.pV&&!i.isPresenting();if(this.bv!=a)(this.bv=a)&&this.render()};return a});
define("I","do,fg,jd,bZ,dW,jT,cu,dk,jm,hr,ib,ll,dm,fm".split(","),function(a,b,c,d,f,e,g,k,i,p,j,l,q,o){var t=b.extend(g,function(){g.call(this,"map");this.qJ=this.HT=this.yf=y;this.hj=this.Hb=this.o=this.g=r;this.Eq={};for(var a in t.bo)this.Eq[a]=this.aja(a);this.Bc=b.jm(this.Ne,this)});f.A("MapPlayer",t).B("Object").K({map:"Map",viewerArea:"ViewerArea",movementMode:"enum[constrained, free_drag, free_drag_and_rotation, sync_with_field_of_view]",buttonZoomIn:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonZoomOut:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRotateClockwise:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRotateCounterClockwise:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]"}).Vb([l.zG]).Ag({stop:function(){this.Ab(p.oe)},rotateClockwise:function(){this.Ab(p.XO)},rotateCounterClockwise:function(){this.Ab(p.YO)},zoomIn:function(){this.Ab(p.$n)},zoomOut:function(){this.Ab(p.ao)}});t.prototype.set=function(a,
b){if(this.get(a)!=b){switch(a){case "map":this.HT=n;this.Bc();break;case "viewerArea":this.yf=n;this.Bc();break;case "panoramaMapLocation":this.BU=n;this.Bc();break;case "movementMode":this.qJ=n;this.Bc()}g.prototype.set.call(this,a,b)}};t.prototype.aja=function(a){var b=t.bo[a],a=new e(this,a,q.Wc);a.bind(l.Eb,function(){this.Ab(b.movement)},this);b.stopOnRelease&&a.bind(l.ec,function(){this.Ab(p.oe)},this);return a};t.prototype.Qta=function(a){this.hj=r;this.set("map",a.get("map"));this.set("panoramaMapLocation",
a)};t.prototype.uxa=function(a){if(this.get("panoramaMapLocation")==a){this.set("panoramaMapLocation",r);this.hj=r}};t.prototype.Ij=function(a,b,c,d){this.o&&this.o.Ij(a,b,c,d);this.hj={yaw:b,pitch:c,hfov:d}};t.prototype.Ne=function(){if(this.yf){this.yf=y;this.vo();this.get("viewerArea")&&this.ro();this.CD(this.get("viewerArea"))}if(this.o){if(this.HT){this.HT=y;var a=this.get("map");if(a){this.oD();this.o.tea(a)}else this.o.Xp();this.BU=this.qJ=n}if(this.BU){this.BU=y;a=this.get("panoramaMapLocation");
this.o.$p(a);a&&this.hj&&this.o.Ij(a,this.hj.yaw,this.hj.pitch,this.hj.hfov)}if(this.qJ){this.qJ=y;this.o.om(this.get("movementMode"))}}};t.prototype.My=function(){this.set("map",r)};t.prototype.ro=function(){var a=this.get("viewerArea");this.g=new j;this.g.M({left:0,top:0,bottom:0,right:0});a.la(this.g);this.o=new i(a,this.g);this.o.bind(i.gh,this.xl,this);this.o.bind(i.sm,this.Vo,this);this.o.bind(i.$s,this.ey,this);this.o.bind(i.bt,this.zr,this);this.o.bind(i.at,this.Wo,this);this.o.bind(i.hh,
this.GC,this,n)};t.prototype.vo=function(){if(this.g){this.o.unbind(i.gh,this.xl,this);this.o.unbind(i.sm,this.Vo,this);this.o.unbind(i.$s,this.ey,this);this.o.unbind(i.bt,this.zr,this);this.o.unbind(i.at,this.Wo,this);this.o.unbind(i.hh,this.GC,this);this.o.clear();this.g.getParent().removeChild(this.g);this.g=r}};t.prototype.zr=function(a){this.dC(a.data.map)};t.prototype.Wo=function(a){this.cC(a.data.map)};t.prototype.xl=function(a){for(var b in t.bo)this.Eq[b].set("state",a.data[t.bo[b].pressedOn]?
o.Ca:o.dd);this.trigger(new d(l.zG,a.data))};t.prototype.GC=function(a){this.trigger(new d(t.hh,{yawDelta:a.data.yawDelta}))};t.prototype.Vo=function(a){this.g.getParent().M({progressPercent:a.data.percent,progressVisible:n})};t.prototype.ey=function(){this.g.getParent().set("progressVisible",y)};t.prototype.Ab=function(a){this.o&&this.o.dh(a)};t.bo={buttonRotateClockwise:{movement:p.XO,pressedOn:"rotatingClockwise",stopOnRelease:n},buttonRotateCounterClockwise:{movement:p.YO,pressedOn:"rotatingCounterClockwise",
stopOnRelease:n},buttonZoomIn:{movement:p.$n,pressedOn:"zoomingIn",stopOnRelease:n},buttonZoomOut:{movement:p.ao,pressedOn:"zoomingOut",stopOnRelease:n}};t.hh="requestYawChange";return t});
define("dl",["fg","jd","ll","bZ","dW"],function(a,b,c,d,f){a=a.extend(b,function(){b.call(this);this.pg=y});f.A("PlayListItem",a).B("Object").K({media:"Media",label:"string"}).Vb([c.Ji,c.Pk,c.oe,c.Ba]);a.prototype.start=function(){this.trigger(new d(c.Ji))};a.prototype.stop=function(){this.WF()};a.prototype.WF=function(){this.trigger(new d(c.oe))};a.prototype.Ev=function(){this.pg=n;this.trigger(new d(c.Pk))};a.prototype.end=function(){this.pg=y;this.trigger(new d(c.Ba))};return a});
define("lG",["fg","dW","cu","dl"],function(a,b,c,d){a=a.extend(d,function(){d.call(this)});b.A("MapPlayListItem",a).B("PlayListItem").K({media:"Map",player:"MapPlayer"});a.prototype.start=function(){d.prototype.start.call(this);var a=this.get("player");a&&(a.bind(c.le,this.zr,this),a.set("map",this.get("media")))};a.prototype.stop=function(){var a=this.get("player");a&&a.get("map")==this.get("media")&&a.set("map",r);d.prototype.stop.call(this)};a.prototype.zr=function(){this.get("player").unbind(c.le,
this.zr,this);this.get("player").bind(c.dg,this.Wo,this);this.Ev();this.get("player").get("map")!=this.get("media")&&this.Wo()};a.prototype.Wo=function(){this.get("player").unbind(c.dg,this.Wo,this);this.end()};return a});define("bE",["require","fg","dW","du"],function(a){var b=a("fg"),c=a("dW"),d=a("du"),a=b.extend(d,function(){d.call(this)});c.A("Model3D",a).B("Media").K({model:"Model3DResource",autoplay:"bool"});a.prototype.En=function(){return[]};return a});
define("dJ",["require","fg","V","bZ","eO"],function(a){var b=a("fg"),c=a("V"),d=a("bZ"),f=a("eO"),e=b.extend(f,function(a,b){f.call(this);this.C=a;this.g=b;this.Pu=[];this.S=e.lf;this.jg=this.lg=r;this.ue=this.Me=m});e.prototype.display=function(a){this.xQ();if(this.jg!=a||this.S!=e.lf)this.Pu.push(a),this.z7()};e.prototype.hide=function(){this.xQ();this.Pu.push(r);this.z7()};e.prototype.clear=function(){this.S=e.lf;this.xQ();this.ppa();this.U8();this.g=r};e.prototype.wi=function(a){if(this.S!=e.lf&&
(this.S==e.Uj||this.S==e.vq||this.S==e.yt))this.ue+=a,a=Math.min(1,this.ue/this.Me),this.S==e.Uj?this.lg.set("opacity",a):this.S==e.yt?(this.lg.set("opacity",Math.min(1,2*a)),this.jg.set("opacity",Math.min(1,2*(1-a)))):this.jg.set("opacity",1-a),this.ue<this.Me?this.ea():this.Wq()};e.prototype.z7=function(){0<this.Pu.length&&this.S==e.lf&&this.el()};e.prototype.el=function(){this.jg&&this.trigger(new d(e.ct,{model:this.jg}));"fade_out_fade_in"==this.C.get("transitionMode","blending")&&this.jg?this.Aq():
(this.lg=this.Pu.shift())?this.jg?this.$P():this.EA():this.jg&&this.Aq()};e.prototype.EA=function(){this.U1();this.ue=0;this.Me=this.C.get("transitionDuration");this.S=e.Uj;this.ea()};e.prototype.$P=function(){this.U1();this.ue=0;this.Me=2*this.C.get("transitionDuration");this.S=e.yt;this.ea()};e.prototype.Aq=function(){this.lg=r;this.ue=0;this.Me=this.C.get("transitionDuration");this.S=e.vq;this.ea()};e.prototype.Wq=function(){this.U8();this.jg=this.lg;this.lg=r;this.S=e.lf;this.jg?this.trigger(new d(e.dt,
{model:this.jg})):0==this.Pu.length&&this.trigger(new d(e.H_));0!=this.Pu.length&&this.el()};e.prototype.ea=function(){c.La(this.wi,this)};e.prototype.xQ=function(){this.Pu=[]};e.prototype.U1=function(){this.lg&&(this.lg.set("opacity",0),this.lg.set("zIndex",1),this.jg&&this.jg.set("zIndex",0),this.lg.set("currentTime",0),this.g.Pta(this.lg),this.trigger(new d(e.pO,{model:this.lg})))};e.prototype.U8=function(){this.jg&&(this.g.Oda(this.jg),this.trigger(new d(e.mG,{model:this.jg})),this.jg=r)};e.prototype.ppa=
function(){this.lg&&(this.g.Oda(this.lg),this.trigger(new d(e.mG,{model:this.lg})),this.lg=r)};e.lf="stopped";e.Uj="blending";e.yt="double blending";e.vq="disolving";e.Ja="request frame";e.pO="model added";e.mG="model removed";e.dt="model show";e.ct="model hide";e.H_="all pending models hidden";return e});
define("hv","require,fg,ll,bZ,eO,fu".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("fu"),g=b.extend(f,function(){f.call(this);this.Td=r;this.Vt=e.I});g.prototype.start=function(a){this.end();this.uqa(a)};g.prototype.end=function(){this.stop();this.sQ()};g.prototype.clear=function(){this.sQ()};g.prototype.play=function(){this.Td&&this.Td.set("state",e.O)};g.prototype.pause=function(){this.Td&&this.Td.set("state",e.uc)};g.prototype.stop=function(){this.Td&&this.Td.set("state",
e.I)};g.prototype.setTime=function(a){this.Td&&this.Td.set("currentTime",a)};g.prototype.getTime=function(){if(this.Td)return this.Td.get("currentTime")};g.prototype.uqa=function(a){this.sQ();this.Td=a;this.Td.bind(c.D("state"),this.pp,this,n);this.Td.bind(c.D("currentTime"),this.yu,this,n);this.Td.bind(c.Ba,this.h6,this,n)};g.prototype.sQ=function(){if(this.Td){this.Td.unbind(c.D("state"),this.pp,this);this.Td.unbind(c.D("currentTime"),this.yu,this);this.Td.unbind(c.Ba,this.h6,this);this.Td=r}};
g.prototype.yu=function(){this.trigger(new d(g.et,{model:this.Td,time:this.Td.get("currentTime"),duration:this.Td.get("duration")}))};g.prototype.h6=function(){this.trigger(new d(g.fA,{model:this.Td}))};g.prototype.pp=function(){var a=this.Td.get("state");if(this.Vt!=a){this.Vt=a;this.trigger(new d(g.sb,{state:this.Vt}))}};g.sb="playback state change";g.fA="model end";g.et="model time change";return g});
define("de","require,fg,fu,bZ,eO,dJ,hv".split(","),function(a){var b=a("fg"),c=a("fu"),d=a("bZ"),f=a("eO"),e=a("dJ"),g=a("hv"),k=b.extend(f,function(a,b){f.call(this);this.C=a;this.g=b;this.g.set("visible",y);this.ga=new e(this.C,this.g);this.ca=new g(this.g);this.ga.bind(e.ct,this.Ar,this,n);this.ga.bind(e.dt,this.Xo,this,n);this.ga.bind(e.pO,this.s7,this,n);this.ga.bind(e.mG,this.u7,this,n);this.ga.bind(e.H_,this.pna,this,n);this.ca.bind(g.sb,this.gd,this,n);this.ca.bind(g.fA,this.t7,this,n);this.ca.bind(g.et,
this.uC,this,n)});k.prototype.clear=function(){this.ga.clear();this.ca.clear();this.ga.unbind(e.ct,this.Ar,this);this.ga.unbind(e.dt,this.Xo,this);this.ga.unbind(e.pO,this.s7,this);this.ga.unbind(e.mG,this.u7,this);this.ca.unbind(g.sb,this.gd,this);this.ca.unbind(g.fA,this.t7,this);this.ca.unbind(g.et,this.uC,this);this.C=this.g=this.ca=this.ga=r};k.prototype.yya=function(a){this.g.set("visible",n);this.ga.display(a)};k.prototype.Xp=function(){this.ga.hide();this.ca.end()};k.prototype.play=function(){this.ca.play()};
k.prototype.stop=function(){this.ca.stop()};k.prototype.pause=function(){this.ca.pause()};k.prototype.s7=function(a){this.ca.start(a.data.model)};k.prototype.u7=C();k.prototype.Xo=function(a){a=a.data.model;a.get("autoplay")&&a.get("state")!=c.O&&a.set("state",c.O);this.trigger(new d(k.dt,{model:a}))};k.prototype.Ar=function(a){this.trigger(new d(k.ct,{model:a.data.model}))};k.prototype.pna=function(){this.g.set("visible",y)};k.prototype.t7=function(a){this.trigger(new d(k.fA,{model:a.data.model}))};
k.prototype.uC=function(a){this.trigger(new d(k.et,{model:a.data.model,time:a.data.time,duration:a.data.duration}))};k.prototype.gd=function(a){this.trigger(new d(k.sb,{state:a.data.state}))};k.dt="modelShow";k.ct="modelHide";k.fA="modelEnd";k.et="modelTimeChange";k.sb="playbackStateChange";return k});
define("gQ","require,fg,ll,R,d,dc".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("R"),f=a("d"),e=a("dc"),a=b.extend(f,function(a,b,i){f.call(this);this.ib=a;this.C=b;this.i6=i;this.set("toolTipDisabled",n);this.set("cursor",d.lq);this.bind(c.vb,this.jb,this,n);this.lj=new e.CG;this.lj.pN(e.CG.wG);this.lj.xe(this.cp=y);[this.lj.Cb()].forEach(function(a,b){this.Pa().append(a);a.css({position:"absolute",left:0,top:0,right:0,bottom:0,overflow:"hidden","z-index":b})}.bind(this))});a.prototype.pw=
function(a,b){if(this.cp!=a){this.cp=a;this.lj.CZ(b);this.lj.xe(a)}};a.prototype.jb=function(){this.ID=n;this.lj.setSize(this.Aa(),this.eb())};return a});
define("iF","require,fg,R,c,kS,eo,eP,gQ".split(","),function(a){var b=a("fg"),c=a("R"),d=a("c"),f=a("kS"),e=a("eo"),g=a("eP"),k=a("gQ"),a=b.extend(f,function(a,b,e){f.call(this);this.ib=a;this.C=b;this.i6=e;this.Uc("Renderer");this.set("toolTipDisabled",n);this.set("cursor",c.lq);this.set("layout",d.bG);this.Ga=this.cf=r;this.lJ=[];this.iC=[];this.Xl()});a.prototype.Fa=function(){f.prototype.Fa.call(this);if(this.cf==r){this.cf=new g(this.ib);this.cf.M({left:0,top:0,right:0,bottom:0});this.la(this.cf);
this.lJ.forEach(function(a){this.WA(a)}.bind(this))}if(this.Ga==r){this.Ga=new k(this.ib,this.C,this.i6);this.Ga.M({left:0,top:0,right:0,bottom:0});this.la(this.Ga);this.Xl()}};a.prototype.Pta=function(a){this.lJ.push(a);this.cf&&this.WA(a)};a.prototype.WA=function(a){var b=this.cf.Gv("Model");b.je(e.pq).kda=a.get("model");b.je(e.Kh).UE=this.cf.qj;this.iC.push(b);this.Xl()};a.prototype.Oda=function(a){a=this.lJ.indexOf(a);if(!(a<0)){this.lJ.splice(a,1);this.cf&&this.rR(this.iC[a])}};a.prototype.rR=
function(a){var b=this.iC.indexOf(a);if(!(b<0)){this.iC.splice(b,1);this.cf.jM(a);this.Xl()}};a.prototype.pw=function(a){this.cp=a;this.Xl()};a.prototype.Xl=function(){this.Ga&&this.Ga.pw(this.cp&&this.iC.length>0)};return a});
define("he","require,fg,ll,bZ,dW,cu,dk,fu,de,iF".split(","),function(a){var b=a("fg"),c=a("ll");a("bZ");var d=a("dW"),f=a("cu"),e=a("dk"),g=a("fu"),k=a("de"),i=a("iF"),a=b.extend(e,function(){e.call(this,"model");this.set("clickAction","none");this.set("displayPlayOverlay",y);this.ll=this.kv=this.yu=this.yf=y;this.o=this.g=r;this.pb=this.rc=0;this.Bc=b.jm(this.Ne,this)});d.A("Model3DPlayer",a).B("Object").K({buttonPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlay:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonPlayPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonStop:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRestart:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",clickAction:"enum[play_pause, none]",displayPlayOverlay:"bool",displayPlaybackBar:"bool",currentTime:"number",state:"enum[stopped, playing, paused]",model:"Model",viewerArea:"ViewerArea"}).Ag({seek:function(a){this.bs(a)},play:function(){this.Ku()},pause:function(){this.Ju()},
stop:function(){this.Hr()},restart:function(){this.Gr()}}).Vb([f.le,f.dg,c.xc]);a.prototype.set=function(a,b){if(this.get(a)!=b){switch(a){case "startTime":this.kv=n;this.Bc();break;case "model":this.yu=n;this.Bc();break;case "viewerArea":this.yf=n;this.Bc();break;case "displayPlaybackBar":this.ll=n;this.Bc()}e.prototype.set.call(this,a,b)}};a.prototype.get=function(a,b){switch(a){case "currentTime":return this.o&&this.o.getTime()||0}return e.prototype.get.call(this,a,b)};a.prototype.Ne=function(){if(this.yf){this.yf=
y;this.vo();this.get("viewerArea")&&this.ro();this.CD(this.get("viewerArea"));this.yu=n}var a=y;if(this.g&&(this.yu||this.kv)){var b=this.get("model");this.get("startTime");if(b&&!this.g.Ra()){this.Bc();return}this.kv=this.yu=y;this.pb=this.rc=0;a=n;if(b){this.oD();this.o.yya(b)}else this.o.Xp()}if(this.ll){this.ll=y;a=n}a&&this.ms()};a.prototype.My=function(){this.set("model",r)};a.prototype.ro=function(){var a=this.get("application"),b=this.get("viewerArea");this.g=new i(a,b,this);this.g.M({left:0,
top:0,bottom:0,right:0});b.la(this.g);b.bind(c.U,this.OC,this,n);this.o=new k(b,this.g);this.o.bind(k.dt,this.Xo,this);this.o.bind(k.ct,this.Ar,this);this.o.bind(k.et,this.uC,this,n);this.o.bind(k.sb,this.gd,this);this.ds(n)};a.prototype.vo=function(){if(this.g){this.o.unbind(k.dt,this.Xo,this);this.o.unbind(k.ct,this.Ar,this);this.o.unbind(k.et,this.uC,this);this.o.unbind(k.sb,this.gd,this);this.o.clear();var a=this.g.getParent();a.removeChild(this.g);a.unbind(c.U,this.OC,this,n);this.g=r;this.ds(y)}};
a.prototype.gd=function(a){a=a.data.state;this.g&&this.g.pw(this.get("displayPlayOverlay")&&a!=g.O,this.rc<0.5);this.Xb(a)};a.prototype.Xo=function(a){var b=this.get("viewerArea");(this.Nb=b&&b.Nb)&&this.Nb.bind(c.U,this.PC,this,n);this.Ru=y;this.dC(a.data.model)};a.prototype.Ar=function(a){this.Nb&&this.Nb.unbind(c.U,this.PC,this,n);this.Nb=r;this.cC(a.data.model)};a.prototype.uC=function(a){this.rc=a.data.time;this.pb=a.data.duration;this.ms()};a.prototype.OC=function(){if(this.Ru)this.Ru=y;else switch(this.get("clickAction")){case "play_pause":this.get("state")!=
g.O?this.o.play():this.o.pause()}};a.prototype.PC=function(){this.Ru=n};a.prototype.$C=function(a){this.bs(a.data.position)};a.prototype.Pg=function(){this.o.play()};a.prototype.sj=function(){this.o.stop()};a.prototype.pk=function(){this.o.pause()};a.prototype.bs=function(a){this.o&&this.o.setTime(a)};a.prototype.ms=function(){if(this.g){var a=this.g.getParent();this.pb>0&&this.get("displayPlaybackBar")?a.M({playbackBarPosition:this.rc,playbackBarDuration:this.pb,playbackBarVisible:n}):a.set("playbackBarVisible",
y)}};return a});
define("lA",["require","fg","dW","cu","dl"],function(a){var b=a("fg"),c=a("dW"),d=a("cu"),f=a("dl"),a=b.extend(f,function(){f.call(this)});c.A("Model3DPlayListItem",a).B("PlayListItem").K({media:"Model3D",player:"Model3DPlayer",startTime:"number"});a.prototype.start=function(){f.prototype.start.call(this);var a=this.get("player");a&&(a.bind(d.le,this.Xo,this),a.set("model",this.get("media")),a.set("startTime",this.get("startTime")))};a.prototype.stop=function(){var a=this.get("player");a&&(a.unbind(d.le,
this.Xo,this),a.get("model")==this.get("media")&&a.set("model",r));f.prototype.stop.call(this)};a.prototype.Xo=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(d.le,this.Xo,this),this.get("player").bind(d.dg,this.Ar,this),this.Ev())};a.prototype.Ar=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(d.dg,this.Ar,this),this.end())};return a});
define("hA",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("Model3DResource",b).B("Object").K({url:"string",posterURL:"string"}).fh(["url","posterURL"]);return b});
define("gA",["require","fg","jd","ll","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("distance",2)});a.A("Menu",b).B("MenuItem").K({backgroundColor:"color",rollOverBackgroundColor:"color",selectedBackgroundColor:"color",opacity:"number",rollOverOpacity:"number",fontFamily:"string",fontColor:"color",rollOverFontColor:"color",selectedFontColor:"color",distance:"number"}).Vb([d.wc,d.Mb]).Cf([d.U]);return b});
define("m",["require","fg","jd","ll","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("MenuItem",b).B("Object").K({label:"string",children:"array[MenuItem]"}).Vb([d.wc,d.Mb]).Cf([d.U]);return b});
define("if",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("MovementPhotoCamera",a).B("PhotoCamera").K({duration:"number",easing:"enum[linear, quad_in, quad_out, quad_in_out, cubic_in, cubic_out, cubic_in_out, quart_in, quart_out, quart_in_out, quint_in, quint_out, quint_in_out]",initialPosition:"PhotoCameraPosition",targetPosition:"PhotoCameraPosition"});return a});
define("gd",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("Object",a).K({id:"identifier",data:"*"});return a});define("ce",[],function(){var a={Zs:"drag_acceleration",Tn:"drag_rotation"};a.e0=a.Zs;a.X0=a.Tn;return a});define("lx",["fg","bZ"],function(a,b){return a.extend(b,function(a){b.call(this,a);this.Ez=this.Xz=this.Qp=this.hq=0})});define("kt",["fg","bZ"],function(a,b){return a.extend(b,function(a){b.call(this,a);this.IY=this.Wva=0})});
define("ee","require,fg,do,ll,bZ,eO,ce,lx,kt".split(","),function(a){function b(a,b){return a*b}function c(a){var b=a>0?1:-1;return b*(Math.pow(10,b*a)-1)/9}function d(a,b){return Math.min(Math.max(a/b,-1),1)}var f=a("fg");a("do");var e=a("ll"),g=a("bZ"),k=a("eO"),i=a("ce"),p=a("lx"),j=a("kt"),l=f.extend(k,function(){k.call(this);this.e6=this.f6=1800;this.yx=7;this.gna=this.gsa=0;this.IB=y;this.ki=m;this.zu=i.e0;this.T$=i.X0;this.yx=0;this.IK=m;this.vE=y;this.bx=r;this.ju=3;this.ba=90;this.BR=this.jv=
this.pc=1;this.Nb=this.ua=r;this.ZC=y});l.prototype.Js=function(a){this.f6=a.get("manualRotationSpeed");this.e6=a.get("manualRotationSpeed");this.ju=a.get("manualZoomSpeed");this.BR=a.get("draggingFactor")};l.prototype.Ns=function(a){this.zu=a;this.eX()};l.prototype.tw=function(a){this.T$=a;this.eX()};l.prototype.nw=function(a){this.ba=a;this.jv=this.ba/90};l.prototype.kw=function(a){this.si();if(a){this.ua=a;if(this.Nb=a.kva&&a.Nb){this.Nb.bind(e.Eb,this.s8,this,n);this.Nb.bind(e.ec,this.t8,this,
n)}this.ua.bind(e.Eb,this.mc,this,n);this.ua.bind(e.Nc,this.Lg,this,n);this.ua.bind(e.ec,this.Mg,this,n);this.ua.bind(e.nq,this.Au,this,n);this.ua.Ra().get("settings").get(TDV.PlayerSettings.Vfa)!==y&&this.ua.bind(e.Ew,this.gu,this,n);this.ua.bind(e.sG,this.s4,this,n);this.ua.bind(e.rG,this.q4,this,n);this.eX()}};l.prototype.si=function(){if(this.ua!=r){if(this.Nb){this.Nb.unbind(e.Eb,this.s8,this);this.Nb.unbind(e.ec,this.t8,this);this.Nb=r}this.ua.unbind(e.Eb,this.mc,this);this.ua.unbind(e.Nc,this.Lg,
this);this.ua.unbind(e.ec,this.Mg,this);this.ua.unbind(e.nq,this.Au,this);this.ua.unbind(e.Ew,this.gu,this);this.ua.unbind(e.sG,this.s4,this);this.ua.unbind(e.rG,this.q4,this);this.ua=r;this.XH()}};l.prototype.eX=function(){if(this.ua)if(this.ua.gk){this.IK=this.T$;this.yx=this.gsa}else{this.IK=this.zu;this.yx=this.gna}};l.prototype.s8=function(){this.ZC=n};l.prototype.t8=function(){this.ZC=y};l.prototype.mc=function(a){if(!this.ZC){this.Ara(a);this.hW()}};l.prototype.Lg=function(a){this.ZC||this.Vy(a)};
l.prototype.Mg=function(){if(!this.ZC){this.KR();this.XH()}};l.prototype.Au=function(a){this.mX(a);this.hW(500)};l.prototype.s4=function(){this.hW()};l.prototype.gu=function(a){this.nX(a)};l.prototype.q4=function(){this.XH()};l.prototype.Ara=function(a){this.IB=n;this.ki=a;this.Vy(a)};l.prototype.Vy=function(a){if(this.IB)switch(this.IK){case i.Zs:this.hta(a);break;case i.Tn:this.gta(a)}};l.prototype.hta=function(a){this.Baa(+b(c(d(Math.abs(a.x-this.ki.x)<3?0:a.x-this.ki.x,this.ua.Aa())),this.f6*
this.jv),-b(c(d(Math.abs(a.y-this.ki.y)<3?0:a.y-this.ki.y,this.ua.eb())),this.e6*this.jv))};l.prototype.gta=function(a){this.dX(-b(d(a.x-this.ki.x,this.ua.Aa()),this.ba*this.BR),+b(d(a.y-this.ki.y,this.ua.Aa()),this.ba*this.BR));this.ki=a};l.prototype.KR=function(){if(this.IB){this.IB=y;switch(this.IK){case i.Zs:this.Baa(0,0)}}};l.prototype.Baa=function(a,b){var c=new p(l.Un);c.hq=a;c.Qp=b;this.trigger(c)};l.prototype.dX=function(a,b){var c=new p(l.Un);c.Xz=a;c.Ez=b;this.trigger(c)};l.prototype.nX=
function(a){if(this.pc!=a.scale){this.KR();var b=this.pc;this.pc=a.scale;a=new j(l.Vk);a.IY=this.ba*b/this.pc-this.ba;this.trigger(a)}};l.prototype.mX=function(a){if(a.Dp!=0){this.KR();var b=new j(l.Vk);b.IY=this.ba*-a.Dp*this.ju/100;this.trigger(b)}};l.prototype.hW=function(a){var b=this.bx!=r;this.v$();if(a&&(b||!this.vE)){var c=this;this.bx=setTimeout(function(){c.bx=r;c.XH()},a)}if(!this.vE){this.vE=n;this.trigger(new g(l.Ae))}};l.prototype.XH=function(){this.v$();if(this.vE){this.vE=y;this.trigger(new g(l.ze))}};
l.prototype.v$=function(){if(this.bx!=r){clearTimeout(this.bx);this.bx=r}};l.Un="rotation change";l.Vk="zoom change";l.Ae="user interaction start";l.ze="user interaction end";return l});
define("cM",["require","r"],function(a){function b(){this.Fra=d.Xa()?0.066:0.1;this.hna=0.5;this.rra=d.Xa()?0.066:0.1;this.Fta=0.1;this.eL=this.jL=y;this.reset()}function c(a,b,c){a=(b-a)*(1-c);0.01>Math.abs(a)&&(a=0);return b-a}var d=a("r");b.prototype.reset=function(){this.E3=this.ZQ=this.sx=this.Qq=this.bB=this.cR=this.bR=this.fR=this.Lx=this.ju=this.DK=this.FK=this.Gl=this.YC=this.pn=this.HE=0};b.prototype.TZ=function(a,b,c,d,i,p,j,l,q){return this.HE!=a||(this.YC=b)||this.FK!=c||0!=d||0!=i||
this.eL!=j||this.p6!=l||this.jL!=q?(this.HE=a,this.YC=b,this.FK=c,this.pn+=d,this.Gl+=i,this.DK+=p,this.eL=j,this.p6=l,this.jL=q,n):y};b.prototype.aza=function(a,b){return this.ju!=a||0!=b?(this.ju=a,this.Lx+=b,n):y};b.prototype.ld=function(){return 0!=this.fR||0!=this.bR||0!=this.cR||0!=this.bB||0!=this.HE||0!=this.YC||0!=this.FK||0!=this.ju||0!=this.pn||0!=this.Gl||0!=this.Lx};b.prototype.fb=function(a){var a=1E3/a,b=this.fR/a,d=this.HE/a+this.pn;this.pn=0;var k=this.bR/a,i=this.YC/a+this.Gl;this.Gl=
0;var p=this.cR/a,j=this.FK/a+this.DK;this.DK=0;var l=this.ju+this.Lx*a;this.Lx=0;var q=0==d&&0==i&&0==j,o=0==b&&0==k&&0==p;this.eL&&o&&!q||this.jL&&q&&!o||this.p6&&!q&&!o?(q=q?this.Fra:o?this.rra:this.hna,this.Qq=c(b,d,q),this.sx=c(k,i,q),this.ZQ=c(p,j,q)):(this.Qq=d,this.sx=i,this.ZQ=j);b=0==this.bB;d=0==l;this.bB=this.eL&&b&&!d||this.jL&&d&&!b?c(this.bB,l,this.Fta):l;this.fR=this.Qq*a;this.bR=this.sx*a;this.cR=this.ZQ*a;this.E3=this.bB/a};return b});
define("ct","jquery.mod,fg,d,ee,cM,V,ll".split(","),function(a,b,c,d,f,e,g){b=b.extend(c,function(){c.call(this);this.Uc("Renderer");this.v=a("<canvas></canvas>");this.v.css({position:"absolute",left:0,top:0});this.Pa().append(this.v);this.lr=r;this.$=this.Ox=this.Mx=this.Nx=0;this.pg=y;this.Uoa=150;this.CB=0;this.$i=r;this.bind(g.vb,this.jb,this,n);this.wa=new d;this.wa.vBa(720);this.wa.EF(0);this.wa.Ns("drag_rotation");this.wa.nw(360);this.wa.bind(d.Un,this.ioa,this);this.bb=new f});b.prototype.fya=
function(a,b,c){this.lr=a;this.Nx=b;this.Mx=c;this.Ox=Math.floor(this.lr.length*this.$/360);this.tV();this.wa.kw(this);this.ea()};b.prototype.gua=function(){this.lr=r;this.bn();this.tV();this.wa.si()};b.prototype.play=function(){this.pg=n;this.ea()};b.prototype.ioa=function(a){this.bn();this.bb.TZ(a.hq,a.Qp,0,a.Xz,a.Ez,0,y,n);this.ea()};b.prototype.dU=function(){this.play()};b.prototype.Ng=function(a){if(this.lr)if(this.bb.ld()){this.pg=y;this.bb.fb(a);this.d2(this.bb.Qq);this.ea()}else if(this.pg){this.d2(this.Uoa*
a/1E3);this.ea()}else this.Qx()||this.ND()};b.prototype.Cea=function(a){for(this.$=a;this.$<0;)this.$=this.$+360;for(;this.$>=360;)this.$=this.$-360;this.Qsa()};b.prototype.Qsa=function(){if(this.lr){var a=Math.floor(this.lr.length*this.$/360);if(this.Ox!=a){this.Ox=a;this.S8()}}};b.prototype.d2=function(a){this.Cea(this.$+a)};b.prototype.jb=function(){this.tV()};b.prototype.tV=function(){var a=this.v.get(0);if(this.Nx==0||this.Mx==0){a.width=0;a.height=0}else{var b=this.Hd(),c=this.Gd();if(c*this.Nx>
b*this.Mx){a.width=b;a.height=this.Mx*b/this.Nx}else{a.height=c;a.width=this.Nx*c/this.Mx}this.v.css({left:Math.round((b-a.width)*0.5)+"px",top:Math.round((c-a.height)*0.5)+"px"});this.S8()}};b.prototype.S8=function(){if(this.lr){var a=this.v.get(0),b=this.lr[this.Ox];a.getContext("2d").drawImage(b,0,0,this.Nx,this.Mx,0,0,a.width,a.height)}};b.prototype.Qx=function(){return this.$i?n:y};b.prototype.ND=function(){this.bn();if(this.CB>0){var a=this;this.$i=setTimeout(function(){a.$i=r;a.dU()},this.CB)}};
b.prototype.bn=function(){if(this.$i){clearTimeout(this.$i);this.$i=r}};b.prototype.ea=function(){e.La(this.Ng,this)};return b});
define("jC","require,jquery.mod,do,fg,ll,ge,bZ,dW,eH,cr,ct,kS,id".split(","),function(a){a("jquery.mod");var b=a("do"),c=a("fg"),d=a("ll"),f=a("ge"),e=a("bZ"),g=a("dW"),k=a("eH"),i=a("cr"),p=a("ct"),j=a("kS"),l=a("id"),a=c.extend(j,function(){j.call(this);this.fd=this.bj=this.Ze=this.g=r;this.bind(d.od,this.th,this);this.bind(d.zd,this.qh,this)});g.A("Object3D",a).B("UIComponent").K({frames:"array[ImageResource]",yaw:"number"}).Vb([d.T]);a.prototype.Fa=function(){j.prototype.Fa.call(this);if(!this.g){this.g=
new p;this.g.M({left:0,top:0,right:0,bottom:0});this.la(this.g)}if(!this.Ze){this.Ze=new i;this.Ze.M({left:0,bottom:0,right:0,height:20,visible:y});this.la(this.Ze)}};a.prototype.th=function(){this.TB()};a.prototype.qh=function(){this.sj()};a.prototype.TB=function(){this.Ze.set("percent",0);this.Ze.set("visible",n);this.g.Cea(this.get("yaw"));var a=this.get("frames",[]);this.bj=[];this.fd=[];for(var b=0;b<a.length;b++){this.bj.push(k.fm(a[b]));var c=new l(f.Sj);c.bind(d.T,this.sC,this);c.bind(d.ne,
this.tC,this);this.fd.push(c)}for(b=0;b<a.length;b++)this.fd[b].load(this.bj[b].get("url"))};a.prototype.sC=function(){var a=b(this.fd).filter(function(a){return a.Mp()});this.Ze.set("percent",100*a.length/this.fd.length);a.length==this.fd.length&&this.Rf()};a.prototype.tC=C();a.prototype.Rf=function(){this.Ze.set("visible",y);var a=this.bj[0].get("width",this.fd[0].ad()),c=this.bj[0].get("height",this.fd[0].Od());this.g.fya(b(this.fd).map(function(a){return a.ve()}),a,c);this.trigger(new e(d.T))};
a.prototype.sj=function(){if(this.fd){this.Ze.set("visible",y);this.g.gua();this.fd=b(this.fd).each(function(a){a.unbind(d.T,this.sC,this);a.unbind(d.ne,this.tC,this);a.cancel()});this.bj=this.fd=r}};return a});
define("fj",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(a,b,e){c.call(this);a!==m&&this.set("yaw",a);b!==m&&this.set("pitch",b);e!==m&&this.set("hfov",e)});a.A("RotationalCameraPosition",b).B("Object").K({stereographicFactor:"number",yaw:"number",pitch:"number",hfov:"number"});return b});
define("cf",["require","fg","fj","dW"],function(a){var b=a("fg"),c=a("fj"),a=a("dW"),b=b.extend(c,function(){c.apply(this,arguments)});a.A("PanoramaCameraPosition",b).B("RotationalCameraPosition");return b});
define("fE","require,fg,jd,dW,cf,fj".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("dW"),f=a("cf"),e=a("fj"),g=b.extend(c,function(){c.call(this);this.set("initialPosition",new e);this.set("draggingFactor",1);this.set("hoverFactor",0);this.set("manualRotationSpeed",1800);this.set("manualZoomSpeed",1);this.set("automaticRotationSpeed",10);this.set("automaticZoomSpeed",10)});d.A("RotationalCamera",g).B("Object").K({displayOriginPosition:"RotationalCameraDisplayPosition",displayMovements:"array[TargetRotationalCameraDisplayMovement]",
draggingFactor:"number",hoverFactor:"number",initialPosition:"RotationalCameraPosition",initialSequence:"RotationalCameraSequence",idleSequence:"RotationalCameraSequence",sequences:"array[RotationalCameraSequence]",timeToIdle:"number",manualRotationSpeed:"number",manualZoomSpeed:"number",automaticRotationSpeed:"number",automaticZoomSpeed:"number"});a=b.extend(g,function(){g.call(this);this.set("initialPosition",new f)});d.A("PanoramaCamera",a).B("RotationalCamera");return a});
define("jo",["require","fg","fj","dW"],function(a){var b=a("fg"),c=a("fj"),a=a("dW"),b=b.extend(c,function(){c.apply(this,arguments)});a.A("RotationalCameraDisplayPosition",b).B("RotationalCameraPosition").K({stereographicFactor:"number"});return b});define("ir",["require","fg","jo","dW"],function(a){var b=a("fg"),c=a("jo"),a=a("dW"),b=b.extend(c,function(){c.apply(this,arguments)});a.A("PanoramaCameraDisplayPosition",b).B("RotationalCameraDisplayPosition");return b});
define("bf",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("PanoramaCameraMovement",b).B("RotationalCameraMovement");return b});
define("iz","require,fg,jd,bZ,dW,ll".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("bZ"),f=a("dW"),e=a("ll"),a=b.extend(c,function(){c.call(this)});a.prototype.play=function(){this.trigger(new d(e.qt))};a.prototype.pause=function(){this.trigger(new d(e.DG))};f.A("RotationalCameraSequence",a).B("Object").K({movements:"array[RotationalCameraMovement]",mandatory:"bool",movementIndex:"number",repeat:"number",restartMovementOnUserInteraction:"bool",restartMovementDelay:"number"}).Ag({pause:a.prototype.pause,
play:a.prototype.play}).Vb([e.Ba,e.rt]);return a});define("bw",["require","fg","dW","iz"],function(a){var b=a("fg"),c=a("dW"),d=a("iz"),a=b.extend(d,function(){d.call(this)});c.A("PanoramaCameraSequence",a).B("RotationalCameraSequence");return a});define("gz",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("PanoramaMapLocation",a).B("Object").K({map:"Map",x:"number",y:"number",angle:"number",visible:"bool"});return a});
define("ly",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("PanoramaOverlay",b).B("Object");return b});
define("cy",["require","fu","fB","a"],function(a){function b(a){this.g=a;this.dl=[];this.CS=y;this.pa=this.$=0}var c=a("fu"),d=a("fB"),f=a("a");b.prototype.clear=function(){this.stop();this.dl=this.g=r};b.prototype.end=function(a){var b=[],d=[],f=this.X4(a);this.dl.forEach(function(a){0>f.indexOf(a)?b.push(a):d.push(a)});b.forEach(function(a){a.Ov().jc(c.I)});this.dl=d;this.CS=y};b.prototype.start=function(a){this.end(a);this.dl=this.X4(a);this.CS=0<this.dl.filter(function(a){return a instanceof d}).length;
this.kaa();this.PK(c.O,n)};b.prototype.play=function(){this.PK(c.O)};b.prototype.pause=function(){this.PK(c.uc)};b.prototype.stop=function(){this.PK(c.I)};b.prototype.cc=function(){this.$=this.g.Zb();this.pa=this.g.dc();this.kaa()};b.prototype.kaa=function(){if(this.CS){var a=Math.PI/180,b=this.$*a,c=this.pa*a,i=new f(Math.sin(b)*Math.cos(c),Math.sin(c),Math.cos(b)*Math.cos(c));this.dl.forEach(function(p){if(p instanceof d){var j=p.get("yaw",b)*a,l=p.get("pitch",c)*a,q=p.get("maximumAngle",360)*a,
j=new f(Math.sin(j)*Math.cos(l),Math.sin(l),Math.cos(j)*Math.cos(l)),q=Math.min(1,Math.max(0,1-Math.acos(i.Iv(j))/q));p.Ov().bq(q)}}.bind(this))}};b.prototype.X4=function(a){return a?a.get("audios",[]):[]};b.prototype.PK=function(a,b){(b?this.dl.slice().reverse():this.dl).forEach(function(b){if(b.get("autoplay",y)){var b=b.Ov(),d=b.Pe();a==c.O&&d!=c.O?b.jc(c.O):a==c.uc&&d==c.O?b.jc(c.uc):a==c.I&&d!=c.I&&b.jc(c.I)}})};return b});
define("gw","require,do,ll,it,ed,a,km".split(","),function(a){function b(a){this.g=a;this.Z=y;this.pj=b.vt;this.RR=this.w5=y;this.eh(r);this.g.bind(d.vb,this.jb,this,n);this.jb()}var c=a("do"),d=a("ll"),f=a("it"),e=a("ed"),g=a("a"),k=a("km");b.prototype.yca=function(){return this.pj!==b.vt};b.prototype.xca=function(){return this.pj&b.Pw?n:y};b.prototype.zca=function(){return this.pj&b.Qw?n:y};b.prototype.Aca=function(){return this.pj&b.zt?n:y};b.prototype.wca=function(){return this.pj&b.ut?n:y};b.prototype.qN=
P("w5");b.prototype.Zb=function(){this.wj();return this.$};b.prototype.dc=function(){this.wj();return this.pa};b.prototype.Pd=function(){this.wj();return this.Lb};b.prototype.Ip=function(){this.wj();return this.ba};b.prototype.eh=function(a){if(a){this.zU=a.get("hfov",360);this.XJ=a.get("vfov",180);this.TC=a.get("pitch",0);this.Mu=a.get("partial",y);this.ES=a.Dca();this.BS=a.rca();this.JS=Math.min(a.get("hfovMax",170),170);this.AB=a.get("hfovMin");this.KT=k.Yba(a)}else{this.zU=360;this.XJ=180;this.TC=
0;this.BS=this.ES=this.Mu=y;this.JS=120;this.KT=this.AB=1}this.$=0;this.pa=this.TC;this.Lb=0;this.Z=n};b.prototype.Ia=function(a,b,c,d,e){this.$=a;this.pa=b;this.Lb=c;this.ba=d;this.RR=e;this.Z=n};b.prototype.jb=function(){var a=this.g.Aa(),b=this.g.eb();if(this.X!=a||this.ha!=b){this.X=a;this.ha=b;this.Z=n}};b.prototype.wj=function(){if(this.Z){this.Z=y;var a=this.$*j,d=this.pa*j,k=this.ba*j,s,u,v,w=(this.RR?f.On(this.JS,this.X,this.ha):this.JS)*j,x;a:{x=this.AB;if(c(x).isString())if((x=x.match(/^\s*([+-]?\d+\.?\d*)\s*%\s*$/))&&
x.length>=2){x=parseFloat(x[1]);break a}x=m}x=x!==m?2*Math.atan2(this.X*this.g.getPixelRatio()*0.5,this.KT*45*x/100):this.AB?(this.RR?f.On(this.AB,this.X,this.ha):this.AB)*j:2*Math.atan2(this.X*this.g.getPixelRatio()*0.5,this.KT*45);x=Math.min(w,x);if(this.w5){s=360;v=180;u=0}else if(this.ES||this.BS){s=this.BS?90:this.TC+this.XJ*0.5;var z=this.ES?-90:this.TC-this.XJ*0.5;v=s-z;u=(s+z)*0.5;s=this.zU}else{s=this.zU;u=this.TC;v=this.XJ}s=s*j;v=v*j;u=u*j;for(z=this.X/this.ha;a<-i;)a=a+2*i;for(;a>i;)a=
a-2*i;k=Math.max(Math.min(k,w),x);w=b.vt;d>p?w=w|b.zt:d<-p&&(w=w|b.ut);var d=Math.max(Math.min(d,i*0.5),-i*0.5),F=2*Math.atan(Math.tan(k*0.5)/z);if(F>=v){k=2*Math.atan(Math.tan(v*0.5)*z);d=u;w=w|b.zt|b.ut}else{var A=Math.min(v*0.5+u,i*0.5);v=Math.max(-v*0.5+u,-i*0.5);u=!this.Mu&&A>=i*0.495?i*0.5:A-F*0.5;v=!this.Mu&&v<=-i*0.495?-i*0.5:v+F*0.5;if(d>u){d=u;w=w|b.zt}else if(d<v){d=v;w=w|b.ut}}if(this.Mu){v=Math.tan(k*0.5);z=v/z;z=new g(-v,d>0?z:-z,1);v=new e;v.Jn(-d);z.apply(v);z=z.Zb()*2;z<0&&(z=z+2*
i);v=s*0.5-z*0.5;F=-s*0.5+z*0.5;if(z>s){a=0;k=Math.max(x,k*s/z);w=w|b.Pw|b.Qw}else if(a>v){a=v;w=w|b.Qw}else if(a<F){a=F;w=w|b.Pw}}this.$=a*l;this.pa=d*l;this.ba=k*l;this.pj=w}};var i=Math.PI,p=Math.PI*0.5,j=Math.PI/180,l=180/Math.PI;b.vt=0;b.Pw=1;b.Qw=2;b.zt=4;b.ut=8;return b});
define("S",["require","fg","ll","eO","lx"],function(a){function b(a,b){return a*b}var c=a("fg"),d=a("ll"),f=a("eO"),e=a("lx"),g=c.extend(f,function(){f.call(this);this.IB=y;this.ki=m;this.ba=90;this.OR=0.1;this.wb=this.ua=r});g.prototype.Js=function(a){this.wb&&this.wb.unbind(d.D("hoverFactor"),this.TW,this);if(this.wb=a)this.wb.bind(d.D("hoverFactor"),this.TW,this),this.TW()};g.prototype.TW=function(){this.OR=this.wb.get("hoverFactor")};g.prototype.nw=P("ba");g.prototype.kw=function(a){this.si();
a&&(this.ua=a,this.ki=m,this.ua.bind(d.Nc,this.Lg,this,n))};g.prototype.si=function(){this.ua!=r&&(this.ua.unbind(d.Nc,this.Lg,this),this.ua=r)};g.prototype.Lg=function(a){this.Vy(a)};g.prototype.Vy=function(a){this.ki&&this.dX(+b(Math.min(Math.max((a.x-this.ki.x)/this.ua.Aa(),-1),1),this.ba*this.OR),-b(Math.min(Math.max((a.y-this.ki.y)/this.ua.Aa(),-1),1),this.ba*this.OR));this.ki=a};g.prototype.dX=function(a,b){if(!(0==a&&0==b)){var c=new e(g.Un);c.Xz=a;c.Ez=b;this.trigger(c)}};g.Un="rotation change";
return g});
define("fz","require,do,fg,bZ,eO,cM,S".split(","),function(a){a("do");var b=a("fg"),c=a("bZ"),d=a("eO"),f=a("cM"),e=a("S"),g=b.extend(d,function(a,b,c){d.call(this);this.g=a;this.Tb=this.g.Tb;this.H=b;this.tb=c;this.Rr=this.SG=this.W=y;this.bb=new f;this.tg=r;this.Lb=this.pa=this.$=0;this.ba=90;this.wa=new e;this.wa.bind(e.Un,this.wC,this,n)});g.prototype.clear=function(){this.wa.unbind(e.Un,this.wC,this,n);this.wa.si();this.wa=r;this.Pt();this.g=this.Tb=this.tb=this.H=this.bb=r};g.prototype.Js=function(a){this.bb.reset();
this.wa.Js(a)};g.prototype.Ia=function(a,b,c,d){if(this.$!=a||this.pa!=b||this.Lb!=c||this.ba!=d){this.$=a;this.pa=b;this.Lb=c;this.ba=d;this.wa.nw(this.ba);this.HV(y);this.PD()}};g.prototype.ld=function(){return this.SG&&this.Rr?n:y};g.prototype.fb=function(a){this.ns=y;this.bb.fb(a);this.Rr=y;var a=this.$+this.bb.Qq,b=this.pa+this.bb.sx;this.tb.lm(this.ba);this.H.Ia(a,b,this.Lb,this.tb.Oe(),this.tb.Fp());this.$=this.H.Zb();this.pa=this.H.dc();this.Lb=this.H.Pd();this.ba=this.H.Ip()};g.prototype.em=
Q("$");g.prototype.dm=Q("pa");g.prototype.Bs=Q("Lb");g.prototype.Pv=Q("ba");g.prototype.nd=function(a){if(this.W!=a)if(this.W=a)this.PD();else{this.Pt();this.HV(y)}};g.prototype.wC=function(a){this.Ab(a.hq,a.Qp,0,0,a.Xz,a.Ez,0,0,y,y,n,n)};g.prototype.Ab=function(a,b,c,d,e,f,g,t,s,u,v,w){var x=this.bb.TZ(a,b,c,e,f,g,u,v,w)||x;x&&this.wf()};g.prototype.wf=function(){this.Rr=n;this.trigger(new c(g.jf))};g.prototype.PD=function(){this.Pt();this.tg=setTimeout(this.IC.bind(this),30)};g.prototype.Pt=function(){if(this.tg){clearTimeout(this.tg);
this.tg=r}};g.prototype.IC=function(){this.HV(this.W)};g.prototype.HV=function(a){if(this.SG!=a)if(this.SG=a){this.bb.reset();this.wa.kw(this.g.getParent());this.wf()}else this.wa.si()};g.jf="position change request";return g});
define("fO","fg,ll,bZ,eO,r,fT".split(","),function(a,b,c,d,f,e){a=a.extend(d,function(){d.call(this);this.Oaa=this.W=y;this.Lb=this.pa=this.$=0;this.AK=y;this.Gl=this.pn=0});a.prototype.nd=function(a){if(this.W!=a)if(this.W=a){e.bind(this.Fu,this,n);var a=e.Bn(),b=a.pitch;this.pn=this.$-a.yaw;this.Gl=this.pa-b;this.Ak()}else e.unbind(this.Fu,this,n)};a.prototype.Ia=function(a,b,c){if(this.$!=a){this.pn=this.cv(this.pn+(a-this.cv(this.$,a)),0);this.$=a}if(this.pa!=b){this.Gl=this.Gl+(b-this.pa);this.pa=
b}this.Lb=c};a.prototype.em=Q("$");a.prototype.dm=Q("pa");a.prototype.Bs=Q("Lb");a.prototype.ld=function(){return e.Swa()};a.prototype.fb=function(a){var b=e.Bn(),a=20*a/1E3,c=b.pitch+(this.Oaa?this.Gl:0),d=b.roll;this.$=this.Ee(this.$,this.cv(this.cv(b.yaw,this.$)+this.pn,this.$),a);this.pa=this.Ee(this.pa,c,a);this.Lb=this.Ee(this.Lb,d,a)};a.prototype.Xya=P("Oaa");a.prototype.Ee=function(a,b,c){a=(b-a)*(1-c);Math.abs(a)<0.01&&(a=0);return b-a};a.prototype.cv=function(a,b){for(;a+180<b;)a=a+360;
for(;a-180>b;)a=a-360;return a};a.prototype.Fu=function(){this.W&&this.Ak()};a.prototype.Ak=function(){this.trigger(new c(b.aa))};return a});define("fW",["require"],function(){return{JG:38,iG:40,Ma:39,qa:37,JN:65,kP:90}});define("dr",[],function(){return{Hw:"left",Iw:"right",Gw:"down",Jw:"up",L0:"rotate10x",i1:"zoom2x",O:"playing",$n:"zoomIn",ao:"zoomOut",oe:"stop"}});
define("ei","require,fg,fW,bZ,eO,dr".split(","),function(a){var b=a("fg"),c=a("fW"),d=a("bZ"),f=a("eO"),e=a("dr"),g=b.extend(f,function(a){f.call(this);this.g=a;this.W=y;this.Nf={};this.LD=r;this.ED=this.KD=y;this.RI=this.RI.bind(this);this.Mo=this.Mo.bind(this);this.Tb=this.g.Tb;document.addEventListener("keydown",this.RI);document.addEventListener("keyup",this.Mo)});g.prototype.clear=function(){this.W=y;this.Tb=this.g=r;document.removeEventListener("keydown",this.RI);document.removeEventListener("keyup",
this.Mo)};g.prototype.nd=function(a){if(this.W!=a)(this.W=a)&&this.AL()};var k=[c.JG,c.iG,c.qa,c.Ma,c.JN,c.kP];g.prototype.RI=function(a){var b=a.which,c=y;if(!this.Nf[b]&&k.indexOf(b)>=0){if(!this.LD&&!this.KD)this.LD=setTimeout(this.loa.bind(this),100);c=this.Nf[b]=n}if(this.ED!=a.shiftKey){this.ED=a.shiftKey;c=n}c&&this.AL()};g.prototype.loa=function(){this.KD=n;this.AL()};g.prototype.Mo=function(a){var b=a.which,c=y;if(b in this.Nf){delete this.Nf[b];c=y;for(b in this.Nf)this.Nf[b]&&(c=n);if(!c){this.LD&&
clearTimeout(this.LD);this.LD=r;this.KD=y}c=n}if(this.ED!=a.shiftKey){this.ED=a.shiftKey;c=n}c&&this.AL()};g.prototype.AL=function(){if(this.W){var a=this.Tb.get("arrowKeysAction");if(a!="none"){var a=a=="rotate",b=[];this.Nf[c.JN]?b.push(e.$n):this.Nf[c.kP]&&b.push(e.ao);this.KD&&(this.Nf[c.JN]||this.Nf[c.kP])&&b.push(e.i1);this.Nf[c.qa]?b.push(e.Hw):this.Nf[c.Ma]&&b.push(e.Iw);if(a||this.ED)this.Nf[c.JG]?b.push(e.Jw):this.Nf[c.iG]&&b.push(e.Gw);this.KD&&(this.Nf[c.qa]||this.Nf[c.Ma]||this.Nf[c.JG]||
this.Nf[c.iG])&&b.push(e.L0);b.length==0&&b.push(e.oe);this.trigger(new d(g.qO,{qda:b}))}}};g.qO="movementsChange";return g});
define("ls",["require"],function(){function a(){this.At=n;this.reset()}function b(a,b){var f=0.5*(b-a);0.01>Math.abs(f)&&(f=0);return b-f}a.prototype.reset=function(){this.At&&(this.At=y,this.mL=this.nL=this.sp=this.uj=this.tx=this.wx=this.ux=this.Sq=m)};a.prototype.moveTo=function(a,b,f,e,g){this.uj=a;this.sp=b;this.nL=f;this.mL=e;this.YS=g;this.At=n};a.prototype.Ia=function(a,b,f,e){this.Sq=a;this.ux=b;this.wx=f;this.tx=e};a.prototype.em=Q("Sq");a.prototype.dm=Q("ux");a.prototype.Bs=Q("wx");a.prototype.Pv=
Q("tx");a.prototype.ld=Q("At");a.prototype.fb=function(){if(this.At)if(this.YS)this.Sq=this.uj,this.ux=this.sp,this.wx=this.nL,this.tx=this.mL,this.At=y;else{for(var a=this.Sq,d=this.uj-180,f=this.uj+180;a<d;)a+=f-d;for(;a>f;)a-=f-d;this.Sq=a;this.Sq=b(this.Sq,this.uj);this.ux=b(this.ux,this.sp);this.wx=b(this.wx,this.nL);this.tx=b(this.tx,this.mL);this.Sq==this.uj&&this.ux==this.sp&&this.wx==this.nL&&this.tx==this.mL&&(this.At=y)}};return a});
define("bV",["require","ku","jt","bi"],function(a){function b(){this.W=y;this.Lb=this.pa=this.$=0;this.UI=m}var c=a("ku"),d=a("jt"),f=a("bi");b.prototype.nd=function(a){this.W!=a&&(this.W=a,this.UI=m)};b.prototype.Ia=function(a,b,c){this.$=a;this.pa=b;this.Lb=c};b.prototype.em=Q("$");b.prototype.dm=Q("pa");b.prototype.Bs=Q("Lb");b.prototype.ld=R(n);b.prototype.fb=function(){var a=c.j_(f.zn().orientation);this.$+=this.UI===m?0:a.ma-this.UI;this.UI=a.ma;this.pa=a.pitch;this.Lb=a.md;this.pa=g===m?a.pitch:
g;this.Lb=e===m?a.md:e};var e=d.ag("debug")?d.wM("force_vr_roll"):m,g=d.ag("debug")?d.wM("force_vr_pitch"):m;return b});
define("f","require,do,fg,ll,bZ,eO,ce,fO,ei,cM,ee,ls,bV,dr,bi,R".split(","),function(a){var b=a("do"),c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("ce"),k=a("fO"),i=a("ei"),p=a("cM"),j=a("ee"),l=a("ls"),q=a("bV"),o=a("dr"),t=a("bi"),s=a("R"),u=c.extend(e,function(a,b,c){e.call(this);this.g=a;this.Tb=this.g.Tb;this.H=b;this.tb=c;this.Rr=this.er=this.wB=this.rK=this.W=y;this.bb=new p;this.Ql=new l;this.Lb=this.pa=this.$=0;this.ba=90;this.jv=1;this.of=m;this.VP=this.BA=5;this.ns=y;this.wa=new j;this.wa.bind(j.Un,
this.wC,this,n);this.wa.bind(j.Vk,this.Cr,this,n);this.wa.bind(j.Ae,this.Cl,this,n);this.wa.bind(j.ze,this.Bl,this,n);this.Th=new k;this.Th.bind(d.aa,this.T6,this);this.dr=y;this.aj=new i(this.g);this.aj.bind(i.qO,this.f7,this,n);this.mn=new q;t.bind(d.aa,this.mk,this,n);this.mk()});u.prototype.clear=function(){this.wa.unbind(j.Un,this.wC,this,n);this.wa.unbind(j.Vk,this.Cr,this,n);this.wa.unbind(j.Ae,this.Cl,this,n);this.wa.unbind(j.ze,this.Bl,this,n);this.wa.si();this.wa=r;this.Th.unbind(d.aa,this.T6,
this);this.Th=r;this.aj.unbind(i.qO,this.f7,this,n);this.aj.clear();this.aj=r;t.unbind(d.aa,this.mk,this,n);this.tb=this.H=this.bb=r;this.xH();this.g=this.Tb=r};u.prototype.Js=function(a){this.bb.reset();this.Ql.reset();this.wa.Js(a);this.BA=a.get("automaticRotationSpeed");this.VP=a.get("automaticZoomSpeed")};u.prototype.dh=function(a){function c(d){return b(a).contains(d)}b.isArray(a)||(a=[a]);var d=0,e=0,f=0,g=y;if(!c(o.oe)){c(o.Hw)?d=-this.BA:c(o.Iw)&&(d=+this.BA);c(o.Gw)?e=-this.BA:c(o.Jw)&&(e=
+this.BA);c(o.$n)?f=-this.VP:c(o.ao)&&(f=+this.VP);c(o.O)&&(g=n);c(o.i1)&&(f=f*2);if(c(o.L0)){d=d*10;e=e*10}d=d*this.jv;e=e*this.jv}this.Ab(d,e,0,f,0,0,0,0,g,n,n,n)};u.prototype.Ia=function(a,b,c,d){this.$=a;this.pa=b;this.Lb=c;this.ba=d;this.jv=this.ba/90;this.Th.Ia(this.$,this.pa,this.Lb);this.mn.Ia(this.$,this.pa,this.Lb);this.wa.nw(this.ba);this.Ql.Ia(this.$,this.pa,this.Lb,this.ba)};u.prototype.moveTo=function(a,b,c,d,e){this.Ql.moveTo(a,b,c,this.tb.Gba(d),e);this.rK=y;this.bb.reset();this.wf()};
u.prototype.UZ=function(a,b,c){this.Ab(0,0,0,0,a,b,c,0,y,y,y)};u.prototype.ld=function(){return this.W&&(this.Rr||this.FN())?n:y};u.prototype.jua=function(){this.Rr=this.ns=y};u.prototype.FN=function(){return this.W?this.ns?n:this.mn.W?this.mn.ld()||this.bb.ld():this.Th.W?this.dr?n:this.Th.ld()||this.bb.ld():this.bb.ld()||this.Ql.ld():y};u.prototype.fb=function(a){this.ns=y;this.bb.fb(a);this.Rr=y;var b,c,d;d=this.ba;if(this.mn.W){this.mn.fb(a);a=this.mn.em()+this.bb.Qq;b=this.mn.dm();c=this.mn.Bs()}else if(this.Ql.ld()){this.Ql.fb(a);
a=this.Ql.em();b=this.Ql.dm();c=this.Ql.Bs();d=this.Ql.Pv()}else{if(this.Th.W){this.dr=y;this.Th.fb(a);a=this.Th.em()+this.bb.Qq;b=this.Th.dm();this.wB&&(b=b+this.bb.sx);c=this.Th.Bs()}else{a=this.$+this.bb.Qq;b=this.pa+this.bb.sx;c=0}d=d+this.bb.E3}this.tb.lm(d);this.H.Ia(a,b,c,this.tb.Oe(),this.tb.Fp());this.$=this.H.Zb();this.pa=this.H.dc();this.Lb=this.H.Pd();this.ba=this.H.Ip();if(this.rK&&this.H.yca()){d=this.bb.HE;if(this.H.xca()||this.H.zca())d=-d;a=this.bb.YC;if(this.H.Aca()||this.H.wca())a=
-a;this.Ab(d,a,0,0,0,0,0,0,n,y,y,n)}};u.prototype.em=Q("$");u.prototype.dm=Q("pa");u.prototype.Bs=Q("Lb");u.prototype.Pv=Q("ba");u.prototype.nd=function(a){if(this.W!=a){if(this.W=a){this.cs(this.wa.zu==g.Tn?s.tG:m);this.wa.kw(this.g.getParent());this.wf()}else{this.xH();this.wa.si()}this.ZW()}};u.prototype.GF=function(a){if(this.er!=a){this.er=a;this.ZW();this.dr=n}};u.prototype.Ls=function(a){this.aj.nd(a)};u.prototype.ZW=function(){this.Th.nd(this.W&&this.er&&!t.isPresenting());this.mn.nd(this.W&&
t.isPresenting())};u.prototype.T6=function(){this.wf()};u.prototype.HF=function(a){this.wB=a;this.Th.Xya(this.wB)};u.prototype.Ns=function(a){this.wa.Ns(a);this.cs(this.wa.zu==g.Tn?s.tG:m)};u.prototype.tw=function(a){this.wa.tw(a)};u.prototype.mk=function(){this.ZW();this.wf()};u.prototype.wC=function(a){var b=!this.mn.W&&(!this.Th.W||this.wB);if(this.wa.zu==g.Zs){var c=m;if(a.hq!=0||a.Qp!=0){var d=Math.sqrt(a.Qp*a.Qp+a.hq*a.hq)>25,e=Math.atan2(a.Qp,a.hq)*180/Math.PI;e>=-22.5&&e<22.5?c=d?s.h0:s.g0:
e>=22.5&&e<67.5?c=d?s.j0:s.q0:e>=67.5&&e<112.5?c=d?s.i0:s.p0:e>=112.5&&e<157.5?c=d?s.k0:s.r0:e>=157.5||e<-157.5?c=d?s.o0:s.v0:e>=-157.5&&e<-112.5?c=d?s.n0:s.u0:e>=-112.5&&e<-67.5?c=d?s.l0:s.s0:e>=-67.5&&e<-22.5&&(c=d?s.m0:s.t0)}this.cs(c);this.Ab(a.hq,a.Qp,0,0,a.Xz,a.Ez,0,0,y,y,y,b)}else this.Ab(a.hq,a.Qp,0,0,a.Xz,a.Ez,0,0,y,y,b,b)};u.prototype.Cr=function(a){this.Ab(0,0,0,a.Wva,0,0,0,a.IY,y,n,y,n)};u.prototype.Ab=function(a,b,c,d,e,f,g,i,j,k,l,o){a=this.bb.TZ(a,b,c,e,f,g,k,l,o)||y;this.Tb.get("zoomEnabled")&&
(a=this.bb.aza(d,i)||a);if(a){this.Ql.reset();this.rK=j;this.wf()}};u.prototype.wf=function(){this.Rr=n;this.trigger(new f(u.jf))};u.prototype.Cl=function(){this.ns=n;this.trigger(new f(u.Ae));this.wa.zu==g.Tn&&this.cs(s.uG)};u.prototype.Bl=function(){this.trigger(new f(u.ze));this.wa.zu==g.Tn&&this.cs(s.tG)};u.prototype.f7=function(a){this.dh(a.data.qda);a.data.qda.indexOf(o.oe)<0&&this.g.Ra().trigger(new f(d.nG,{Eea:a}))};u.prototype.cs=function(a){if(this.of!=a&&this.W){this.of&&this.g.Fz(this.of);
(this.of=a)&&this.g.gN(this.of)}};u.prototype.xH=function(){if(this.of){this.g.Fz(this.of);this.of=m}};u.jf="position change request";u.Ae="user interaction start";u.ze="user interaction end";return u});
define("jV",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("TargetRotationalCameraMovement",b).B("RotationalCameraMovement").K({path:"enum[left, right, shortest, longest]",targetYaw:"number",targetPitch:"number",targetHfov:"number"});return b});
define("G","require,fg,ll,fu,bZ,eO,dW,fo,jV,kX,bq".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("fu"),f=a("bZ"),e=a("eO"),g=a("dW");a("fo");a("jV");var k=a("kX"),i=a("bq"),p=b.extend(e,function(a,b,c){e.call(this);this.g=a;this.H=b;this.tb=c;this.yy=this.ud=r;this.Nr=this.Or=y;this.Ou=m;this.ay=[];this.qV=0;this.P=r;this.pa=this.$=0;this.ba=90});p.prototype.clear=function(){this.end();this.H=this.g=r};p.prototype.start=function(a){this.Vqa(a);this.Loa();this.Nr=y;this.X2();this.Or=y;this.wf();
this.Tg()};p.prototype.end=function(){if(this.ud!=r){this.d3();this.Or=this.Nr=y;this.P=r;this.Tg()}};p.prototype.Xwa=function(){if(this.ud&&this.ud.get("restartMovementOnUserInteraction")){if(!this.Or){this.C$();this.lW();this.P=r;this.Or=n;this.Tg()}}else this.pause()};p.prototype.axa=function(){if(this.Or){this.Or=y;this.M5()||this.zra()}};p.prototype.Vqa=function(a){this.d3();this.ud=a;this.ud.bind(c.qt,this.R7,this,n);this.ud.bind(c.DG,this.Q7,this,n);this.ud.bind(c.D("movementIndex"),this.EJ,
this,n);this.ay=this.ud.get("movements",[])};p.prototype.d3=function(){this.lW();if(this.ud!=r){this.ud.unbind(c.qt,this.R7,this);this.ud.unbind(c.DG,this.Q7,this);this.ud.unbind(c.D("movementIndex"),this.EJ,this);this.ud.set("movementIndex",-1);this.ud=r;this.ay=[]}};p.prototype.ah=function(){return this.ud?this.Nr?d.uc:d.O:d.I};p.prototype.Ia=function(a,b,c,d){this.$=a;this.pa=b;this.ba=d};p.prototype.ld=function(){return this.ud&&this.P&&!this.Nr&&!this.Or&&!this.M5()?n:y};p.prototype.fb=function(a){if(this.ld()){this.P.fb(a);
a=this.P.Bb("hfov");if(this.tb.Yca()){var b=this.P.Nba("hfov");b.Nv=this.tb.fM(b.Nv);b.Tz=this.tb.fM(b.Tz);a=this.tb.fM(a)}this.H.Ia(this.P.Bb("yaw"),this.P.Bb("pitch"),0,a,this.tb.Fp());this.$=this.H.Zb();this.pa=this.H.dc();this.ba=this.H.Ip();this.P.Qe()&&this.Sna()}};p.prototype.em=Q("$");p.prototype.dm=Q("pa");p.prototype.Pv=Q("ba");p.prototype.play=function(){if(this.Nr){this.Nr=y;this.EJ();this.X2();this.wf();this.Tg()}};p.prototype.pause=function(){if(!this.Nr){this.Nr=n;this.C$();this.Tg()}};
p.prototype.R7=function(){this.play()};p.prototype.Q7=function(){this.pause()};p.prototype.Loa=function(){this.qV=0;var a=this.ud.get("movementIndex",-1);a==-1&&(a=0);this.jK(a)};p.prototype.Noa=function(){this.qV++;var a=this.ud.get("repeat",1);if(this.ay.length>0&&(a==0||this.qV<a))this.jK(0);else{this.ud.trigger(new f(c.Ba));this.end();this.ssa()}};p.prototype.Moa=function(){this.jK(this.ud.get("movementIndex",0)+1)};p.prototype.jK=function(a){if(a<this.ay.length)this.ud.get("movementIndex")!=
a?this.ud.set("movementIndex",a):this.EJ();else{this.ud.trigger(new f(c.rt));this.Noa()}};p.prototype.EJ=function(){var a=this.ud.get("movementIndex");this.P=a>=0?this.fja(this.ay[a]):r};p.prototype.Sna=function(){this.ay[this.ud.get("movementIndex")].trigger(new f(c.Ba));this.Moa()};p.prototype.M5=function(){return this.yy!=r};p.prototype.zra=function(){this.lW();var a=this,b=this.ud.get("restartMovementDelay")||0;this.yy=setTimeout(function(){a.yy=r;a.foa()},b);this.Tg()};p.prototype.lW=function(){if(this.yy){clearTimeout(this.yy);
this.yy=r}};p.prototype.foa=function(){this.jK(this.ud.get("movementIndex"));this.wf();this.Tg()};p.prototype.fja=function(a){var b,c,d,e=this.av(this.$,-180,180),f=this.pa,p=this.ba;if(g.qb("TargetRotationalCameraMovement",a)){b=a.get("targetYaw",e);c=a.get("targetPitch",f);if(d=a.get("targetHfov")){this.tb.sea(d);d=this.tb.Oe()}else d=p;this.H.Ia(b,c,0,d,this.tb.Fp());if(this.H.Mu)b=this.H.Zb();else switch(this.lka(a)){case "left":b=this.av(b,e-360,e);break;case "right":b=this.av(b,e,e+360);break;
case "longest":b=this.av(b,e-180,e+180);b=b>=e?this.av(b,e-360,e):this.av(b,e,e+360);break;default:b=this.av(b,e-180,e+180)}}else if(g.qb("DistanceRotationalCameraMovement",a)){b=e+a.get("yawDelta",0);this.H.Mu&&(b=Math.min(Math.max(-180,b),180));c=f+a.get("pitchDelta",0);d=p+a.get("hfovDelta",0);this.H.Ia(b,c,0,d,this.tb.Fp());this.H.Mu&&(b=this.H.Zb())}c=this.H.dc();d=this.H.Ip();return new k(a.get("easing"),[new i("yaw",e,b,a.get("yawSpeed")),new i("pitch",f,c,a.get("pitchSpeed")),new i("hfov",
p,d,a.get("hfovSpeed"))],a.get("duration"))};p.prototype.X2=function(){this.Ou=m};p.prototype.C$=function(){if(this.P){this.Ou=m;var a=this.P&&this.P.Nba("yaw");if(a)if(a.Tz>a.Nv)this.Ou="right";else if(a.Tz<a.Nv)this.Ou="left"}};p.prototype.lka=function(a){a=a.get("path");if(a=="longest"&&this.Ou)a=this.Ou;this.Ou=m;return a};p.prototype.av=function(a,b,c){for(;a<b;)a=a+(c-b);for(;a>c;)a=a-(c-b);return a};p.prototype.wf=function(){this.trigger(new f(p.jf))};p.prototype.ssa=function(){this.trigger(new f(p.DO))};
p.prototype.Tg=function(){this.trigger(new f(p.sb))};p.jf="position change request";p.DO="sequence end";p.sb="playback state change";return p});
define("bg","require,do,fg,ll,bZ,eO,gw,fz,f,G,dr,bi,fu".split(","),function(a){a("do");var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("gw"),g=a("fz"),k=a("f"),i=a("G"),p=a("dr"),j=a("bi"),l=a("fu"),q=b.extend(f,function(a,b){f.call(this);this.g=a;this.g.bind(c.vb,this.jb,this);j.bind(c.aa,this.mk,this,n);this.tb=b;this.vV=y;this.ba=this.Lb=this.pa=this.$=m;this.rn=this.qn=this.kC=this.nC=this.mC=this.lC=y;this.tj=n;this.Lx=this.Gl=0;this.W=y;this.$i=r;this.CB=5E3;this.EB=this.US=r;this.CV=[];this.Vf=
this.zq=l.I;this.H=new e(a);this.Ta=new k(this.g,this.H,this.tb);this.Ta.bind(k.jf,this.zl,this,n);this.Ta.bind(k.Ae,this.Cl,this,n);this.Ta.bind(k.ze,this.Bl,this,n);this.Zi=new g(this.g,this.H,this.tb);this.Zi.bind(g.jf,this.zl,this,n);this.kd=new i(this.g,this.H,this.tb);this.kd.bind(i.jf,this.zl,this,n);this.kd.bind(i.DO,this.mU,this,n);this.kd.bind(i.sb,this.S7,this,n)});q.prototype.clear=function(){this.bn();this.Ta.unbind(k.jf,this.zl,this);this.Ta.unbind(k.Ae,this.Cl,this,n);this.Ta.unbind(k.ze,
this.Bl,this,n);this.Ta.clear();this.Ta=r;this.Zi.unbind(g.jf,this.zl,this,n);this.Zi.clear();this.Zi=r;this.kd.unbind(i.jf,this.zl,this);this.kd.unbind(i.DO,this.mU,this);this.kd.unbind(i.sb,this.S7,this);this.kd.clear();this.H=this.kd=r;this.g.unbind(c.vb,this.jb,this);j.unbind(c.aa,this.mk,this,n);this.g=r;if(this.wb){this.wb.unbind(c.D("sequences"),this.nU,this,n);this.wb=r}this.VK([])};q.prototype.end=function(){this.zq=l.I;this.bn();this.Ta.nd(y);this.Zi.nd(y);this.kd.end();this.W=y;this.lp(0,
0,0,0);this.EB=this.US=r;if(this.wb){this.wb.unbind(c.D("sequences"),this.nU,this,n);this.wb=r}this.VK([]);this.rv()};q.prototype.start=function(a,b){this.zq=l.O;this.W=n;this.lp(0,0,0,0);this.yD(a);this.pqa(b);this.R8();this.fL(this.EB);this.Zi.nd(n);this.rv()};q.prototype.ah=Q("Vf");q.prototype.play=function(){this.zq=l.O;this.kd.ah()==l.uc?this.kd.play():this.kd.ah()==l.I&&(this.EB?this.fL(this.EB):this.Qx()||this.ND());this.rv()};q.prototype.resume=function(){if(this.zq==l.uc){this.Ta.jua();this.play()}};
q.prototype.pause=function(){this.Ta.dh(p.oe);if(this.zq==l.O){this.zq=l.uc;if(this.kd.ah()==l.O){this.kd.pause();this.rv()}else this.Qx()&&this.bn()}};q.prototype.stop=function(){this.zq=l.I;this.kd.ah()!=l.I&&this.kd.end();this.Ta.dh(p.oe);this.rv();this.Qx()&&this.bn()};q.prototype.moveTo=function(a,b,c,d,e){this.Ta.moveTo(a,b,c,d,e)};q.prototype.VK=function(a){this.CV.forEach(function(a){a.unbind(c.qt,this.x9,this,n)}.bind(this));this.CV=a;this.CV.forEach(function(a){a.bind(c.qt,this.x9,this,
n)}.bind(this))};q.prototype.mk=function(){this.H.qN(j.isPresenting())};q.prototype.dh=function(a){this.Ta.dh(a)};q.prototype.UZ=function(a,b,c){this.Ta.UZ(a,b,c)};q.prototype.GF=function(a){if(this.er!=a){this.er=a;this.Ta.GF(this.er);this.ea()}};q.prototype.HF=function(a){this.Ta.HF(a)};q.prototype.Ns=function(a){this.Ta.Ns(a)};q.prototype.tw=function(a){this.Ta.tw(a)};q.prototype.Ls=function(a){this.Ta.Ls(a)};q.prototype.Sp=function(a){if(this.W)if(this.Ta.ld()||j.isPresenting()||this.er&&(this.Ta.W||
!this.Ta.wB)){this.Ta.FN()&&this.kd.Xwa();this.Ta.fb(a);this.mi(this.Ta.em(),this.Ta.dm(),this.Ta.Bs(),this.Ta.Pv());this.ea()}else if(this.kd.Or){this.kd.axa();this.ea()}else if(this.kd.ld()){this.kd.fb(a);this.mi(this.kd.em(),this.kd.dm(),0,this.kd.Pv());this.ea()}else if(this.Zi.ld()){this.Zi.fb(a);this.mi(this.Zi.em(),this.Zi.dm(),0,this.Zi.Pv());this.ea()}else if(this.vV){this.vV=y;this.tb.lm(this.g.Oe());this.H.Ia(this.g.Zb(),this.g.dc(),this.g.Pd(),this.tb.Oe(),this.tb.Fp());this.mi(this.H.Zb(),
this.H.dc(),this.H.Pd(),this.H.Ip());this.ea()}else{this.lp(0,0,0,0);this.zq==l.O&&this.kd.ah()!=l.O&&(this.Qx()||this.ND())}};q.prototype.cc=function(){this.ata();this.R8()};q.prototype.ata=function(){var a=this.g.Zb()-this.$||0,b=this.g.dc()-this.pa||0,c=this.g.Pd()-this.Lb||0;this.lp(a,b,c,this.g.Oe()-this.ba||0)};q.prototype.R8=function(){this.$=this.g.Zb();this.pa=this.g.dc();this.Lb=this.g.Pd();this.ba=this.g.Oe();this.Ta.Ia(this.$,this.pa,this.Lb,this.ba);this.kd.Ia(this.$,this.pa,this.Lb,
this.ba);this.Zi.Ia(this.$,this.pa,this.Lb,this.ba)};q.prototype.yD=function(a){this.H.eh(a)};q.prototype.pqa=function(a){this.wb=a;this.CB=a.get("timeToIdle",5E3);this.US=a.get("idleSequence");this.EB=a.get("initialSequence");this.Ta.Js(a);this.Zi.Js(a);a.bind(c.D("sequences"),this.nU,this,n);this.VK(a.get("sequences",[]))};q.prototype.nU=function(){this.VK(this.wb.get("sequences",[]))};q.prototype.x9=function(a){this.fL(a.source)};q.prototype.zl=function(){this.bn();this.ea()};q.prototype.Cl=function(){this.trigger(new d(q.Ae))};
q.prototype.Bl=function(){this.trigger(new d(q.ze))};q.prototype.fL=function(a){if(a){this.Ta.nd(!a.get("mandatory",y));this.kd.start(a)}else this.mU()};q.prototype.mU=function(){this.Ta.nd(n);this.ND()};q.prototype.S7=function(){this.rv()};q.prototype.jb=function(){this.vV=n;this.ea()};q.prototype.Qx=function(){return this.$i!=r};q.prototype.ND=function(){this.bn();var a=this;this.$i=setTimeout(function(){a.$i=r;a.dU()},this.CB)};q.prototype.bn=function(){if(this.$i){clearTimeout(this.$i);this.$i=
r}};q.prototype.dU=function(){this.fL(this.US)};q.prototype.ea=function(){this.trigger(new d(q.Ja))};q.prototype.mi=function(a,b,c,d){this.g.Ia(a,b,c,d)};q.prototype.lp=function(a,b,c,e){var c=y,f=Math.abs(a)<0.001&&Math.abs(b)<0.001&&Math.abs(e)<0.001;if(f||this.er){c=this.tj!=n;this.rn=this.qn=this.kC=this.nC=this.mC=this.lC=y;this.tj=n}else{if(this.lC!=a<-0.001){this.lC=!this.lC;c=n}if(this.mC!=a>0.001){this.mC=!this.mC;c=n}if(this.kC!=b<-0.001){this.kC=!this.kC;c=n}if(this.nC!=b>0.001){this.nC=
!this.nC;c=n}if(this.qn!=e<-0.001){this.qn=!this.qn;c=n}if(this.rn!=e>0.001){this.rn=!this.rn;c=n}if(this.tj!=f){this.tj=!this.tj;c=n}}f||this.trigger(new d(q.Sk,{yaw:this.$,pitch:this.pa,roll:this.Lb,hfov:this.ba}));if(c){(this.W||this.tj)&&this.trigger(new d(q.gh,{movingLeft:this.lC,movingRight:this.mC,movingUp:this.nC,movingDown:this.kC,zoomingIn:this.qn,zoomingOut:this.rn,stopped:this.tj}));this.rv()}};q.prototype.rv=function(){var a;if(this.W){a=this.kd.ah();if(!this.tj)a=l.O}else a=l.I;if(this.Vf!=
a){this.Vf=a;this.trigger(new d(q.sb,{state:this.Vf}))}};q.Ja="request frame";q.gh="movement change";q.Sk="position change";q.sb="playback state change";q.Ae="user interaction start";q.ze="user interaction end";return q});
define("fn","require,ll,gw,r,fT,jt,bi,ku".split(","),function(a){function b(a,d,e){this.g=a;this.tb=d;this.js=e;this.H=new c(a);e.Kj&&this.H.eh(e.Kj);this.kp=new c(a);this.Ux=this.No=m;this.$=this.g.Zb();this.pa=this.g.dc();this.Lb=this.g.Pd();this.ba=this.js.Kj?this.g.Oe():b.B_;this.u$=0;this.N=r;this.U5=n}a("ll");var c=a("gw");a("r");var d=a("fT"),f=a("jt"),e=a("bi"),g=a("ku");b.prototype.eh=function(a){if(this.N!=a){this.Lr=n;this.N=a}};b.prototype.rw=function(a,b){this.$=a;this.pa=b};b.prototype.gz=
function(a){this.tb.sea(a);return this.tb.Oe()};b.prototype.lm=P("ba");b.prototype.LF=P("U5");b.prototype.sw=P("u$");b.prototype.Sp=function(){if(this.tb.Yca())this.ba=this.tb.fM(this.ba);if(this.js.Db()){var a=e.zn().orientation,a=g.j_(a);this.$=this.$+(this.No===m?0:a.ma-this.No);this.No=a.ma;this.pa=a.pitch;this.Lb=a.md;this.pa=i===m?a.pitch:i;this.Lb=k===m?a.md:k}else if(this.js.oca()){var a=d.Bn(),b=this.cv(a.yaw,this.$);this.$=this.$+(this.No===m?0:b-this.No);this.pa=this.pa+(this.Ux===m?0:
a.pitch-this.Ux);this.Lb=a.roll;this.No=a.yaw;this.Ux=a.pitch}else{a=this.cv(this.g.Zb(),this.$);b=this.g.dc();this.$=this.$+(this.No===m?0:a-this.No);this.pa=this.pa+(this.Ux===m?0:b-this.Ux);this.Lb=this.g.Pd()}this.Lr&&this.H.eh(this.N);this.H.qN(e.isPresenting());this.H.Ia(this.$,this.pa,this.Lb,this.ba,this.tb.Fp());if(this.Lr){this.Lr=y;if(this.js&&this.js.Kj)if(a=this.g.$f(this.js.Kj)){a.set("deltaYaw",this.g.Zb()-this.H.Zb());a.set("deltaPitch",this.g.dc()-this.H.dc());a.set("deltaRoll",this.g.Pd()-
this.H.Pd())}}this.$=this.H.Zb();this.pa=this.H.dc();this.Lb=this.H.Pd();if(!this.js.Db()&&!this.js.oca()){this.No=this.$;this.Ux=this.pa}this.ba=this.U5?this.H.Ip():this.ba;this.g.Ia(this.$,this.pa,this.Lb,this.ba);this.g.sw(this.u$)};b.prototype.mN=function(a,b){this.kp.eh(a);this.kp.Ia(0,0,0,b,this.tb.Fp());return this.kp.Ip()};b.prototype.Dxa=function(a,b){this.kp.eh(a);this.kp.Ia(b.ma,b.pitch,b.md,b.bd,this.tb.Fp());b.ma=this.kp.Zb();b.pitch=this.kp.dc();b.md=this.kp.Pd();b.bd=this.kp.Ip()};
b.prototype.cv=function(a,b){for(;a+180<b;)a=a+360;for(;a-180>b;)a=a-360;return a};b.prototype.wba=function(){return b.B_};b.B_=TDV.J0.jfa;var k=f.ag("debug")?f.wM("force_vr_roll"):m,i=f.ag("debug")?f.wM("force_vr_pitch"):m;return b});
define("lD","require,dW,fj,jo,r,bi".split(","),function(a){function b(a,e,f,p){this.g=a;a=this.g.C;this.l_=a.get("transitionMode","blending");var j=a.get("transitionDuration",500);if(this.hma(e,f)){this.l_=b.pG;j=1500}this.fba=a.get("blendingTransitionDuration",j);this.Nua=a.get("firstTransitionDuration",j);this.xua=a.get("disolveTransitionDuration",j);this.wza=a.get("translationTransitionDuration",1E3);this.xza=a.get("translationTransitionEnabled",n);this.vda=a.get("originTransitionDuration",3E3);
this.IN=1E3;this.Kj=e;this.eza=!e||e.Tca();this.cd=f;this.oza=!f||f.Sca();this.e_=!f||f.Tca();this.nza=!!f&&this.oT(f);a=(this.d_=p)&&p.get("initialPosition")||new c;this.ui=new c;this.ui.set("yaw",a.get("yaw",0));this.ui.set("pitch",a.get("pitch"));this.ui.set("hfov",a.get("hfov"));this.Fd=new d;this.Fd.set("yaw",this.ui.get("yaw"));this.Fd.set("pitch",this.ui.get("pitch"));this.Fd.set("hfov",this.ui.get("hfov"));this.Fd.set("stereographicFactor",0);this.Ek=[];if(!e){this.Ek=p&&p.get("displayMovements")||
[];for(a=this.Ek.length-1;a>=0;a--){this.Fd.set("yaw",this.Fd.get("yaw",this.Ek[a].get("targetYaw")));this.Fd.set("pitch",this.Fd.get("pitch",this.Ek[a].get("targetPitch")));this.Fd.set("hfov",this.Fd.get("hfov",this.Ek[a].get("targethfov")));this.Fd.set("stereographicFactor",this.Fd.get("stereographicFactor",this.Ek[a].get("stereographicFactor")))}p=p&&p.get("displayOriginPosition")||this.ui;this.Fd.set("yaw",p.get("yaw"));this.Fd.set("pitch",p.get("pitch"));this.Fd.set("hfov",p.get("hfov"));this.Fd.set("stereographicFactor",
p.get("stereographicFactor"))}this.mode=(this.VF=this.l_==b.qm&&this.xza&&this.oza?this.Rla(e,f):r)?b.Y0:e?f?this.l_=="blending"?b.qm:b.pG:b.U_:b.T_;if(this.mode==b.qm&&(!this.eza||!this.e_))if(this.Fd.get("stereographicFactor",0)>0||this.Ek.filter(function(a){return a.get("targetStereographicFactor",0)>0}).length>0)this.mode=b.pG}a("dW");var c=a("fj"),d=a("jo"),f=a("r"),e=a("bi");b.prototype.oca=function(){return this.g.Tb.get("gyroscopeEnabled")};b.prototype.Db=function(){return e.isPresenting()};
b.prototype.Rla=function(a,b){if(!a||!b)return r;var c=(a.get("adjacentPanoramas")||[]).filter(function(a){return a.get("enabled")&&a.Zta()&&a.get("panorama")==b});return c.length==0?r:c[0]};b.prototype.hma=function(a,b){return this.Db()&&f.Zd()==f.Qj&&(this.oT(a)||this.oT(b))};b.prototype.oT=function(a){return!!a&&a.Hh()};b.pG="fade_out_fade_in";b.T_="fade_in";b.U_="fade_out";b.qm="blending";b.Y0="translation";return b});
define("l",["require"],function(){function a(a,c,d,f){this.o=a;this.kb=c;this.g=d;this.R=f}a.prototype.Cj=R(y);a.prototype.wi=C();a.prototype.jF=R(y);return a});
define("je",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec){if(!this.P){var b=this.g.$f(this.R.cd);b.Ck();b.set("alpha",0.01);this.P=new d("linear",[new f("alpha",0,1,m)],this.R.fba)}this.P.fb(a);a=this.P.Bb("alpha");b=this.g.$f(this.R.cd);b.set("alpha",a);this.P.Qe()&&(this.Ec=n)}};return a});
define("jk",["require","fg","l"],function(a){var b=a("fg"),c=a("l"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g);this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(){this.Ec||(this.Ur(),this.Ec=n)};a.prototype.Ur=C();return a});
define("fS",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Ur=function(){this.R.cd&&!this.g.$f(this.R.cd)&&(this.$e=this.g.create(this.R.cd),this.$e.set("alpha",0),this.g.add(this.$e))};return a});define("fU",["require","fg","jk","bp"],function(a){var b=a("fg"),c=a("jk"),d=a("bp"),a=b.extend(c,function(a,b,d,k){c.call(this,a,b,d,k)});a.prototype.Ur=function(){this.R.nza&&d.zg(this.g.Ra())};return a});
define("ea",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec&&(this.P||(this.P=new d("linear",[new f("alpha",0,1,m)],this.g.C.Iza()?this.R.Nua:this.R.fba)),this.P.fb(a),a=this.P.Bb("alpha"),this.g.$f(this.R.cd).set("alpha",a),this.P.Qe()))this.Ec=n};return a});
define("bt",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec&&(this.P||(this.P=new d("linear",[new f("alpha",1,0,m)],this.R.xua)),this.P.fb(a),a=this.P.Bb("alpha"),this.g.$f(this.R.Kj).set("alpha",a),this.P.Qe()))this.Ec=n};return a});
define("bN",["require","fg","l","kX","bq"],function(a){function b(a,b,c){for(;a<b;)a+=c-b;for(;a>c;)a-=c-b;return a}var c=a("fg"),d=a("l"),f=a("kX"),e=a("bq"),a=c.extend(d,function(a,b,c,e){d.call(this,a,b,c,e);this.P=r;this.Ec=y;this.oJ=0});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec&&(this.P||(this.P=this.oJ<this.R.Ek.length?this.wja(this.oJ):this.gja()),this.P.fb(a),this.kb.rw(this.P.Bb("yaw"),this.P.Bb("pitch")),this.kb.lm(this.P.Bb("hfov")),this.kb.sw(this.P.Bb("stereographicFactor")),
this.P.Qe()))this.P=r,this.oJ++,this.oJ>this.R.Ek.length&&(this.kb.LF(n),this.Ec=n)};a.prototype.gja=function(){var a=b(this.g.Zb(),-180,180),c=this.g.dc();this.g.Pd();var d=this.g.Oe(),p=this.g.m.zi,j=this.R.ui.get("hfov"),j={ma:this.R.ui.get("yaw"),pitch:this.R.ui.get("pitch",c),md:this.g.Pd(),bd:j?this.kb.gz(j):d,zi:0};this.kb.Dxa(this.R.cd,j);j.ma=b(j.ma,a-180,a+180);var l=0.5<Math.abs(d-j.bd),q=Math.abs(p-j.zi),o=0.01<q,l=this.R.Db()?1:Math.max(l?this.R.IN:1,o?this.R.vda*q:1);return new f(o?
"linear":"cubic_in_out",[new e("yaw",a,j.ma,m),new e("pitch",c,j.pitch,m),new e("hfov",d,j.bd,m),new e("stereographicFactor",p,j.zi,m)],l)};a.prototype.wja=function(a){var c=this.R.Ek[a],d=b(this.g.Zb(),-180,180),p=this.g.dc();this.g.Pd();var j=this.g.Oe(),l=this.g.m.zi,q=c.get("targetStereographicFactor",l),o=c.get("targetHfov");if(o)o=this.kb.gz(o);else{for(o=y;a<this.R.Ek.length&&!o;a++)o=this.R.Ek[a].get("targetHfov")!==m;o?o=j:(o=this.kb.gz(this.R.ui.get("hfov",this.kb.wba())),o=j+(o-j)*(l-q))}var a=
c.get("targetYaw",d),t=c.get("targetPitch",p);this.g.Pd();switch(c.get("path")){case "left":a=b(a,d-360,d);break;case "right":a=b(a,d,d+360);break;case "longest":a=b(a,-360,360);a=a>=d?b(a,d,d+360):b(a,d-360,d);break;default:a=b(a,d-180,d+180)}return new f(c.get("easing"),[new e("yaw",d,a,c.get("yawSpeed")),new e("pitch",p,t,c.get("pitchSpeed")),new e("hfov",j,o,c.get("hfovSpeed")),new e("stereographicFactor",l,q,c.get("stereographicFactorSpeed"))],c.get("duration"))};return a});
define("eB",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec){if(!this.P){var b=this.g.dc(),c=this.g.Oe(),i=this.g.m.zi,p=this.R.Fd.get("stereographicFactor",0),j=Math.abs(i-p),l=0<p?this.R.Fd.get("pitch",b):b,q=this.R.Fd.get("hfov"),q=q?this.kb.gz(q):c;0==p&&(q=Math.min(c,this.kb.mN(this.R.cd,q)));this.kb.LF(y);j=this.R.Db()?1:
Math.max(0.5<Math.abs(c-q)?this.R.IN:1,0.01<j?this.R.vda:1);this.P=new d("cubic_in_out",[new f("hfov",c,q,m),new f("pitch",b,l,m),new f("stereographicFactor",i,p,m)],j)}this.P.fb(a);this.kb.lm(this.P.Bb("hfov"));this.kb.sw(this.P.Bb("stereographicFactor"));this.kb.rw(this.g.Zb(),this.P.Bb("pitch"));this.P.Qe()&&(this.kb.eh(this.R.cd),this.kb.rw(this.R.Fd.get("yaw"),this.R.Fd.get("pitch",this.g.dc())),this.Ec=n)}};return a});
define("dC",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Ur=function(){this.g.remove(this.g.$f(this.R.Kj))};return a});
define("o",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Ur=function(){this.kb.eh(this.R.cd);this.kb.rw(this.R.ui.get("yaw"),this.R.ui.get("pitch",this.g.dc()));var a=this.R.ui.get("hfov");a&&(a=this.kb.gz(a),this.kb.lm(a))};return a});
define("fC",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Ur=function(){this.kb.eh(this.R.cd);this.kb.sw(this.R.e_?this.R.Fd.get("stereographicFactor",0):0);this.kb.rw(this.R.Fd.get("yaw"),this.R.Fd.get("pitch",this.g.dc()));var a=this.R.Fd.get("hfov");!a&&!this.R.Kj&&(a=this.kb.wba());a&&(a=this.kb.gz(a),this.kb.lm(a),this.kb.LF(!this.R.e_))};return a});
define("eR",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Ur=function(){this.kb.eh(this.R.cd);this.kb.lm(this.kb.mN(this.R.cd,this.g.Oe()));this.kb.rw(this.g.Zb()+this.R.VF.Mba(),this.g.dc())};a.prototype.jF=R(n);return a});
define("ld",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec){if(!this.P){var b=this.g.Oe(),c=this.kb.mN(this.R.cd,b),i=!this.R.Db()&&0.01<Math.abs(b-c)?this.R.IN:1;this.P=new d("cubic_in_out",[new f("hfov",b,c,m)],i)}this.P.fb(a);this.kb.lm(this.P.Bb("hfov"));this.P.Qe()&&(this.kb.LF(n),this.Ec=n)}};return a});
define("et",["require","fg","l","kX","bq"],function(a){var b=a("fg"),c=a("l"),d=a("kX"),f=a("bq"),a=b.extend(c,function(a,b,d,f){c.call(this,a,b,d,f);this.P=r;this.Ec=y});a.prototype.Cj=Q("Ec");a.prototype.wi=function(a){if(!this.Ec){if(!this.P){var b=this.g.Oe(),c=Math.min(this.kb.mN(this.R.cd,b),b),i=!this.R.Db()&&0.01<Math.abs(b-c)?this.R.IN:1;this.P=new d("cubic_in_out",[new f("hfov",b,c,m)],i);this.kb.LF(y)}this.P.fb(a);this.kb.lm(this.P.Bb("hfov"));this.P.Qe()&&(this.kb.eh(this.R.cd),this.kb.rw(this.g.Zb()+
this.R.VF.Mba(),this.g.dc()),this.Ec=n)}};a.prototype.jF=R(n);return a});
define("bj",["require","fg","l","r"],function(a){var b=a("fg"),c=a("l"),d=a("r"),a=b.extend(c,function(a,b,d,k){c.call(this,a,b,d,k);this.m="not initialized";this.va=0});a.prototype.Cj=function(){return"ended"==this.m};a.prototype.wi=function(a){this.Cj()||("not initialized"==this.m&&this.ZS(),"initialized"==this.m&&(this.Rl.get("ready")||this.Rl.NY())&&this.nra(),"started"==this.m&&this.L(a),1<=this.va&&this.jB())};a.prototype.ZS=function(){this.u8=this.R.wza;this.GA=0.25;this.Oha=0.75;this.kpa=
0.25;this.U$=this.Sla();this.AP=0.5*this.u8;this.ysa=this.u8-2*this.AP;this.xu=1/(this.AP+this.ysa);this.RG=this.xu/this.AP;this.np=0;this.Rl=this.g.$f(this.R.cd);this.aW=this.g.$f(this.R.Kj);this.Ax=this.R.VF.dva();this.m="initialized"};a.prototype.Sla=function(){var a=this.R.VF.get("distance");return a?Math.min(0.99,a/this.R.Kj.get("distanceToFloor")):0.75};a.prototype.nra=function(){this.g.uea(!this.R.Db()&&d.browser()!=d.Ei);this.Rl.Ck();this.m="started"};a.prototype.L=function(a){this.Rl.get("ready")||
this.va<this.kpa?this.va>=1-0.5*this.np*this.np/this.RG?this.np=Math.sqrt(2*(1-this.va)*this.RG):this.np<this.xu&&(this.np=Math.min(this.np+this.RG*a,this.xu)):this.np=Math.max(this.np-this.RG*a,0);this.va=Math.min(Math.max(0,this.va+this.np*a),1);this.Rl.get("ready")||(this.GA=Math.max(this.GA,this.va));this.Tsa(this.va,Math.max(0,Math.min(1,(this.va-this.GA)/(this.Oha-this.GA))))};a.prototype.jB=function(){this.Rl.set("alpha",1);this.g.uea(y);this.m="ended"};a.prototype.Tsa=function(a,b){var c=
(a-1)*this.U$;this.Rl.set("translationX",c*this.Ax.x);this.Rl.set("translationY",c*this.Ax.y);this.Rl.set("translationZ",c*this.Ax.z);this.Rl.get("ready");c=a*this.U$;this.aW.set("translationX",c*this.Ax.x);this.aW.set("translationY",c*this.Ax.y);this.aW.set("translationZ",c*this.Ax.z);this.Rl.set("alpha",Math.max(0.01,Math.min(0.99,b)))};a.prototype.jF=function(){return this.va<this.GA};return a});
define("gR",["require","fg","jk"],function(a){var b=a("fg"),c=a("jk"),a=b.extend(c,function(a,b,e,g,k){c.call(this,a,b,e,g);this.jia=k});a.prototype.Ur=function(){this.jia.call(this.o)};return a});define("eL",["require","fg","l"],function(a){var b=a("fg"),c=a("l"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g)});a.prototype.Cj=function(){var a=this.g.Ra(),b=a&&a.Wy,a=a&&a.$x;return!!b&&!b.get("visible")&&!!a&&!a.get("visible")};return a});
define("E",["require","fg","l"],function(a){var b=a("fg"),c=a("l"),a=b.extend(c,function(a,b,e,g){c.call(this,a,b,e,g);this.vK=r});a.prototype.Cj=function(){this.vK||(this.vK=this.R.cd&&this.g.$f(this.R.cd));return this.vK&&this.vK.get("ready")};a.prototype.jF=R(n);return a});
define("lu","require,bZ,eO,fn,lD,je,fS,fU,ea,bt,bN,eB,dC,o,fC,eR,ld,et,bj,gR,eL,E,fg".split(","),function(a){var b=a("bZ"),c=a("eO"),d=a("fn"),f=a("lD"),e=a("je"),g=a("fS"),k=a("fU"),i=a("ea"),p=a("bt"),j=a("bN"),l=a("eB"),q=a("dC"),o=a("o"),t=a("fC"),s=a("eR"),u=a("ld"),v=a("et"),w=a("bj"),x=a("gR"),z=a("eL"),F=a("E"),A=a("fg").extend(c,function(a,b,d){c.call(this);this.C=a;this.g=b;this.tb=d;this.kb=r;this.L3=this.Fm=this.XC=this.bp=m;this.R=r;this.Le=[]});A.prototype.clear=function(){this.lV(this.Fm);
this.R&&this.lV(this.R.cd);this.XC=this.bp=m;this.H=this.tb=this.g=this.C=this.R=r};A.prototype.start=function(a,b){if(!this.R&&a==this.Fm||this.R&&a==this.R.cd)this.XC=this.bp=m;else{this.bp=a;this.XC=b;this.Le.length==0&&this.hL()}};A.prototype.hide=function(){this.bp=r;!this.R&&this.Fm&&this.hL()};A.prototype.$ua=function(){return this.R&&this.R.cd};A.prototype.hL=function(){this.R=new f(this.g,this.Fm,this.bp,this.XC);this.kb=new d(this.g,this.tb,this.R);this.XC=this.bp=m;this.ac(g);switch(this.R.mode){case f.U_:this.Pc(this.dE);
this.ac(p);this.Pc(this.cE);this.ac(q);this.Pc(this.ov);break;case f.T_:this.Pc(this.yL);this.ac(F);this.ac(k);this.ac(t);this.Pc(this.Py);this.ac(i);this.ac(z);this.ac(j);this.Pc(this.xL);break;case f.pG:this.Pc(this.yL);this.Pc(this.dE);this.ac(p);this.Pc(this.cE);this.ac(q);this.Pc(this.ov);this.ac(F);this.ac(k);this.ac(t);this.Pc(this.Py);this.ac(i);this.ac(z);this.ac(j);this.Pc(this.xL);break;case f.Y0:this.Pc(this.yL);this.Pc(this.dE);this.Pc(this.cE);if(this.R.Db()){this.ac(s);this.Pc(this.Py);
this.ac(w);this.ac(q);this.Pc(this.ov)}else{this.ac(v);this.Pc(this.Py);this.ac(w);this.ac(q);this.Pc(this.ov);this.ac(u);this.ac(k);this.ac(z)}this.Pc(this.xL);break;case f.qm:this.Pc(this.yL);this.ac(F);if(this.R.Db()){this.Pc(this.dE);this.Pc(this.cE);this.ac(o);this.Pc(this.Py);this.ac(e);this.ac(q);this.Pc(this.ov)}else{this.Pc(this.dE);this.Pc(this.cE);this.ac(l);this.Pc(this.Py);this.ac(e);this.ac(q);this.Pc(this.ov);this.ac(k);this.ac(z);this.ac(j)}this.Pc(this.xL)}this.ea()};A.prototype.EW=
function(){this.Fm=this.R.cd;this.L3=this.R.d_;this.R=this.kb=r;this.bp===m?this.Fm?this.hsa(this.Fm,this.L3):this.isa():this.hL()};A.prototype.Sp=function(a){for(;this.Le.length;){var b=this.Le[0];if(this.bp!==m&&this.bp!==this.Fm&&b.jF()){this.lV(this.R.cd);this.Le=[];this.hL();break}else{b.wi(a);this.ea();this.kb.Sp(a);if(b.Cj()){this.Le.shift();this.Le.length==0&&this.EW()}else break}}};A.prototype.cc=C();A.prototype.ac=function(a){this.Le.push(new a(this,this.kb,this.g,this.R))};A.prototype.Pc=
function(a){this.Le.push(new x(this,this.kb,this.g,this.R,a))};A.prototype.lV=function(a){if(a)if(a=this.g.$f(a)){this.g.remove(a);this.ov()}};A.prototype.yL=function(){this.trigger(new b(A.CO,{panorama:this.R.cd}))};A.prototype.ov=function(){this.trigger(new b(A.tO,{panorama:this.R?this.R.Kj:this.Fm,nextPanorama:this.R?this.R.cd:r}))};A.prototype.dE=function(){this.trigger(new b(A.gt,{panorama:this.R.Kj}))};A.prototype.cE=function(){this.trigger(new b(A.ft,{panorama:this.R.Kj,nextPanorama:this.R.cd}))};
A.prototype.xL=function(){this.trigger(new b(A.ht,{panorama:this.R.cd,camera:this.R.d_}))};A.prototype.Py=function(){this.trigger(new b(A.it,{panorama:this.R.cd,camera:this.R.d_}))};A.prototype.hsa=function(a,c){this.trigger(new b(A.bO,{panorama:a,camera:c}))};A.prototype.isa=function(){this.trigger(new b(A.cO))};A.prototype.ea=function(){this.trigger(new b(A.Ja))};A.Ja="request frame";A.CO="request load";A.tO="panorama removed";A.bO="all pending panoramas displayed";A.cO="all pending panoramas hidden";
A.ft="panorama end";A.it="panorama start";A.ht="panorama show";A.gt="panorama hide";return A});
define("js",["require","fg","bZ","eO"],function(a){var b=a("fg"),c=a("bZ"),d=a("eO"),f=b.extend(d,function(a){d.call(this);this.g=a});f.prototype.clear=function(){this.end();this.g=r};f.prototype.wz=function(a){for(var b=this.mI(a),c=a.xM(),d=0;d<b;d++)this.g.$f(this.hS(a,d)).set("alpha",d==c?1:0)};f.prototype.getTime=R(0);f.prototype.start=C();f.prototype.end=C();f.prototype.play=C();f.prototype.pause=C();f.prototype.Dz=C();f.prototype.Mz=C();f.prototype.zN=C();f.prototype.stop=C();f.prototype.qw=
C();f.prototype.Ks=C();f.prototype.GN=C();f.prototype.cc=C();f.prototype.ah=C();f.prototype.mI=function(a){return a.get("frames").length};f.prototype.hS=function(a,b){return a.get("frames")[b]};f.prototype.ea=function(){this.trigger(new c(f.Ja))};f.prototype.Ul=function(a,b,d,i,p,j){this.trigger(new c(f.Nj,{time:a,duration:b,transitionPosition:d,transitionLength:i,steps:p,selectedStep:j}))};f.prototype.Tg=function(){this.trigger(new c(f.sb,{state:this.ah()}))};f.Ja="request frame";f.mfa="frame display";
f.nfa="frame hide";f.Nj="time change";f.sb="playback state change";return f});
define("be","require,jquery.mod,do,fg,ll,ge,bZ,js,fk,ed,jt,bi,id".split(","),function(a){a("jquery.mod");var b=a("do"),c=a("fg"),d=a("ll"),f=a("ge");a("bZ");var e=a("js"),g=a("fk"),k=a("ed");a("jt");var i=a("bi"),p=a("id"),j=c.extend(e,function(a){e.call(this,a);this.eI=r;this.TR=this.fu=0;this.N=this.vu=r;this.nB=m;this.PU=y;this.ba=360;this.Paa=180;this.pa=0.5;this.kk=0.2;this.Ro=0.45;this.Z5=5E3;this.d6=1;this.jJ=[[0.5,0.25],[0.5,0.375],[0.25,0.5],[0.375,0.5],[0.5,0.5],[0.625,0.5],[0.75,0.5],[0.5,
0.625],[0.5,0.75]];this.ena=[0.05,0.1,0.05,0.1,0.4,0.1,0.05,0.1,0.05]});j.prototype.wz=function(a){e.prototype.wz.call(this,a);this.yD(a)};j.prototype.start=function(a){this.yD(a);this.ea()};j.prototype.end=function(){this.yD(r)};j.prototype.yD=function(a){if(this.N!=a){if(this.N){this.vsa();this.N=r;this.zsa()}if(this.N=a){this.Lha();this.ba=a.get("hfov",360);this.Paa=a.get("vfov",180);this.pa=a.get("pitch",0);this.TU=this.Wu=m;this.Zma(a);this.va=0.5}}};j.prototype.GN=function(){this.PU=y};j.prototype.qw=
function(a){this.va=a/j.tA;this.ea();this.PU=n};j.prototype.Ks=function(a){this.qw(a)};j.prototype.Ul=function(){var a=this.mI(this.N),b=this.va*(a-1),c=Math.max(0,Math.min(a-2,Math.floor(b))),d=m;b-c<0.01?d=c:b-c>0.99&&(d=c+1);e.prototype.Ul.call(this,this.va*j.tA,j.tA,this.va*j.tA,j.tA,a,d)};j.prototype.cc=function(a){if(this.N){var b=this.g.Zb(),c=this.g.dc(),d=this.g.Pd(),e=0;if(this.Wu!==m&&this.TU!==m&&this.E8!==m)var f=b-this.Wu,j=c-this.TU,p=d-this.E8,e=Math.sqrt(f*f+j*j+p*p)*1E3/a;this.Wu=
b;this.TU=c;this.E8=d;for(var f=this.mI(this.N),x=this.va*(f-1),j=Math.max(0,Math.min(f-2,Math.floor(x))),p=j+1,x=1-(x-j),z=1-x,F=[],A=0;A<f;A++)F.push(0);F[p]=z;F[j]=z<1?1:0;for(A=0;A<f;A++)this.g.$f(this.hS(this.N,A)).set("alpha",F[A]);this.Ul();if(this.eI&&(e<=this.d6||i.isPresenting())&&!this.PU){var A=Math.PI/180,e=180/Math.PI,F=this.g.Aa(),K=this.g.eb(),E=new k;E.Wp(-d*A);E.Jn(-c*A);E.Vp(-b*A);b=[];for(A=0;A<this.jJ.length;A++){d=this.g.unproject(new g(this.jJ[A][0]*F,this.jJ[A][1]*K,0)).jca();
d.apply(E);c=d.Zb()*e;d=d.dc()*e;b.push(Math.round((90-d)*this.TR/180)*this.fu+Math.round((c+180)*this.fu/360))}c=[];for(A=0;A<f;A++){d=this.eI[A];for(F=e=0;F<this.jJ.length;F++)e=e+this.ena[F]*d[b[F]];c.push(e)}A=c[j];b=c[p];j=x*c[j]+z*c[p];a=Math.min(1/f,a/this.Z5);f=this.va;p=Math.max.apply(Math,c);x=Math.min.apply(Math,c);j<this.kk&&j<p?f=b>j?f+a:f-a:j>this.Ro&&j>x&&(f=A<j?f-a:f+a);f=Math.min(1,Math.max(0,f));if(this.va!=f){this.va=f;this.ea()}}}};j.prototype.Zma=function(a){var c=b(a.get("frames",
[])).map(function(a){return a.get("thumbnailUrl")});this.vu=b(c).map(function(a){var b=r;if(a){b=new p(f.Sj);b.bind(d.T,this.n7,this);b.bind(d.ne,this.o7,this)}return b},this);b(this.vu).each(function(a,b){a&&a.load(c[b])})};j.prototype.zsa=function(){this.I3();this.eI=r};j.prototype.Ona=function(){this.fu=150;this.vu.map(function(a){if(a)this.fu=Math.min(a.ad()*360/this.ba,this.fu)},this);this.TR=Math.round(this.fu/2);this.eI=this.vu.map(function(a){return this.sja(a,this.fu,this.TR,this.ba,this.Paa,
this.pa)},this);this.I3()};j.prototype.sja=function(a,b,c,d,e,f){var g=document.createElement("canvas");g.width=b;g.height=c;var i=g.getContext("2d");i.fillStyle="#000000";i.fillRect(0,0,b,c);if(a){a=a.ve();d=Math.round(b*d/360);i.drawImage(a,(b-d)*0.5,Math.round(c*(90-(f+e*0.5))/180),d,Math.round(c*e/180))}b=[];g=i.getImageData(0,0,g.width,g.height);for(c=i=0;i<g.height;i++)for(e=0;e<g.width;e++,c=c+4)b.push((0.299*g.data[c]+0.587*g.data[c+1]+0.114*g.data[c+2])/255);return b};j.prototype.I3=function(){b(this.vu).each(function(a){if(a){a.unbind(d.T,
this.n7,this);a.unbind(d.ne,this.o7,this);a.cancel()}},this);this.vu=r};j.prototype.n7=function(){b(this.vu).filter(function(a){return a&&!a.Mp()}).length==0&&this.Ona()};j.prototype.o7=C();j.prototype.Lha=function(){this.N.bind(d.D("minimumLuminance"),this.Yo,this);this.N.bind(d.D("maximumLuminance"),this.Yo,this);this.N.bind(d.D("luminanceChangeTime"),this.Yo,this);this.N.bind(d.D("maxLuminanceChangeSpeed"),this.Yo,this);this.Yo()};j.prototype.vsa=function(){this.N.unbind(d.D("minimumLuminance"),
this.Yo,this);this.N.unbind(d.D("maximumLuminance"),this.Yo,this);this.N.unbind(d.D("luminanceChangeTime"),this.Yo,this);this.N.unbind(d.D("maxLuminanceChangeSpeed"),this.Yo,this)};j.prototype.Yo=function(){this.kk=this.N.get("minimumLuminance");this.Ro=this.N.get("maximumLuminance");if(this.kk==m&&this.Ro==m){this.kk=0.2;this.Ro=0.45}else this.kk==m?this.kk=Math.min(0.2,this.Ro):this.kk==m?this.Ro=Math.max(0.45,this.kk):this.kk=Math.min(this.kk,this.Ro);this.Ro=Math.min(1,Math.max(0,this.Ro));this.kk=
Math.min(1,Math.max(0,this.kk));this.Z5=Math.max(100,this.N.get("luminanceChangeTime",5E3));this.d6=this.N.get("maxLuminanceChangeSpeed",1);this.ea()};j.tA=1E3;return j});
define("kp",["require","fg","u","fu","js"],function(a){var b=a("fg"),c=a("u"),d=a("fu"),f=a("js"),a=b.extend(f,function(a){f.call(this,a);this.cI=this.dI=r;this.Gg=this.pf=5E3;this.rc=m;this.pb=this.pf;this.bk=1;this.N=r;this.pu=y});a.prototype.start=function(a){this.N=a;this.pu=y;this.LI=n;this.dI=c.watch(this.N,"frameDisplayTime",this.UW,this);this.cI=c.watch(this.N,"frameTransitionTime",this.UW,this);this.bk=this.mI(this.N);this.rc=this.N.xM()*(this.pf+this.Gg);this.UW(n);this.Ul();this.ea();this.Tg()};
a.prototype.UW=function(a){var b=Math.max(100,this.N.get("frameDisplayTime",5E3)),c=Math.max(100,this.N.get("frameTransitionTime",5E3));if(this.pf!=b||this.Gg!=c||a){var a=this.Hx(),d=this.Xka();this.cS();this.pf=b;this.Gg=c;1<this.bk?(this.rc=a*(this.pf+this.Gg)+d*this.pf+d*this.Gg,this.pb=this.bk*(this.pf+this.Gg)):(this.rc=d*this.pf,this.pb=this.pf)}};a.prototype.Hx=function(){return 1<this.bk?Math.floor(this.rc/(this.pf+this.Gg)):0};a.prototype.Yka=function(){return 1<this.bk?(this.Hx()+1)%this.bk:
0};a.prototype.Xka=function(){return 1<this.bk?Math.max(0,Math.min(1,this.rc-this.Hx()*(this.pf+this.Gg))):this.rc/this.pf};a.prototype.cS=function(){return 1<this.bk?Math.max(0,Math.min(1,(this.rc-(this.Hx()*(this.pf+this.Gg)+this.pf))/this.Gg)):0};a.prototype.Era=function(a){var b=Math.floor(a/this.Gg);return b*(this.pf+this.Gg)+this.pf+(a-b*this.Gg)};a.prototype.M$=function(a){var b=Math.floor(a/(this.pf+this.Gg)),a=Math.max(0,a-b*(this.pf+this.Gg)-this.pf);return b*this.Gg+a};a.prototype.play=
function(){this.pu&&(this.pu=y,this.LI&&this.ea(),this.Tg())};a.prototype.pause=function(){this.pu=n;this.Tg()};a.prototype.Dz=function(){this.pause()};a.prototype.Mz=function(){this.play()};a.prototype.end=function(){this.LI=y;this.N=r;this.dI&&(this.dI.unwatch(),this.dI=r);this.cI&&(this.cI.unwatch(),this.cI=r);this.Tg()};a.prototype.qw=function(a){this.rc=a;this.ea()};a.prototype.Ks=function(a){this.rc=this.Era(a);this.ea();this.pause()};a.prototype.cc=function(a){if(this.LI){this.pu||(this.rc+=
a);this.rc%=this.pb;for(var a=this.Hx(),b=this.Yka(),c=this.cS(),d=b>a?c:1,c=b>a?1:1-c,f=0;f<this.bk;f++){var j;j=f==a?c:f==b?d:0;var l=this.g.$f(this.hS(this.N,f));l.get("alpha")!=j&&(0<j&&1>j&&l.Ck(),l.set("alpha",j))}this.Ul();this.pu||this.ea()}};a.prototype.ah=function(){return this.LI?this.pu?d.uc:d.O:d.I};a.prototype.Tg=function(){f.prototype.Tg.call(this,this.ah())};a.prototype.Ul=function(){var a=this.rc,b=this.pb,c=this.M$(this.rc),d=this.M$(this.pb),p=this.bk+1,j=0===this.cS()?this.Hx():
m;f.prototype.Ul.call(this,a,b,c,d,p,j)};return a});define("bv",["require","fg","js"],function(a){var b=a("fg"),c=a("js");return b.extend(c,function(a){c.call(this,a)})});
define("jA",["require","fg","ll","fu","js"],function(a){var b=a("fg"),c=a("ll"),d=a("fu"),f=a("js"),a=b.extend(f,function(a){f.call(this,a);this.rd=y});a.prototype.wz=C();a.prototype.start=function(a){this.end();this.N=a;this.N.set("mute",this.rd);this.N.get("autoplay")&&this.N.set("state",d.O);this.co()};a.prototype.getTime=function(){return this.N?this.N.get("currentTime"):0};a.prototype.ah=function(){return this.N?this.N.get("state"):d.I};a.prototype.play=function(){this.N&&this.N.set("state",
d.O)};a.prototype.pause=function(){this.N&&this.N.set("state",d.uc)};a.prototype.zN=function(){this.N&&this.N.set("state",d.uc)};a.prototype.stop=function(){this.N&&this.N.set("state",d.I)};a.prototype.end=function(){this.N&&(this.jp(),this.N=r)};a.prototype.qw=function(a){this.N&&this.N.set("state",d.O);this.N&&this.N.set("currentTime",a)};a.prototype.Jd=function(a){this.rd=a;this.N&&this.N.set("mute",this.rd)};a.prototype.co=function(){this.N.bind(c.D("currentTime"),this.hd,this,n);this.N.bind(c.D("duration"),
this.ej,this,n);this.N.bind(c.D("state"),this.uh,this,n);this.N.get("state")!=d.I&&this.Tg()};a.prototype.jp=function(){this.N.unbind(c.D("currentTime"),this.hd,this,n);this.N.unbind(c.D("duration"),this.ej,this,n);this.N.unbind(c.D("state"),this.uh,this,n)};a.prototype.uh=function(){this.Tg()};a.prototype.hd=function(){this.Ul()};a.prototype.ej=function(){this.Ul()};a.prototype.Ul=function(){this.N&&f.prototype.Ul.call(this,this.N.get("currentTime"),this.N.get("duration"))};return a});
define("t","require,fg,fu,bZ,eO,dW,js,be,kp,bv,jA".split(","),function(a){var b=a("fg");a("fu");var c=a("bZ"),d=a("eO"),f=a("dW"),e=a("js"),g=a("be"),k=a("kp"),i=a("bv"),p=a("jA"),j=b.extend(d,function(a){d.call(this);this.g=a;this.CT=this.FH(k);this.GS=this.FH(g);this.OL=this.FH(p);this.eW=this.FH(i);this.lc=r});j.prototype.clear=function(){this.wH(this.CT);this.CT=r;this.wH(this.GS);this.GS=r;this.wH(this.OL);this.OL=r;this.wH(this.eW);this.g=this.lc=this.eW=r};j.prototype.FH=function(a){a=new a(this.g);
a.bind(e.Ja,this.Zc,this,n);a.bind(e.Nj,this.Ir,this,n);a.bind(e.sb,this.gd,this,n);return a};j.prototype.wH=function(a){a.unbind(e.Ja,this.Zc,this);a.unbind(e.Nj,this.Ir,this);a.unbind(e.sb,this.gd,this);a.clear()};j.prototype.mT=function(a,b){return f.qb(b,a)};j.prototype.D4=function(a){return this.mT(a,"HDRPanorama")?this.GS:this.mT(a,"LivePanorama")?this.CT:this.mT(a,"VideoPanorama")?this.OL:this.eW};j.prototype.wz=function(a){(this.lc=this.D4(a))&&this.lc.wz(a)};j.prototype.start=function(a){this.Zc();
(this.lc=this.D4(a))&&this.lc.start(a)};j.prototype.ah=function(){if(this.lc)return this.lc.ah()};j.prototype.getTime=function(){return this.lc?this.lc.getTime():0};j.prototype.play=function(){this.lc&&this.lc.play()};j.prototype.pause=function(){this.lc&&this.lc.pause()};j.prototype.Dz=function(){this.lc&&this.lc.Dz()};j.prototype.Mz=function(){this.lc&&this.lc.Mz()};j.prototype.zN=function(){this.lc&&this.lc.zN()};j.prototype.stop=function(){this.lc&&this.lc.stop();this.trigger(new c(j.Nj,{duration:0,
time:0,steps:m,selectedStep:m}))};j.prototype.end=function(){if(this.lc){this.lc.end();this.lc=r}};j.prototype.qw=function(a){this.lc&&this.lc.qw(a)};j.prototype.Ks=function(a){this.lc&&this.lc.Ks(a)};j.prototype.GN=function(){this.lc&&this.lc.GN()};j.prototype.cc=function(a){this.lc&&this.lc.cc(a)};j.prototype.Jd=function(a){this.OL.Jd(a)};j.prototype.Zc=function(){this.trigger(new c(j.Ja))};j.prototype.Ir=function(a){this.trigger(new c(j.Nj,a.data))};j.prototype.gd=function(a){this.trigger(new c(j.sb,
a.data))};j.Ja="request frame";j.mfa="frame display";j.nfa="frame hide";j.Nj="time change";j.sb="playback state change";return j});
define("jB",["require","fg","ll","eO","iL"],function(a){var b=a("fg"),c=a("ll"),d=a("eO"),f=a("iL"),a=b.extend(d,function(a){d.call(this);this.g=a;this.$e=this.N=r});a.prototype.start=function(a){this.N=a;this.$e=this.g.$f(this.N);this.$e.bind(c.T,this.Rf,this,n);this.$e.bind(c.vc,this.ap,this,n);this.$e.get("ready")?this.trigger(c.Ib,{panorama:this.N}):this.$e.bind(c.Ib,this.HJ,this,n);this.$e.set("loadingActive",n)};a.prototype.stop=function(){this.N=r;this.$e&&(this.$e.unbind(c.Ib,this.HJ,this),
this.$e.unbind(c.T,this.Rf,this),this.$e.unbind(c.vc,this.ap,this),this.$e.set("loadingActive",y),this.$e=r,this.trigger(c.oe))};a.prototype.clear=function(){this.stop()};a.prototype.HJ=function(){this.$e.unbind(c.Ib,this.HJ,this);this.trigger(c.Ib,{panorama:this.N})};a.prototype.Rf=function(){this.$e.unbind(c.Ib,this.HJ,this);this.$e.unbind(c.T,this.Rf,this);this.$e.unbind(c.vc,this.ap,this);this.$e=r;this.trigger(c.T,{panorama:this.N});this.N=r;this.trigger(c.oe)};a.prototype.ap=function(a){this.trigger(new f(c.vc,
a.Ih))};return a});
define("hD","require,fg,ll,bZ,eO,I".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("I"),g=b.extend(f,function(a){f.call(this);this.g=a;this.rl=this.N=this.Of=r;this.pa=this.$=0;this.ba=Math.PI*0.5});g.prototype.clear=function(){this.stop();this.Y8();this.Of=this.g=r};g.prototype.PZ=function(a){if(this.Of!=a){this.Y8();this.yH();this.Of=a;this.Y1();this.Zga()}};g.prototype.Zga=function(){this.Of&&this.Of.bind(c.D("map"),this.p7,this,y)};g.prototype.Y8=function(){this.Of&&this.Of.unbind(c.D("map"),
this.p7,this,y)};g.prototype.stop=function(){this.yH();this.N=r};g.prototype.cc=function(){this.$=this.g.Zb();this.pa=this.g.dc();this.ba=this.g.Oe();this.Of&&this.rl&&this.Of.Ij(this.rl,this.$,this.pa,this.ba)};g.prototype.p7=function(){if(this.N){this.yH();(this.rl=this.t9(this.N,this.Of.get("map",r),y))&&this.i$()}};g.prototype.display=function(a){if(this.N!=a){this.yH();this.N=a;this.Y1()}};g.prototype.hide=function(a){this.N==a&&this.stop()};g.prototype.yH=function(){if(this.rl){this.dma();this.rl=
r}};g.prototype.Y1=function(){if(this.Of&&this.N)(this.rl=this.t9(this.N,this.Of.get("map",r),n))&&this.i$()};g.prototype.t9=function(a,b,c){for(var a=a.get("mapLocations",[]),d=0;d<a.length;d++){var e=a[d];if(e.get("map")==b)return e}return c&&a.length>0?a[0]:r};g.prototype.i$=function(){this.Of.Qta(this.rl);this.Of.bind(e.hh,this.e9,this,n);this.Of.Ij(this.rl,this.$,this.pa,this.ba)};g.prototype.dma=function(){if(this.Of){this.Of.uxa(this.rl);this.Of.unbind(e.hh,this.e9,this)}};g.prototype.e9=function(a){this.trigger(new d(g.hh,
{yawDelta:a.data.yawDelta}))};g.hh="request yaw change";return g});
define("eu",["require","fg","bZ","eO","dQ"],function(a){var b=a("fg"),c=a("bZ"),d=a("eO"),f=a("dQ"),e=b.extend(d,function(a){d.call(this);this.g=a;this.g.bind(f.BO,this.N7,this,n)});e.prototype.clear=function(){this.g.unbind(f.BO,this.N7,this,n);this.g=r};e.prototype.La=function(){this.g.La()};e.prototype.N7=function(a){a=a.data.frameTime;this.trigger(new c(e.Tk,{frameTime:a}));this.trigger(new c(e.Uk,{frameTime:a}))};e.Tk="frameStart";e.Uk="positionSet";return e});
define("gv",["require","r","it"],function(a){function b(){this.ha=this.X=0;this.ba=90;this.ei="landscape";this.rU=y;this.GB=c.Xa()}var c=a("r"),d=a("it");b.prototype.sea=function(a){this.ba=this.Gba(a)};b.prototype.Gba=function(a){return this.GB&&"portrait"==this.ei?d.Fv(a,this.ha,this.X):a};b.prototype.nva=function(a){return this.GB&&"portrait"==this.ei?d.Hk(a,this.X,this.ha):a};b.prototype.lm=function(a){return this.ba=this.GB&&this.rU?d.Fv(a,this.ha,this.X):a};b.prototype.Yca=function(){return this.GB&&
this.rU};b.prototype.Fp=function(){return this.GB&&"portrait"==this.ei};b.prototype.Oe=Q("ba");b.prototype.fM=function(a){return d.Fv(a,this.ha,this.X)};b.prototype.setSize=function(a,b){this.X=a;this.ha=b;var c=this.tla();this.rU=this.ei!=c;this.ei=c};b.prototype.tla=function(){return 0===this.X||0===this.ha?"landscape":this.X<this.ha?"portrait":"landscape"};return b});
define("kE",["require","fg","fW","bZ","eO"],function(a){var b=a("fg"),c=a("fW"),d=a("bZ"),f=a("eO"),e=b.extend(f,function(a){f.call(this);this.g=a;this.W=y;this.Mo=this.Mo.bind(this);this.Tb=this.g.Tb});e.prototype.clear=function(){this.Tb=this.g=r};e.prototype.nd=function(a){this.W!=a&&(this.W&&document.removeEventListener("keyup",this.Mo),(this.W=a)&&document.addEventListener("keyup",this.Mo))};e.prototype.Mo=function(a){"translate"==this.Tb.get("arrowKeysAction")&&(a.which==c.iG&&!a.shiftKey?this.trigger(new d(e.rO)):
a.which==c.JG&&!a.shiftKey&&this.trigger(new d(e.sO)))};e.sO="moveForward";e.rO="moveBackward";return e});
define("gF","require,do,fg,ll,bZ,eO,kE".split(","),function(a){a("do");var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("kE"),a=b.extend(f,function(a){f.call(this);this.g=a;this.aj=new e(a);this.aj.bind(e.sO,this.e7,this,n);this.aj.bind(e.rO,this.d7,this,n)});a.prototype.clear=function(){this.aj.unbind(e.sO,this.e7,this,n);this.aj.unbind(e.rO,this.d7,this,n);this.aj.clear();this.aj=r};a.prototype.Ls=function(a){this.aj.nd(a)};a.prototype.eh=P("N");a.prototype.end=function(){this.N=r};a.prototype.e7=
function(a){this.faa(a);(a=this.s9(this.g.Zb(),this.R4()))&&a.trigger(c.Ii)};a.prototype.d7=function(a){this.faa(a);(a=this.s9(this.g.Zb()-180,this.R4()))&&a.trigger(c.Ii)};a.prototype.faa=function(a){this.g.Ra().trigger(new d(c.nG,{Eea:a}))};a.prototype.R4=function(){return this.g.Tb.get("keyboardTranslateSelectionAngle")};a.prototype.s9=function(a,b){var c,d;if(!this.N)return r;c!==m||(c=-90);d!==m||(d=360);var e=a-b*0.5,f=a+b*0.5,g=Math.max(-90,c-d*0.5),t=Math.max(90,c+d*0.5);d=this.N.get("adjacentPanoramas",
[]).slice();d=d.filter(function(b){if(!b.get("enabled"))return y;b=this.sB(b);if(!b)return y;var c;c=b.ma;for(var d=a-180,i=a+180;c<d;)c=c+(i-d);for(;c>i;)c=c-(i-d);b=b.pitch;return e<=c&&c<=f&&g<=b&&b<=t}.bind(this));if(d.length==0)return r;d.sort(function(b,d){var e=this.sB(b),f=this.sB(d);return(a-e.ma)*(a-e.ma)+(c-e.pitch)*(c-e.pitch)-((a-f.ma)*(a-f.ma)+(c-f.pitch)*(c-f.pitch))}.bind(this));return d[0]};a.prototype.sB=function(a){var b=a.get("yaw"),a=a.get("distance");if(b===m||a===m)return r;
var c=this.N.get("distanceToFloor");return{ma:b,pitch:-90+Math.atan2(a,c)*g}};var g=180/Math.PI;return a});
define("iY","require,fg,ll,bZ,eO,cy,bg,lu,t,jB,hD,eu,gv,gF,cU".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("cy"),g=a("bg"),k=a("lu"),i=a("t"),p=a("jB"),j=a("hD"),l=a("eu"),q=a("gv"),o=a("gF"),t=a("cU"),s=b.extend(f,function(a,b){f.call(this);this.C=a;this.g=b;this.g.set("visible",y);this.tb=new q;this.fe=new l(this.g);this.de=new p(this.g);this.Va=new k(this.C,this.g,this.tb);this.oa=new g(this.g,this.tb);this.Cd=new i(this.g);this.So=new j(this.g);this.kc=new e(this.g);
this.wL=new o(this.g);this.fe.bind(l.Tk,this.Er,this,n);this.fe.bind(l.Uk,this.Fr,this,n);this.de.bind(c.Ib,this.l7,this,n);this.de.bind(c.oe,this.rC,this,n);this.de.bind(c.vc,this.Vo,this,n);this.Va.bind(k.Ja,this.Zc,this,n);this.Va.bind(k.CO,this.m7,this,n);this.Va.bind(k.tO,this.y7,this,n);this.Va.bind(k.bO,this.C6,this,n);this.Va.bind(k.cO,this.D6,this,n);this.Va.bind(k.it,this.AC,this,n);this.Va.bind(k.gt,this.Dr,this,n);this.Va.bind(k.ht,this.Zo,this,n);this.Va.bind(k.ft,this.zC,this,n);this.oa.bind(g.Ja,
this.Zc,this,n);this.oa.bind(g.gh,this.xl,this);this.oa.bind(g.Sk,this.G7,this);this.oa.bind(g.sb,this.gd,this,n);this.oa.bind(g.Ae,this.Cl,this,n);this.oa.bind(g.ze,this.Bl,this,n);this.Cd.bind(i.Ja,this.Zc,this,n);this.Cd.bind(i.Nj,this.Ir,this,n);this.Cd.bind(i.sb,this.gd,this,n);this.So.bind(j.hh,this.r7,this,n)});s.prototype.clear=function(){this.de.clear();this.fe.clear();this.oa.clear();this.Va.clear();this.Cd.clear();this.So.clear();this.kc.clear();this.de.unbind(c.Ib,this.l7,this);this.de.unbind(c.oe,
this.rC,this);this.de.unbind(c.vc,this.Vo,this);this.fe.unbind(l.Tk,this.Er,this);this.fe.unbind(l.Uk,this.Fr,this);this.Va.unbind(k.Ja,this.Zc,this);this.Va.unbind(k.CO,this.m7,this);this.Va.unbind(k.tO,this.y7,this);this.Va.unbind(k.bO,this.C6,this);this.Va.unbind(k.cO,this.D6,this);this.Va.unbind(k.it,this.AC,this);this.Va.unbind(k.gt,this.Dr,this);this.Va.unbind(k.ht,this.Zo,this);this.Va.unbind(k.ft,this.zC,this);this.oa.unbind(g.pfa,this.Zc,this);this.oa.unbind(g.gh,this.xl,this);this.oa.unbind(g.Sk,
this.G7,this);this.oa.unbind(g.sb,this.gd,this,n);this.oa.unbind(g.Ae,this.Cl,this);this.oa.unbind(g.ze,this.Bl,this);this.Cd.unbind(i.Ja,this.Zc,this);this.Cd.unbind(i.Nj,this.Ir,this);this.Cd.unbind(i.sb,this.gd,this);this.So.unbind(j.hh,this.r7,this);this.C=this.g=this.wL=this.kc=this.So=this.Cd=this.Va=this.oa=this.fe=this.de=r};s.prototype.PZ=function(a){this.So.PZ(a)};s.prototype.eh=function(a,b,c){this.g.set("visible",n);this.Cd.zN();a.set("currentTime",c);this.Va.start(a,b)};s.prototype.rz=
function(){return this.de.N||this.Va.$ua()||this.Va.Fm};s.prototype.Xp=function(){this.de.stop();this.Cd.end();this.oa.end();this.Va.hide();this.So.stop();this.kc.end();this.wL.end()};s.prototype.Mz=function(){this.oa.resume();this.Cd.Mz()};s.prototype.Dz=function(){this.oa.pause();this.Cd.Dz()};s.prototype.play=function(){this.oa.play();this.kc.play();this.Cd.play()};s.prototype.pause=function(){this.oa.pause();this.kc.pause();this.Cd.pause()};s.prototype.stop=function(){this.oa.stop();this.kc.stop();
this.Cd.stop()};s.prototype.Ls=function(a){this.oa.Ls(a);this.wL.Ls(a)};s.prototype.getTime=function(){return this.Cd.getTime()};s.prototype.moveTo=function(a,b,c,d,e){this.oa.moveTo(a,b,c,d,e)};s.prototype.Zb=function(){return this.g?this.g.Zb():m};s.prototype.dc=function(){return this.g?this.g.dc():m};s.prototype.Pd=function(){return this.g?this.g.Pd():m};s.prototype.Oe=function(){return this.g?this.tb.nva(this.g.Oe()):m};s.prototype.kY=function(){return this.g?this.g.kY():m};s.prototype.lY=function(){return this.g?
this.g.lY():m};s.prototype.gd=function(){var a=this.Cd.ah()||this.oa.ah();this.trigger(new d(s.sb,{state:a}))};s.prototype.dh=function(a){this.oa.dh(a)};s.prototype.GF=function(a){this.oa.GF(a)};s.prototype.Ns=function(a){this.oa.Ns(a)};s.prototype.HF=function(a){this.oa.HF(a)};s.prototype.Jd=function(a){this.Cd.Jd(a)};s.prototype.tw=function(a){this.oa.tw(a)};s.prototype.Bva=function(a,b){var c=t.get(a,b,this.g.Zb(),this.g.dc(),this.g.Pd(),this.g.Oe(),this.g.Aa(),this.g.eb());return c?{x:c.x,y:c.y}:
r};s.prototype.sva=function(a,b){var c=t.Gza(a,b,this.g);return c?{yaw:c.ma,pitch:c.pitch}:r};s.prototype.AZ=function(){this.g.AZ()};s.prototype.m7=function(a){this.de.start(a.data.panorama)};s.prototype.Vo=function(a){this.g.nN(n);this.trigger(new d(s.sm,{percent:a.Ih}))};s.prototype.l7=function(a){this.Cd.end();this.wL.eh(a.data.panorama)};s.prototype.rC=function(){this.g.nN(y);this.trigger(new d(s.$s))};s.prototype.Zc=function(){this.fe.La()};s.prototype.Er=function(a){a=a.data.frameTime;this.tb.setSize(this.g.Aa(),
this.g.eb());this.Va.Sp(a);this.oa.Sp(a)};s.prototype.Fr=function(a){a=a.data.frameTime;this.Va.cc(a);this.oa.cc(a);this.Cd.cc(a);this.So.cc(a);this.kc.cc(a)};s.prototype.AC=function(a){this.So.display(a.data.panorama);this.Cd.wz(a.data.panorama);this.trigger(new d(s.it,{panorama:a.data.panorama}))};s.prototype.y7=function(a){this.So.hide(a.data.panorama)};s.prototype.C6=function(a){this.Cd.start(a.data.panorama);this.kc.start(a.data.panorama)};s.prototype.D6=function(){this.Cd.end();this.g.set("visible",
y)};s.prototype.zC=function(a){this.oa.end();this.kc.end(a.data.nextPanorama);this.trigger(new d(s.ft,{panorama:a.data.panorama}))};s.prototype.Zo=function(a){this.oa.start(a.data.panorama,a.data.camera);this.trigger(new d(s.ht,{panorama:a.data.panorama}))};s.prototype.Dr=function(a){this.trigger(new d(s.gt,{panorama:a.data.panorama}))};s.prototype.r7=function(a){this.oa.UZ(a.data.yawDelta,0)};s.prototype.xl=function(a){this.trigger(new d(s.gh,a.data))};s.prototype.G7=function(a){this.trigger(new d(s.Sk,
a.data))};s.prototype.Cl=function(){this.Cd.GN();this.trigger(new d(s.Ae))};s.prototype.Bl=function(){this.trigger(new d(s.ze))};s.prototype.kea=function(a){this.Cd.qw(a)};s.prototype.Ks=function(a){this.Cd.Ks(a)};s.prototype.Ir=function(a){this.trigger(new d(s.Nj,a.data))};s.sm="loadingProgress";s.$s="loadingEnd";s.gh="movementChange";s.Sk="positionChange";s.it="panoramaStart";s.ft="panoramaEnd";s.ht="panoramaShow";s.gt="panoramaHide";s.sb="playbackStateChange";s.Ae="userInteractionStart";s.ze="userInteractionEnd";
s.Nj="timeChange";return s});
define("kZ","require,do,jquery.mod,fg,jd,ll,bZ,fu,ce,dW,jT,cu,dk,fE,iY,dr,dQ,fT,gL,bi,dm,fm".split(","),function(a){a("do");a("jquery.mod");var b=a("fg");a("jd");var c=a("ll"),d=a("bZ"),f=a("fu"),e=a("ce"),g=a("dW"),k=a("jT"),i=a("cu"),p=a("dk"),j=a("fE"),l=a("iY"),q=a("dr"),o=a("dQ"),t=a("fT"),s=a("gL"),u=a("bi"),v=a("dm"),w=a("fm"),x=b.extend(p,function(){p.call(this,"panorama");p.prototype.set.call(this,"zoomEnabled",n);p.prototype.set.call(this,"surfaceSelectionEnabled",y);p.prototype.set.call(this,
"surfaceSelectionHorizontalAngle",90);p.prototype.set.call(this,"surfaceSelectionVerticalAngle",180);p.prototype.set.call(this,"adjacentPanoramaPositionsEnabled",y);p.prototype.set.call(this,"fxaaEnabled",y);p.prototype.set.call(this,"aaEnabled",y);this.oW=this.RS=this.dr=this.dJ=this.kQ=this.Lr=this.yf=this.MP=y;this.xS=n;this.ll=this.Rx=this.DH=y;this.fI=this.VR=this.rc=this.pb=0;this.HU=this.JU=m;this.TT=n;this.Vf=f.I;this.o=this.g=r;this.o6={};for(var a in x.bo)this.o6[a]=this.vja(a);this.gH=
new k(this,"buttonToggleGyroscope",v.Mh);this.gH.bind(c.Bg,function(){this.set("gyroscopeEnabled",n)},this);this.gH.bind(c.Lh,function(){this.set("gyroscopeEnabled",y)},this);this.gH.set("pressed",this.get("gyroscopeEnabled")&&t.available);this.Rha=new k(this,"buttonCardboardView",v.Wc);this.Rha.bind(c.U,function(){this.set("viewMode",x.wq)},this,n);this.fia=new k(this,"buttonVRView",v.Wc);this.fia.bind(c.U,function(){this.set("viewMode",x.wq)},this,n);u.bind(c.aa,function(){this.eaa("viewMode");
this.trigger(x.R_)},this,n);this.hH=new k(this,"buttonToggleHotspots",v.Mh);this.hH.bind(c.Bg,function(){this.set("hotspotsEnabled",n)},this);this.hH.bind(c.Lh,function(){this.set("hotspotsEnabled",y)},this);this.hH.set("pressed",this.get("hotspotsEnabled"));this.jH=new k(this,"buttonToggleSurfaceSelection",v.Mh);this.jH.bind(c.Bg,function(){this.set("surfaceSelectionEnabled",n)},this);this.jH.bind(c.Lh,function(){this.set("surfaceSelectionEnabled",y)},this);this.jH.set("pressed",this.get("surfaceSelectionEnabled"));
this.dia=new k(this,"buttonScreenshot",v.Wc);this.dia.bind(c.U,this.n9,this,n);this.Bc=b.jm(this.Ne,this);this.set("arrowKeysAction","rotate");this.set("doubleClickAction","inherit");this.set("hotspotsEnabled",n);this.set("preloadEnabled",n);this.set("keyboardTranslateSelectionAngle",90)});x.K_="cameraPositionChange";x.Ae="userInteractionStart";x.ze="userInteractionEnd";x.sm="loadingProgress";x.P_="preloadMediaShow";x.R_="viewModeChange";g.A("PanoramaPlayer",x).B("Object").K({aaEnabled:"bool",actualHFOV:"number",
actualVFOV:"number",arrowKeysAction:"enum[rotate, translate, none]",buttonCardboardView:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonMoveDown:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonMoveLeft:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonMoveRight:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonMoveUp:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonPlay:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayDown:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayLeft:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayRight:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlayUp:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRestart:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonStop:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonToggleGyroscope:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonToggleHotspots:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonToggleSurfaceSelection:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonVRView:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonZoomIn:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonZoomOut:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonScreenshot:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",camera:"PanoramaCamera",currentTime:"number",displayPlaybackBar:"bool",doubleClickAction:"enum[toggle_fullscreen, translate, inherit]",fxaaEnabled:"bool",gyroscopeEnabled:"bool",gyroscopeVerticalDraggingEnabled:"bool",hdrPanoramaDisplayPlaybackBar:"bool",hdrPanoramaDisplayPlaybackBarSteps:"bool",hfov:"number",hotspotsEnabled:"bool",
keyboardTranslateSelectionAngle:"number",livePanoramaDisplayPlaybackBar:"bool",livePanoramaDisplayPlaybackBarSteps:"bool",mapPlayer:"MapPlayer",mode:"enum[fast, quality]",mouseControlMode:"enum[drag_acceleration, drag_rotation]",panorama:"Panorama",pitch:"number",preloadEnabled:"bool",roll:"number",startTime:"number",state:"enum[stopped, playing, paused]",adjacentPanoramaPositionsEnabled:"bool",surfaceSelectionHorizontalAngle:"number",surfaceSelectionVerticalAngle:"number",surfaceSelectionEnabled:"bool",
touchControlMode:"enum[drag_acceleration, drag_rotation]",video:"Video360",viewMode:"enum[standard, cardboard, vr]",videoPanoramaDisplayPlaybackBar:"bool",viewerArea:"ViewerArea",yaw:"number",zoomEnabled:"bool"}).Vb([c.zG,x.K_,x.sm,x.Ae,x.ze,x.P_,x.R_,c.xc,i.le,i.dg]).Ag({moveLeft:function(){this.Ab(q.Hw)},moveRight:function(){this.Ab(q.Iw)},moveUp:function(){this.Ab(q.Jw)},moveDown:function(){this.Ab(q.Gw)},playLeft:function(){this.Ab([q.Hw,q.O])},playRight:function(){this.Ab([q.Iw,q.O])},playUp:function(){this.Ab([q.Jw,
q.O])},playDown:function(){this.Ab([q.Gw,q.O])},play:function(){this.Pg()},pause:function(){this.pk()},stop:function(){this.Hr()},seek:function(a){this.bs(a)},setFramePlaybackPosition:function(a){this.Bqa(a)},setFrameTransitionPosition:function(a){this.Cqa(a)},restart:function(){this.Gr()},zoomIn:function(){this.Ab(q.$n)},zoomOut:function(){this.Ab(q.ao)},resumeCamera:function(){this.Lpa()},pauseCamera:function(){this.Ioa()},moveTo:function(a,b,c,d){this.n6(a,b,c,d,y)},setPosition:function(a,b,c,
d){this.n6(a,b,c,d,n)},getScreenPosition:function(a,b){return this.Ila(a,b)},getPanoramaPosition:function(a,b){return this.ula(a,b)},saveScreenshot:function(){return this.n9()}});x.prototype.get=function(a,b){switch(a){case "currentTime":return this.o&&this.o.getTime()||0;case "viewMode":return u.isPresenting()?x.wq:x.yP;case "video":a="panorama";break;case "rendererPanorama":return this.o&&this.o.rz()}if(!b)switch(a){case "mouseControlMode":b=e.e0;break;case "touchControlMode":b=e.X0}return p.prototype.get.call(this,
a,b)};x.prototype.set=function(a,b){if(this.get(a)!=b){switch(a){case "application":this.MP=n;this.Bc();break;case "startTime":this.Lr=n;this.Bc();break;case "video":case "panorama":a="panorama";this.Lr=n;this.Bc();break;case "camera":this.kQ=n;this.Bc();break;case "viewerArea":this.yf=n;this.Bc();break;case "displayPlaybackBar":case "hdrPanoramaDisplayPlaybackBarSteps":case "livePanoramaDisplayPlaybackBarSteps":case "buttonPlay":case "buttonPlayPause":this.ll=n;this.Bc();break;case "mapPlayer":this.dJ=
n;this.Bc();break;case "gyroscopeEnabled":this.dr=n;this.Bc();break;case "gyroscopeVerticalDraggingEnabled":this.xS=n;this.Bc();break;case "viewMode":if(b=="vr")b=x.wq;b==x.wq&&!u.isPresenting()?u.Dh():b!=x.wq&&u.isPresenting()&&u.Yd();b=u.isPresenting()?x.wq:x.yP;break;case "hotspotsEnabled":this.RS=n;this.Bc();break;case "mouseControlMode":case "touchControlMode":this.DH=n;this.Bc();break;case "surfaceSelectionEnabled":o.Iea()||(b=y);this.oW=n;this.Bc()}p.prototype.set.call(this,a,b)}};x.prototype.nm=
function(a){this.Rx=a;this.o&&this.o.Ls(this.Rx)};x.prototype.mba=function(){return this.get("doubleClickAction")!="inherit"};x.prototype.cQ=function(a){p.prototype.cQ.call(this,a);a.bind(c.yG,this.Saa,this,n)};x.prototype.NW=function(a){p.prototype.NW.call(this,a);a.unbind(c.yG,this.Saa,this,n)};x.prototype.Saa=function(){switch(this.get("doubleClickAction")){case "toggle_fullscreen":var a=this.get("application").mg;a&&a.available()&&a.toggle()}};x.prototype.vja=function(a){var b=x.bo[a],a=new k(this,
a,v.Wc);a.bind(c.Eb,function(){this.Ab(b.movement)},this);b.stopOnRelease&&a.bind(c.ec,function(){this.Ab(q.oe)},this);return a};x.prototype.Ne=function(){if(this.yf||this.MP){this.yf=this.MP=y;this.DH=this.dr=this.dJ=n;this.vo();this.get("viewerArea")&&this.get("application")&&this.ro();this.CD(this.get("viewerArea"))}var a=y;if(this.g){if(this.dJ){this.dJ=y;this.o.PZ(this.get("mapPlayer"))}if(this.DH){this.DH=y;this.o.Ns(this.get("mouseControlMode"));this.o.tw(this.get("touchControlMode"))}if(this.Lr||
this.kQ){this.fI=this.VR=this.pb=this.rc=0;this.HU=this.JU=m;a=n;this.kQ=this.Lr=y;if(this.get("panorama")){this.oD();this.o.eh(this.get("panorama"),this.get("camera",new j),this.get("startTime"))}else{this.o.Xp();this.TT=n;this.Vf=f.I;this.Xb(f.I)}}if(this.xS){this.xS=y;this.o.HF(this.get("gyroscopeVerticalDraggingEnabled",n))}if(this.dr){this.dr=y;var b=this.get("gyroscopeEnabled")&&t.available;if(b&&t.disabled){b=y;s.X_.show(function(){t.wZ(function(){this.set("gyroscopeEnabled",n)}.bind(this))}.bind(this))}this.set("gyroscopeEnabled",
b);this.o.GF(b);this.gH.set("pressed",b)}if(this.RS){this.RS=y;this.hH.set("pressed",this.get("hotspotsEnabled"))}if(this.ll){this.ll=y;a=n}if(this.oW){this.oW=y;this.jH.set("pressed",this.get("surfaceSelectionEnabled"))}a&&this.ms()}};x.prototype.My=function(){this.set("panorama",r)};x.prototype.ro=function(){var a=this.get("viewerArea"),b=this.get("application");this.g=new o(b,a,this);this.g.M({left:0,top:0,bottom:0,right:0});a.la(this.g);this.o=new l(a,this.g);this.o.bind(l.gh,this.xl,this);this.o.bind(l.Sk,
this.K6,this);this.o.bind(l.sm,this.Vo,this);this.o.bind(l.$s,this.ey,this);this.o.bind(l.ht,this.Zo,this,n);this.o.bind(l.gt,this.Dr,this,n);this.o.bind(l.it,this.AC,this,n);this.o.bind(l.ft,this.zC,this,n);this.o.bind(l.sb,this.gd,this);this.o.bind(l.Ae,this.Cl,this);this.o.bind(l.ze,this.Bl,this);this.o.bind(l.Nj,this.Ir,this);this.get("application").bind(c.D("mute"),this.yC,this);this.get("application").get("mute",y)&&this.o.Jd(n);this.o&&this.o.Ls(this.Rx);u.bind(c.aa,this.mk,this,n);this.LQ();
this.ds(n)};x.prototype.vo=function(){if(this.g){this.o.unbind(l.gh,this.xl,this);this.o.unbind(l.Sk,this.K6,this);this.o.unbind(l.sm,this.Vo,this);this.o.unbind(l.$s,this.ey,this);this.o.unbind(l.ht,this.Zo,this,n);this.o.unbind(l.gt,this.Dr,this,n);this.o.unbind(l.it,this.AC,this,n);this.o.unbind(l.ft,this.zC,this,n);this.o.unbind(l.sb,this.gd,this);this.o.unbind(l.Ae,this.Cl,this);this.o.unbind(l.ze,this.Bl,this);this.o.unbind(l.Nj,this.Ir,this);this.o.clear();this.o=r;this.get("application").unbind(c.D("mute"),
this.yC,this);this.g.getParent().removeChild(this.g);this.g=r;u.unbind(c.aa,this.mk,this,n);this.ds(y)}};x.prototype.yC=function(){this.g&&this.o.Jd(this.get("application").get("mute",y))};x.prototype.gd=function(a){this.Vf=a.data.state;this.ie()};x.prototype.ie=function(){this.Xb(this.TT||u.isPresenting()?this.Vf:f.O)};x.prototype.Cl=function(){this.trigger(new d(x.Ae))};x.prototype.Bl=function(){this.trigger(new d(x.ze))};x.prototype.AC=function(a){this.trigger(new d(x.P_,{panorama:a.data.panorama}))};
x.prototype.zC=C();x.prototype.Zo=function(a){this.LQ();this.dC(a.data.panorama)};x.prototype.Dr=function(a){this.cC(a.data.panorama)};x.prototype.xl=function(a){for(var b in x.bo)this.o6[b].set("state",a.data[x.bo[b].pressedOn]?w.Ca:w.dd);this.TT=a.data.stopped;this.ie();this.trigger(new d(c.zG,a.data))};x.prototype.K6=function(a){this.LQ();this.trigger(new d(x.K_,a.data))};x.prototype.LQ=function(){if(this.o){this.set("yaw",this.o.Zb());this.set("pitch",this.o.dc());this.set("roll",this.o.Pd());
this.set("hfov",this.o.Oe());this.set("actualHFOV",this.o.kY());this.set("actualVFOV",this.o.lY())}};x.prototype.Vo=function(a){this.g.getParent().M({progressPercent:a.data.percent,progressVisible:n});this.trigger(new d(x.sm,a.data))};x.prototype.ey=function(){this.g.getParent().set("progressVisible",y)};x.prototype.mk=function(){this.set("viewMode",u.isPresenting()?x.wq:x.yP);this.ie()};x.prototype.n6=function(a,b,c,d,e){this.o&&this.o.moveTo(a,b,c,d,e)};x.prototype.Ab=function(a){this.o&&this.o.dh(a)};
x.prototype.Pg=function(){this.o.play()};x.prototype.sj=function(){this.o.stop()};x.prototype.pk=function(){this.o.pause()};x.prototype.bs=function(a){this.o&&(this.G4()?this.o.Ks(a):this.o.kea(a))};x.prototype.Bqa=function(a){this.o&&this.o.kea(a)};x.prototype.Cqa=function(a){this.o&&this.o.Ks(a)};x.prototype.Ioa=function(){this.o&&this.o.Dz()};x.prototype.Lpa=function(){this.o&&this.o.Mz()};x.prototype.Ila=function(a,b){if(this.o)return this.o.Bva(a,b)};x.prototype.ula=function(a,b){if(this.o)return this.o.sva(a,
b)};x.prototype.n9=function(){this.o&&this.o.AZ()};x.prototype.$C=function(a){this.bs(a.data.position)};x.prototype.Ir=function(a){this.rc=a.data.time;this.pb=a.data.duration;this.VR=a.data.transitionPosition;this.fI=a.data.transitionLength;this.JU=a.data.steps;this.HU=a.data.selectedStep;this.ms()};x.prototype.ms=function(){var a=this.g.getParent(),b=y;if(this.Wka()){var c=this.G4(),d=this.wla();if(c){if(this.fI>0){a.M({playbackBarPosition:this.VR,playbackBarDuration:this.fI,playbackBarSteps:this.JU,
playbackBarSelectedStep:this.HU,playbackBarLiveDragging:d});b=n}}else if(this.pb>0){a.M({playbackBarPosition:this.rc,playbackBarDuration:this.pb,playbackBarSteps:m,playbackBarSelectedStep:m,playbackBarLiveDragging:d});b=n}}a.set("playbackBarVisible",b)};x.prototype.Wka=function(){var a=this.get("panorama");return a?g.qb("HDRPanorama",a)?this.get("hdrPanoramaDisplayPlaybackBar",this.get("displayPlaybackBar",y)):g.qb("LivePanorama",a)?this.get("livePanoramaDisplayPlaybackBar",this.get("displayPlaybackBar",
y)):g.qb("VideoPanorama",a)?this.get("videoPanoramaDisplayPlaybackBar",this.get("displayPlaybackBar",n)):y:y};x.prototype.G4=function(){var a=this.get("panorama");return!a?y:g.qb("HDRPanorama",a)?this.get("hdrPanoramaDisplayPlaybackBarSteps",n):g.qb("LivePanorama",a)?this.get("livePanoramaDisplayPlaybackBarSteps",n):y};x.prototype.wla=function(){var a=this.get("panorama");return!a||g.qb("VideoPanorama",a)?y:n};x.wq="cardboard";x.yP="standard";x.bo={buttonMoveLeft:{movement:q.Hw,pressedOn:"movingLeft",
stopOnRelease:n},buttonMoveRight:{movement:q.Iw,pressedOn:"movingRight",stopOnRelease:n},buttonMoveUp:{movement:q.Jw,pressedOn:"movingUp",stopOnRelease:n},buttonMoveDown:{movement:q.Gw,pressedOn:"movingDown",stopOnRelease:n},buttonPlayLeft:{movement:[q.Hw,q.O],pressedOn:"movingLeft",stopOnRelease:y},buttonPlayRight:{movement:[q.Iw,q.O],pressedOn:"movingRight",stopOnRelease:y},buttonPlayUp:{movement:[q.Jw,q.O],pressedOn:"movingUp",stopOnRelease:y},buttonPlayDown:{movement:[q.Gw,q.O],pressedOn:"movingDown",
stopOnRelease:y},buttonZoomIn:{movement:q.$n,pressedOn:"zoomingIn",stopOnRelease:n},buttonZoomOut:{movement:q.ao,pressedOn:"zoomingOut",stopOnRelease:n}};return x});
define("cb","fg,bZ,dW,cu,kZ,dl".split(","),function(a,b,c,d,f,e){a=a.extend(e,function(){e.call(this)});c.A("PanoramaPlayListItem",a).B("PlayListItem").K({media:"Panorama",camera:"PanoramaCamera",player:"PanoramaPlayer"});a.prototype.start=function(){e.prototype.start.call(this);var a=this.get("player");if(a){a.bind(d.le,this.Zo,this);a.set("panorama",this.get("media"));a.set("camera",this.get("camera"))}};a.prototype.stop=function(){var a=this.get("player");if(a){a.unbind(d.le,this.Zo,this);a.get("panorama")==
this.get("media")&&a.set("panorama",r)}e.prototype.stop.call(this)};a.prototype.Zo=function(a){if(a.data.media==this.get("media")){this.get("player").unbind(d.le,this.Zo,this);this.get("player").bind(d.dg,this.Dr,this);this.Ev()}};a.prototype.Dr=function(a){if(a.data.media==this.get("media")){this.get("player").unbind(d.dg,this.Dr,this);this.end()}};return a});
define("iO",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("PanoramaSnapshot",b).B("Object").K({position:"PanoramaCameraPosition",image:"ImageResource"});return b});define("kf",["fg","bS"],function(a,b){var c=a.extend(b,function(a,c,e,g){b.call(this);this.Nd=a;this.X=c;this.ha=e;this.PR=g});c.prototype.Gn=function(){return[this.Nd]};c.prototype.Bj=Q("Nd");c.prototype.ad=Q("X");c.prototype.Od=Q("ha");return c});
define("ex","require,do,fg,dW,du,eH,kf".split(","),function(a){var b=a("do"),c=a("fg"),d=a("dW"),f=a("du"),e=a("eH"),g=a("kf"),a=c.extend(f,function(){f.call(this);this.Y=m});d.A("Photo",a).B("Media").K({audios:"array[PhotoAudio]",duration:"number",height:"number",image:"ImageResource",width:"number",flipImageHorizontally:"bool"});a.prototype.$g=function(){if(this.Y==m){var a=this.get("image");this.Y=a?new g(e.fm(a).get("url"),this.get("width"),this.get("height"),this.get("flipImageHorizontally",
y)):r}return this.Y};a.prototype.En=function(){var a=this.nI(this.$g());b(this.get("audios",[])).each(function(b){a=a.concat(b.En())},this);return a};a.prototype.nI=function(a){return a?a.Gn():[]};return a});
define("hl",["do","fg","ll","du","dW"],function(a,b,c,d,f){b=b.extend(d,function(){d.call(this);this.set("loop",y)});f.A("PhotoAlbum",b).B("Media").K({audios:"array[PhotoAlbumAudio]",loop:"bool",playList:"PhotoPlayList"}).Vb([c.Ba]);b.prototype.En=function(){var b=[],c=this.get("playList");c&&a(c.get("items"),[]).each(function(a){(a=a.get("media"))&&(b=b.concat(a.En()))});a(this.get("audios",[])).each(function(a){b=b.concat(a.En())});return b};return b});
define("gp","require,fg,ge,dW,gN,z".split(","),function(a){var b=a("fg"),c=a("ge"),d=a("dW"),f=a("gN");a("z");a=b.extend(f,function(){f.call(this,c.Tfa)});d.A("PhotoAlbumAudio",a).B("MediaAudio");return a});
define("cs",["require","fu"],function(a){function b(a,b){this.g=a;this.dl=b;this.$w=[];this.Am=[];this.$l=1}var c=a("fu");b.prototype.clear=function(){for(var a=0;a<this.$w.length;a++)this.$w[a].jc(c.I);this.iha();this.Am=this.$w=r};b.prototype.stop=function(){for(var a=0;a<this.Am.length;a++)this.Am[a].jc(c.I)};b.prototype.play=function(){for(var a=0;a<this.Am.length;a++){var b=this.Am[a];b.Pe()!=c.O&&b.jc(c.O)}};b.prototype.pause=function(){for(var a=0;a<this.Am.length;a++){var b=this.Am[a];b.Pe()==
c.O&&b.jc(c.uc)}};b.prototype.start=function(){this.stop();for(var a=0;a<this.dl.length;a++){var b=this.dl[a],e=b.Ov();e&&(this.$w.push(e),b.get("autoplay",y)&&this.Am.push(e))}for(a=0;a<this.Am.length;a++)this.Am[a].jc(c.O)};b.prototype.cc=C();b.prototype.iha=function(){for(var a=0;a<this.$w.length;a++)this.$w[a].bq(1)};return b});define("go",["fg","cs"],function(a,b){return a.extend(b,function(a,d){b.call(this,a,d.get("audios",[]));this.hK=d})});
define("fH",["fg","cs"],function(a,b){return a.extend(b,function(a,d){b.call(this,a,d.get("audios",[]));this.pd=d})});
define("hg",["go","fH"],function(a,b){function c(a){this.g=a;this.eg=[];this.Uf=[]}c.prototype.clear=function(){this.Hea();this.Uf=this.eg=r};c.prototype.Hea=function(){for(var a=0;a<this.eg.length;a++)this.eg[a].clear();for(a=0;a<this.Uf.length;a++)this.Uf[a].clear();this.eg=[];this.Uf=[]};c.prototype.pause=function(){for(var a=0;a<this.eg.length;a++)this.eg[a].pause();for(a=0;a<this.Uf.length;a++)this.Uf[a].pause()};c.prototype.play=function(){for(var a=0;a<this.eg.length;a++)this.eg[a].play();
for(a=0;a<this.Uf.length;a++)this.Uf[a].play()};c.prototype.stop=function(){for(var a=0;a<this.eg.length;a++)this.eg[a].stop();for(a=0;a<this.Uf.length;a++)this.Uf[a].clear();this.Uf=[]};c.prototype.gza=function(b){b=new a(this.g,b);this.Uf.push(b);b.start()};c.prototype.jza=function(a){for(var b=0;b<this.Uf.length;b++)if(this.Uf[b].hK==a){this.Uf[b].clear();this.Uf.splice(b,1);break}};c.prototype.a_=function(a){a=new b(this.g,a);this.eg.push(a);a.start()};c.prototype.hza=function(a){for(var b=0;b<
this.eg.length;b++)if(this.eg[b].pd==a){this.eg[b].clear();this.eg.splice(b,1);break}};c.prototype.cc=function(a){for(var b=0;b<this.eg.length;b++)this.eg[b].cc(a);for(b=0;b<this.Uf.length;b++)this.Uf[b].cc(a)};return c});
define("j",["fg","jn"],function(a,b){function c(){this.Z=n;this.fa=this.da=0.5;this.ta=1;this.Ed=b.Se;this.Ni=this.Oi=100}c.prototype.getX=function(){this.wj();return this.da};c.prototype.getY=function(){this.wj();return this.fa};c.prototype.hm=function(){this.wj();return this.ta};c.prototype.DF=function(a,b,c){this.Ed=c;this.fa=this.da=0.5;this.ta=1;this.Z=n};c.prototype.Ia=function(a,b,c){this.da=a;this.fa=b;this.ta=c;this.Z=n};c.prototype.setSize=function(a,b){this.Oi=a;this.Ni=b;this.Z=n};c.prototype.wj=
function(){if(this.Z){this.Z=y;1>this.ta&&(this.ta=1);var a=Math.min(0.5/this.ta,0.5),b=Math.max(1-0.5/this.ta,0.5);this.da<a?this.da=a:this.da>b&&(this.da=b);a=Math.min(0.5/this.ta,0.5);b=Math.max(1-0.5/this.ta,0.5);this.fa<a?this.fa=a:this.fa>b&&(this.fa=b)}};return c});
define("bn",[],function(){function a(a,c){this.g=a;this.H=c;this.fa=this.da=0.5;this.ta=1;this.AK=y}a.prototype.start=function(){this.fa=this.da=0.5;this.ta=1;this.AK=n};a.prototype.clear=function(){this.H=this.g=r};a.prototype.Ia=function(a,c,d){this.da=a;this.fa=c;this.ta=d};a.prototype.ld=Q("AK");a.prototype.fb=function(){this.AK=y};return a});
define("fX",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(a,c,e){b.call(this);a!=m&&this.set("x",a);c!=m&&this.set("y",c);e!=m&&this.set("zoomFactor",e)});c.A("PhotoCameraPosition",a).B("Object").K({x:"number",y:"number",zoomFactor:"number"});return a});
define("h",["fg","bn","fX","kX","bq"],function(a,b,c,d,f){a=a.extend(b,function(a,c){b.call(this,a,c);this.P=r});a.prototype.start=function(a){var b=a.get("initialPosition",new c(0.5,0.5,1)),k=a.get("targetPosition",new c(0.5,0.5,1));this.P=new d(a.get("easing","linear"),[new f("x",b.get("x",0.5),k.get("x",0.5)),new f("y",b.get("y",0.5),k.get("y",0.5)),new f("zoom",b.get("zoomFactor",1),k.get("zoomFactor",1))],a.get("duration",1E3));this.fb(0)};a.prototype.clear=function(){this.P=r;b.prototype.clear.call(this)};
a.prototype.ld=function(){return this.P!=r};a.prototype.fb=function(a){this.P&&(this.P.fb(a),this.H.Ia(this.P.Bb("x"),this.P.Bb("y"),this.P.Bb("zoom")),this.da=this.H.getX(),this.fa=this.H.getY(),this.ta=this.H.hm(),this.P.Qe()&&(this.P=r))};return a});
define("ci","fg,bZ,eO,dW,fu,jn,j,bn,h,ll".split(","),function(a,b,c,d,f,e,g,k,i,p){var j=a.extend(c,function(a,b){c.call(this);this.g=a;this.qc=b;this.g.bind(p.vb,this.jb,this);this.m=f.I;this.kj=this.hK=this.wb=this.Y=r;this.H=new g});j.prototype.clear=function(){this.end();this.H=r;this.g.unbind(p.vb,this.jb,this);this.g=r};j.prototype.end=function(a){if(this.Y==a||typeof a=="undefined"){this.J3();this.wb=this.hK=this.wb=this.Y=r}};j.prototype.start=function(a){if(this.Y!=a){this.end(this.Y);var b=
a.get("media"),c=a.get("camera"),d=b.get("width",100),f=b.get("height",100),g=c?c.get("scaleMode",e.Se):e.Se;this.Y=a;this.wb=c;this.hK=b;b.$g();this.W=n;this.H.DF(d,f,g);this.xja(c);this.ea()}};j.prototype.stop=function(){if(this.m!=f.I){this.m=f.I;if(this.kj){this.kj.start(this.wb);this.ea()}}};j.prototype.play=function(){if(this.m==f.I||this.m==f.uc){this.m=f.O;this.ea()}};j.prototype.pause=function(){if(this.m==f.O)this.m=f.uc};j.prototype.Sp=function(a){if(this.kj&&this.kj.ld()){if(this.m==f.O){this.kj.fb(a);
this.ea()}this.mi(this.kj.da,this.kj.fa,this.kj.ta)}};j.prototype.xja=function(a){this.J3();this.kj=d.qb("MovementPhotoCamera",a)?new i(this.g,this.H):new k(this.g,this.H);this.kj.start(a)};j.prototype.J3=function(){if(this.kj){this.kj.clear();this.kj=r}};j.prototype.jb=function(){this.H.setSize(this.g.Aa(),this.g.eb());this.ea()};j.prototype.ea=function(){this.trigger(new b(j.Ja))};j.prototype.mi=function(a,b,c){this.qc.Ia(this.Y,a,b,c)};j.Ja="request frame";return j});
define("gj","require,do,fg,bZ,eO,ll,ge,jn".split(","),function(a){var b=a("do"),c=a("fg"),d=a("bZ"),f=a("eO"),e=a("ll");a("ge");var g=a("jn"),k=c.extend(f,function(a,b){f.call(this);this.MD=[];this.C=a;this.g=b});k.prototype.Iz=function(a){this.br(a).Iz();return this};k.prototype.xd=function(a,b){this.br(a).xd(b);return this};k.prototype.Gj=function(a,b){this.br(a).Gj(b);return this};k.prototype.Ia=function(a,b,c,d){this.br(a).Ia(b,c,d);return this};k.prototype.Ck=function(a){this.br(a).Ck();return this};
k.prototype.stop=function(){this.X3(function(a){a.clear()});this.MD=[]};k.prototype.clear=function(){this.stop();this.g=this.C=this.MD=r};k.prototype.cc=function(){this.X3(function(a){a.update()})};k.prototype.br=function(a){var b=this.rka(a);if(!b){b=new i(a,this.g);b.bind(i.K0,this.Uma,this);b.bind(i.I0,this.Tma,this);this.MD.push(b)}return b};k.prototype.X3=function(a){b(this.MD).each(a,this)};k.prototype.rka=function(a){return b(this.MD).find(function(b){return b.getItem()==a})};k.prototype.Uma=
function(){this.ea()};k.prototype.Tma=function(a){this.trigger(new d(k.xO,{item:a.source.getItem()}))};k.prototype.ea=function(){this.trigger(new d(k.Ja))};k.Ja="request frame";k.xO="photo preload end";var i=c.extend(f,function(a,b){f.call(this);this.Y=a;this.g=b;var c=a.get("camera");this.Ed=c?c.get("scaleMode",g.Se):g.Se;this.zh=a.get("media").$g();this.zh.bind(e.T,this.Rf,this);this.zh.bind(e.ne,this.yr,this);this.S=i.xA;this.fa=this.da=0.5;this.ta=1;this.Vj=0;this.dx=y;this.se=0;this.Z=y});i.prototype.getItem=
Q("Y");i.prototype.Iz=function(){this.S==i.xA?this.nK():this.caa()};i.prototype.xd=function(a){if(this.Vj!=a){this.Vj=a;this.ed()}};i.prototype.Gj=function(a){if(this.se!=a){this.se=a;this.ed()}};i.prototype.Ia=function(a,b,c){if(this.da!=a||this.fa!=b||this.ta!=c){this.da=a;this.fa=b;this.ta=c;this.ed()}};i.prototype.Ck=function(){if(!this.dx){this.dx=n;this.ed()}};i.prototype.clear=function(){this.S==i.NG&&this.mD();(this.S==i.uA||this.S==i.wA||this.S==i.vA)&&this.ks();this.zh.unbind(e.T,this.Rf);
this.zh.unbind(e.ne,this.yr);this.zh=r};i.prototype.update=function(){if(this.Z){this.Z=y;if(this.se>-1&&this.se<1&&this.Vj>0){this.S==i.xA&&this.TB();this.S==i.uA&&this.Kga();if(this.S==i.NG){if(this.dx){this.g.UX(this.zh);this.dx=y}this.g.mm(this.zh,this.Vj);this.g.pya(this.zh,this.se);this.g.JF(this.zh,this.da,this.fa,this.ta)}}else{this.S==i.NG&&this.mD();(this.S==i.uA||this.S==i.vA)&&this.ks()}}};i.prototype.ed=function(){if(!this.Z){this.Z=n;this.Ha()}};i.prototype.Ha=function(){this.trigger(new d(i.K0))};
i.prototype.nK=function(){this.S=i.wA;this.g.In(this.zh)};i.prototype.TB=function(){this.S=i.vA;this.g.In(this.zh)};i.prototype.Kga=function(){this.S=i.NG;this.g.OX(this.zh);this.g.sya(this.zh,this.Ed)};i.prototype.mD=function(){this.S=i.uA;this.g.removeItem(this.zh)};i.prototype.ks=function(){this.S=i.xA;this.g.Ai(this.zh)};i.prototype.Rf=function(){if(this.S==i.wA||this.S==i.vA){var a=this.S==i.wA;this.S=i.uA;this.ed();a&&this.caa()}};i.prototype.yr=function(){if(this.S==i.wA||this.S==i.vA)this.S=
i.xA};i.prototype.caa=function(){this.trigger(new d(i.I0))};i.K0="requestUpdate";i.I0="preloadEnd";i.xA="unloaded";i.wA="preloading";i.vA="loading";i.uA="loaded";i.NG="added";return k});define("ki",[],function(){return{qm:"blending",vm:"scroll"}});
define("bJ","do,fg,bZ,eO,ll,gj,ki".split(","),function(a,b,c,d,f,e,g){function k(b,c,d){this.xj=b;this.item=c;this.Qea=d;this.index=b&&c?a(b.get("playList").get("items")).indexOf(this.item):0;this.loaded=y}k.prototype.isEqual=function(a){return a&&a.xj==this.xj&&a.item==this.item};var i=b.extend(d,function(a,b,c){d.call(this);this.C=a;this.g=b;this.qc=c;this.qc.bind(e.xO,this.r8,this);this.$D=g.qm;this.S=i.Rw;this.Md=new k(r,r,0);this.uo=this.wh=this.Ve=r;this.aE=m;this.as=0});i.prototype.Tya=P("$D");
i.prototype.VZ=P("as");i.prototype.m_=function(a,b,c){this.wh=r;a=new k(a,b,c);if(!a.isEqual(this.S==i.Rw?this.Md:this.Ve)){this.wh=a;this.A7()}};i.prototype.clear=function(){(this.S==i.QG||this.S==i.OG)&&this.trigger(new c(i.jq,{album:this.Ve.xj,item:this.Ve.item}));this.S=i.Rw;this.g=this.C=this.uo=this.Md=this.Ve=this.wh=r;this.qc.unbind(e.xO,this.r8,this);this.qc=r};i.prototype.cc=function(a){if(this.S!=i.Rw){this.aE=this.aE+a;a=this.Ve.Qea;a=this.aE>=a?1:this.aE/a;this.S==i.OG?this.Nsa(a):this.S==
i.PG?this.Osa(a):this.$D==g.qm?this.Esa(a):this.jta(a);a<1?this.ea():this.Wq()}};i.prototype.Nsa=function(a){this.qc.xd(this.Ve.item,a).Gj(this.Ve.item,0)};i.prototype.Osa=function(a){this.qc.xd(this.Md.item,1-a).Gj(this.Md.item,0)};i.prototype.Esa=function(a){this.qc.xd(this.Ve.item,Math.min(1,a*2)).Gj(this.Ve.item,0);this.qc.xd(this.Md.item,Math.min(1,(1-a)*2)).Gj(this.Md.item,0)};i.prototype.jta=function(a){var b=this.Md.xj!=this.Ve.xj||this.Md.index<this.Ve.index;this.qc.Gj(this.Ve.item,(b?1-
a:a-1)*(1+this.as)).xd(this.Ve.item,1);this.qc.Gj(this.Md.item,(b?-a:a)*(1+this.as)).xd(this.Md.item,1)};i.prototype.A7=function(){this.wh&&this.S==i.Rw&&(this.wh.item&&!this.wh.loaded?this.qc.Iz(this.wh.item):this.el())};i.prototype.r8=function(a){if(this.wh&&this.wh.item==a.data.item){this.wh.loaded=n;this.A7()}};i.prototype.el=function(){if(this.uo&&this.uo!=this.wh.xj){this.trigger(new c(i.Qk,{album:this.uo}));this.uo=r}this.trigger(new c(i.EO));if(this.C.get("transitionMode")=="fade_out_fade_in"&&
this.wh.item!=r&&this.Md.item!=r){this.S=i.PG;this.Ve=new k(this.Md.xj,r,this.Md.Qea)}else{this.Ve=this.wh;this.wh=r;if(this.Md.item)if(this.Ve.item)this.S=i.QG;else{if(this.Md.item)this.S=i.PG}else this.S=i.OG}if(this.S==i.QG||this.S==i.OG){this.qc.Ck(this.Ve.item);this.trigger(new c(i.jt,{album:this.Ve.xj,item:this.Ve.item}))}this.aE=0;this.ea()};i.prototype.Wq=function(){(this.S==i.QG||this.S==i.PG)&&this.trigger(new c(i.jq,{album:this.Md.xj,item:this.Md.item}));this.Md=this.Ve;if(this.uo!=this.Md.xj){this.uo=
this.Md.xj;this.trigger(new c(i.Rk,{album:this.uo}))}this.S=i.Rw;if(this.wh==r){this.Md.item&&this.trigger(new c(i.kt,{album:this.Md.xj,item:this.Md.item}));this.trigger(new c(i.FO,{album:this.Md.xj,item:this.Md.item}))}else this.el()};i.prototype.ea=function(){this.trigger(new c(i.Ja))};i.Rw="stopped";i.QG="blending";i.PG="fading_out";i.OG="fading_in";i.Ja="request frame";i.EO="transition begin";i.FO="transition end";i.jt="photo added";i.jq="photo removed";i.kt="photo displayed";i.Rk="photo album show";
i.Qk="photo album hide";return i});
define("er","do,fg,bZ,eO,ll,dW,jn,fX,j,bn,h,kX,bq".split(","),function(a,b,c,d,f,e,g,k,i,p,j,l,q){var o=b.extend(d,function(a,b,c){d.call(this);this.C=a;this.g=b;this.qc=c;this.wk=this.ik=this.Y=this.pd=this.ua=r;this.mj=m;this.cL=0;this.ji=y;this.se=0;this.kJ=this.wk?-1:0;this.hJ=this.ik?1:0;this.P=r;this.Me=400;this.as=0;this.H=new i});o.prototype.clear=function(){this.qc=this.g=this.C=this.uo=r};o.prototype.Uxa=function(b,c){this.pd=b;this.Y=c;var d=b&&b.get("playList")&&b.get("playList").get("items")||
[],e=a(d).indexOf(c);this.ik=e>0?d[e-1]:r;this.wk=e<d.length-1?d[e+1]:r;this.se=0;this.kJ=this.wk?-1:0;this.hJ=this.ik?1:0;this.nK()};o.prototype.enable=function(){if(this.ua=this.g.getParent()){this.ua.bind(f.Eb,this.mc,this,n);this.ua.bind(f.Nc,this.Lg,this,n);this.ua.bind(f.ec,this.Mg,this,n);this.nK()}};o.prototype.disable=function(){if(this.ua){this.ua.unbind(f.Eb,this.mc,this);this.ua.unbind(f.Nc,this.Lg,this);this.ua.unbind(f.ec,this.Mg,this);this.ua=r}};o.prototype.Sya=P("Me");o.prototype.VZ=
P("as");o.prototype.nK=function(){if(this.ua){this.ik&&this.qc.Iz(this.ik);this.wk&&this.qc.Iz(this.wk)}};o.prototype.w6=function(){return(new Date).getTime()};o.prototype.mc=function(a){if(!this.ji){this.mj=a.x;this.cL=0;this.SU=this.w6();this.ji=n;this.P=r;this.trigger(new c(o.fO));if(this.ik){a=this.Q4(this.ik);this.qc.Ia(this.ik,a.x,a.y,a.zoom)}if(this.wk){a=this.Q4(this.wk);this.qc.Ia(this.wk,a.x,a.y,a.zoom)}}};o.prototype.Lg=function(a){if(this.ji){var b=a.x-this.mj,c=b/this.ua.Aa(),d=this.w6()-
this.SU;this.cL=b/d;this.SU=this.SU+d;this.mj=a.x;this.se=Math.max(this.kJ,Math.min(this.hJ,this.se+c));this.ea()}};o.prototype.Mg=function(){if(this.ji){this.ji=y;var a,b;if(this.cL>1){a="quad_out";b=this.hJ}else if(this.cL<-1){a="quad_out";b=this.kJ}else{a="quad_in_out";b=this.se<-0.5?this.kJ:this.se>0.5?this.hJ:0}this.P=new l(a,[new q("offset",this.se,b,1E3/this.Me)],0);this.ea()}};o.prototype.cc=function(a){if(this.ji||this.P){if(this.P){this.P.fb(a);this.se=this.P.Bb("offset");if(this.P.Qe()){this.P=
r;this.dka()}else this.ea()}this.Y&&this.qc.Gj(this.Y,this.se*(1+this.as)).xd(this.Y,1);this.ik&&this.qc.Gj(this.ik,(this.se-1)*(1+this.as)).xd(this.ik,1);this.wk&&this.qc.Gj(this.wk,(this.se+1)*(1+this.as)).xd(this.wk,1)}};o.prototype.dka=function(){this.trigger(new c(o.gO,{album:this.pd,item:this.se<0?this.wk:this.se>0?this.ik:this.Y}))};o.prototype.ea=function(){this.trigger(new c(o.Ja))};o.prototype.Q4=function(a){var b=a&&a.get("camera"),c=a&&a.get("media"),a=c&&c.get("width",100)||100,c=c&&
c.get("height",100)||100,d=b?b.get("scaleMode",g.Se):g.Se,f={};if(e.qb("MovementPhotoCamera",b)){b=b.get("initialPosition",new k(0.5,0.5,1));f.x=b.get("x",0.5);f.y=b.get("y",0.5);f.zoom=b.get("zoomFactor",0.5)}else{f.x=0.5;f.y=0.5;f.zoom=1}this.H.DF(a,c,d);this.H.setSize(this.g.Aa(),this.g.eb());this.H.Ia(f.x,f.y,f.zoom);f.x=this.H.getX();f.y=this.H.getY();f.zoom=this.H.hm();return f};o.Ja="request frame";o.fO="interaction begin";o.gO="interaction end";return o});
define("hb","fg,bZ,eO,ll,gj,ki,bJ,er".split(","),function(a,b,c,d,f,e,g,k){var i=a.extend(c,function(a,b,d){c.call(this);this.C=a;this.g=b;this.qc=d;this.$D=e.qm;this.Me=1E3;this.Va=new g(this.C,this.g,this.qc);this.Va.bind(g.Ja,this.Zc,this,n);this.Va.bind(g.EO,this.H6,this,n);this.Va.bind(g.FO,this.I6,this,n);this.Va.bind(g.jt,this.BC,this,n);this.Va.bind(g.jq,this.EC,this,n);this.Va.bind(g.kt,this.DC,this,n);this.Va.bind(g.Qk,this.yl,this,n);this.Va.bind(g.Rk,this.lk,this,n);this.Xh=new k(this.C,
this.g,this.qc);this.Xh.bind(k.Ja,this.Zc,this,n);this.Xh.bind(k.fO,this.a6,this,n);this.Xh.bind(k.gO,this.b6,this,n)});i.prototype.wN=function(a,b){this.$D=a;this.Me=b;this.Va.Tya(a);this.Xh.Sya(b);this.Va.VZ(0.05);this.Xh.VZ(0.05)};i.prototype.display=function(a,b){this.Va.m_(a,b,this.Me)};i.prototype.hide=function(){this.Va.m_(r,r,this.Me)};i.prototype.clear=function(){this.Va.unbind(g.Ja,this.Zc,this);this.Va.unbind(g.EO,this.H6,this);this.Va.unbind(g.FO,this.I6,this);this.Va.unbind(g.jt,this.BC,
this);this.Va.unbind(g.jq,this.EC,this);this.Va.unbind(g.kt,this.DC,this);this.Va.unbind(g.Qk,this.yl,this);this.Va.unbind(g.Rk,this.lk,this);this.Va.clear();this.Va=r;this.Xh.bind(k.Ja,this.Zc,this,n);this.Xh.bind(k.fO,this.a6,this,n);this.Xh.bind(k.gO,this.b6,this,n);this.Xh.clear();this.qc=this.g=this.C=this.Xh=r};i.prototype.cc=function(a){this.Va.cc(a);this.Xh.cc(a)};i.prototype.Zc=function(){this.ea()};i.prototype.BC=function(a){this.trigger(new b(i.jt,a.data))};i.prototype.EC=function(a){this.trigger(new b(i.jq,
a.data))};i.prototype.DC=function(a){this.trigger(new b(i.kt,a.data));this.Xh.Uxa(a.data.album,a.data.item)};i.prototype.yl=function(a){this.trigger(new b(i.Qk,a.data))};i.prototype.lk=function(a){this.trigger(new b(i.Rk,a.data))};i.prototype.H6=function(){this.Xh.disable()};i.prototype.I6=function(a){this.$D==e.vm&&a.data.item&&this.Xh.enable();a.data.album||this.trigger(new b(i.dO))};i.prototype.a6=function(){this.trigger(new b(i.M_))};i.prototype.b6=function(a){this.Va.m_(a.data.album,a.data.item,
0);this.trigger(new b(i.N_,a.data))};i.prototype.ea=function(){this.trigger(new b(i.Ja))};i.Ja="request frame";i.jt="photo added";i.jq="photo removed";i.kt="photo displayed";i.Rk="photo album show";i.Qk="photo album hide";i.M_="manual interaction begin";i.N_="manual interaction end";i.dO="all pending photo albums hidden";return i});
define("gB","require,do,fg,u,bZ,eO,fu".split(","),function(a){var b=a("do"),c=a("fg"),d=a("u"),f=a("bZ"),e=a("eO"),g=a("fu"),k=c.extend(e,function(){e.call(this);this.pd=r;this.m=g.I;this.BV=r});k.prototype.clear=function(){this.fY()};k.prototype.a_=function(a){this.fY();this.pd=a;this.m=g.O;this.BV=d.watch(this.pd,"playList.selectedIndex",this.dv,this);this.pd.get("playList").get("selectedIndex")==0?this.dv():this.pd.get("playList").set("selectedIndex",0)};k.prototype.fY=function(){if(this.pd){this.m=
g.I;this.BV.unwatch();this.pd=this.BV=r}};k.prototype.stop=function(){if(this.m!=g.I){this.m=g.I;this.pd.get("playList").set("selectedIndex",0)}};k.prototype.play=function(){if(this.m==g.I){this.pd.get("playList").set("selectedIndex",0);this.m=g.O;this.dv()}else if(this.m==g.uc)this.m=g.O};k.prototype.pause=function(){if(this.m==g.O)this.m=g.uc};k.prototype.next=function(){var a=this.pd.get("playList"),b=a.get("selectedIndex"),c=a.get("items").length;(b<c-1||this.pd.get("loop"))&&a.set("selectedIndex",
(b+1)%c)};k.prototype.qZ=function(){var a=this.pd.get("playList"),b=a.get("selectedIndex"),c=a.get("items").length;(b>0||this.pd.get("loop"))&&a.set("selectedIndex",(b-1+c)%c)};k.prototype.VM=function(a){this.Uqa(a)};k.prototype.zwa=function(a){if(this.pd){var c=b(this.pd.get("playList").get("items")).last();if(a==c&&!this.pd.get("loop")){this.m=g.I;this.trigger(new f(k.$N,{album:this.pd}))}else this.next()}};k.prototype.dv=function(){var a=this.Kla();a>=0&&(this.m!=g.O&&a!=0?this.trigger(new f(k.AO)):
this.trigger(new f(k.kO,{album:this.pd,item:this.pd.get("playList").get("items")[a]})))};k.prototype.Kla=function(){return this.pd?this.pd.get("playList").get("selectedIndex"):-1};k.prototype.Uqa=function(a){if(this.pd){var c=this.pd.get("playList"),a=b(c.get("items")).indexOf(a);c.set("selectedIndex",a)}};k.AO="play request";k.kO="item request";k.$N="album end";return k});
define("cm","require,do,fg,ll,bZ,eO,fu,fx".split(","),function(a){a("do");var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("fu"),g=a("fx"),k=b.extend(f,function(a){f.call(this);this.C=a;this.XD=this.Y=r;this.$u=m;this.QI=y;this.m=e.I;g.bind(c.aa,this.Z7,this,n)});k.prototype.VM=function(a){this.pR();if(this.Y=a){a=this.Y.get("media").get("duration",0);this.$u=a==0?m:Math.max(0,a-this.C.get("transitionDuration"));this.QI=y;this.m==e.O&&this.HR()}};k.prototype.clear=function(){g.unbind(c.aa,this.Z7,
this,n);this.VM(r)};k.prototype.stop=function(){if(this.m!=e.I){this.pR();this.Xb(e.I)}};k.prototype.play=function(){if(this.m==e.I){this.Xb(e.O);if(this.Y){this.QI=y;var a=this.Y.get("media").get("duration",0);this.$u=a==0?m:a;this.HR()}}else if(this.m==e.uc){this.Xb(e.O);this.Y&&this.HR()}};k.prototype.pause=function(){if(this.m==e.O){this.Xb(e.uc);this.p8()}};k.prototype.HR=function(){if(!this.QI){this.QI=n;this.trigger(new d(k.lO,{item:this.Y}))}this.a4()};k.prototype.Z7=function(){g.visible?
this.a4():g.visible||this.p8()};k.prototype.a4=function(){if(this.$u!==m){var a=this;this.rL=(new Date).getTime()+this.$u;this.XD=setTimeout(function(){a.XD=r;a.$ra()},this.$u)}else this.rL=m};k.prototype.pR=function(){if(this.XD){clearTimeout(this.XD);this.XD=r}};k.prototype.p8=function(){if(this.rL!==m){this.pR();this.$u=Math.max(1,this.rL-(new Date).getTime());this.rL=m}};k.prototype.$ra=function(){var a=this.Y;this.Y=r;this.$u=m;this.trigger(new d(k.jO,{item:a}))};k.prototype.Xb=function(a){if(this.m!=
a){this.m=a;this.trigger(new d(k.sb,{state:this.m}))}};k.sb="playback state change";k.lO="item start";k.jO="item end";return k});
define("kw",["fg","bZ","eO","V","r"],function(a,b,c,d,f){var e=a.extend(c,function(a){c.call(this);this.W=n;this.eu=y;this.g=a;this.bk=f.browser()==f.Us&&f.Zd()==f.jP?3:1;this.pe=this.nB=0});e.prototype.clear=function(){this.W=y;this.g=r;this.pe=this.nB=0};e.prototype.La=function(){this.eu||(this.eu=n,d.La(this.Ng,this))};e.prototype.Ng=function(a){this.W&&(this.nB++,this.pe+=a,this.nB==this.bk?(this.nB=0,this.eu=y,a=this.pe,this.pe=0,this.trigger(new b(e.Tk,{frameTime:a})),this.trigger(new b(e.Uk,
{frameTime:a})),this.g.render()):d.La(this.Ng,this))};e.Tk="frameStart";e.Uk="positionSet";return e});
define("ff","fg,ll,bZ,eO,hg,ci,hb,gB,cm,gj,kw".split(","),function(a,b,c,d,f,e,g,k,i,p,j){var l=a.extend(d,function(a,b){d.call(this);this.C=a;this.g=b;this.g.set("visible",y);this.uf=new k(this.g);this.ca=new i(this.C);this.qc=new p(this.C,this.g);this.ga=new g(this.C,this.g,this.qc);this.oa=new e(this.g,this.qc);this.fe=new j(this.g);this.kc=new f(this.g);this.qc.bind(p.Ja,this.Zc,this,n);this.uf.bind(k.kO,this.b7,this,n);this.uf.bind(k.AO,this.E7,this,n);this.uf.bind(k.$N,this.CC,this,n);this.ca.bind(i.lO,
this.c7,this);this.ca.bind(i.jO,this.a7,this);this.ca.bind(i.sb,this.gd,this,n);this.ga.bind(g.Ja,this.Zc,this,n);this.ga.bind(g.jt,this.BC,this,n);this.ga.bind(g.jq,this.EC,this,n);this.ga.bind(g.kt,this.DC,this,n);this.ga.bind(g.Qk,this.yl,this,n);this.ga.bind(g.Rk,this.lk,this,n);this.ga.bind(g.M_,this.Pna,this,n);this.ga.bind(g.N_,this.Qna,this,n);this.ga.bind(g.dO,this.E6,this,n);this.oa.bind(e.Ja,this.Zc,this,n);this.fe.bind(j.Tk,this.Er,this,n);this.fe.bind(j.Uk,this.Fr,this,n)});l.prototype.clear=
function(){this.uf.clear();this.ca.clear();this.ga.clear();this.oa.clear();this.fe.clear();this.kc.clear();this.qc.clear();this.qc.unbind(p.Ja,this.Zc,this);this.uf.unbind(k.kO,this.b7,this);this.uf.unbind(k.$N,this.CC,this);this.uf.unbind(k.AO,this.E7,this);this.ca.unbind(i.lO,this.c7,this);this.ca.unbind(i.jO,this.a7,this);this.ca.unbind(i.sb,this.gd,this);this.ga.unbind(g.Ja,this.Zc,this);this.ga.unbind(g.jt,this.BC,this);this.ga.unbind(g.jq,this.EC,this);this.ga.unbind(g.kt,this.DC,this);this.ga.unbind(g.Qk,
this.yl,this);this.ga.unbind(g.Rk,this.lk,this);this.ga.unbind(g.dO,this.E6,this);this.oa.unbind(e.Ja,this.Zc,this);this.fe.unbind(j.Tk,this.Er,this);this.fe.unbind(j.Uk,this.Fr,this);this.C=this.g=this.qc=this.kc=this.fe=this.oa=this.ga=this.ca=this.uf=r};l.prototype.wN=function(a,b){this.ga.wN(a,b)};l.prototype.Iya=function(a){this.g.set("visible",n);this.uf.a_(a)};l.prototype.Xp=function(){this.uf.fY();this.ca.stop();this.ga.hide();this.oa.end();this.kc.Hea()};l.prototype.next=function(){this.uf.next()};
l.prototype.qZ=function(){this.uf.qZ()};l.prototype.stop=function(){this.ca.stop();this.kc.stop();this.uf.stop();this.oa.stop()};l.prototype.play=function(){this.ca.play();this.kc.play();this.uf.play();this.oa.play()};l.prototype.pause=function(){this.ca.pause();this.kc.pause();this.uf.pause();this.oa.pause()};l.prototype.Pna=function(){this.ca.pause();this.kc.pause();this.uf.pause();this.oa.pause()};l.prototype.Qna=function(){this.ca.play();this.kc.play();this.uf.play();this.oa.play()};l.prototype.b7=
function(a){this.ga.display(a.data.album,a.data.item)};l.prototype.E7=function(){this.play()};l.prototype.Zc=function(){this.fe.La()};l.prototype.Er=function(a){this.oa.Sp(a.data.frameTime)};l.prototype.Fr=function(a){a=a.data.frameTime;this.ga.cc(a);this.qc.cc(a);this.kc.cc(a)};l.prototype.BC=function(a){this.oa.start(a.data.item)};l.prototype.EC=function(a){var b=a.data.album,a=a.data.item,d=a.get("media");this.oa.end(a);this.kc.jza(d);this.trigger(new c(l.wO,{photoAlbum:b,item:a}))};l.prototype.DC=
function(a){var b=a.data.album,a=a.data.item;a.get("media");this.uf.VM(a);this.ca.VM(a);this.trigger(new c(l.vO,{photoAlbum:b,item:a}))};l.prototype.c7=function(a){this.kc.gza(a.data.item.get("media"))};l.prototype.a7=function(a){this.uf.zwa(a.data.item)};l.prototype.CC=function(a){this.ca.stop();this.kc.stop();this.trigger(new c(l.uO,{photoAlbum:a.data.album}))};l.prototype.lk=function(a){a=a.data.album;this.kc.a_(a);this.ca.play();this.oa.play();this.trigger(new c(l.Rk,{photoAlbum:a}))};l.prototype.yl=
function(a){a=a.data.album;this.kc.hza(a);this.trigger(new c(l.Qk,{photoAlbum:a}))};l.prototype.E6=function(){this.g.set("visible",y)};l.prototype.gd=function(a){this.trigger(new c(l.sb,{state:a.data.state}))};l.Rk="photoAlbumShow";l.uO="photoAlbumEnd";l.Qk="photoAlbumHide";l.vO="photoBegin";l.wO="photoEnd";l.sb="playbackStateChange";return l});
define("fR","require,jquery.mod,do,jn,iG,iX,r".split(","),function(a){function b(a,b){this.Y=a;this.Q=b;this.Na=a.ad();this.Ya=a.Od();this.aI=a.PR;this.KX=this.SB=0;this.Vj=1;this.se=0;this.Z=n;this.QQ();this.fc=this.bc=100;this.fa=this.da=0.5;this.ta=1;this.cD=n;this.sd=1;this.Y3={};this.v5={};this.Kaa=g.browser()!=g.Df}var c=a("jquery.mod"),d=a("do"),f=a("jn"),e=a("iG");a("iX");var g=a("r");b.prototype.QQ=function(){this.KG=c("<div></div>");var a={position:"absolute",left:"0",top:"0",width:this.bc+
"px",height:this.fc+"px",overflow:"hidden","-webkit-transform":"translateZ(0)"};a["-moz-transform-origin"]=a["-webkit-transform-origin"]=a["transform-origin"]="0 0 0";a["-ms-transform-origin"]="0 0";this.KG.css(a);this.nP=c(e.ve(this.Y.Bj()));a={display:"block",position:"absolute",left:"0",top:"0",width:this.Na+"px",height:this.Ya+"px"};a["-moz-transform-origin"]=a["-webkit-transform-origin"]=a["transform-origin"]="0 0 0";a["-ms-transform-origin"]="0 0";this.nP.css(a);this.KG.append(this.nP)};b.prototype.Cb=
Q("KG");b.prototype.getItem=Q("Y");b.prototype.getX=Q("da");b.prototype.getY=Q("fa");b.prototype.hm=Q("ta");b.prototype.Aa=function(){return Math.round(this.Na*this.ta*this.sd)};b.prototype.eb=function(){return Math.round(this.Ya*this.ta*this.sd)};b.prototype.xd=function(a){if(this.Vj!=a){this.Vj=a;this.Z=n}};b.prototype.uM=Q("Vj");b.prototype.Qs=function(a){if(this.Ed!=a){this.Ed=a;this.Z=n}};b.prototype.mw=function(a,b){if(this.bc!=a||this.fc!=b){this.bc=a;this.fc=b;this.Z=n}};b.prototype.Ia=function(a,
b,c){if(this.da!=a||this.fa!=b||this.ta!=c){this.da=a;this.fa=b;this.ta=c;this.Z=n}};b.prototype.Gj=function(a){if(this.se!=a){this.se=a;this.Z=n}};b.prototype.Vxa=function(a){if(this.KX!=a){this.KX=a;this.Z=n}};b.prototype.render=function(){if(this.Z){this.Z=y;switch(this.Ed){case f.NONE:this.sd=1;break;case f.Wk:this.sd=this.bc/this.Na;break;case f.ih:this.sd=this.fc/this.Ya;break;case f.tm:this.sd=this.Na*this.fc>this.Ya*this.bc?this.fc/this.Ya:this.bc/this.Na;break;default:this.sd=this.Na*this.fc>
this.Ya*this.bc?this.bc/this.Na:this.fc/this.Ya}var a=this.ta*this.sd,b=this.bc*0.5-this.da*this.Na*a,c=this.fc*0.5-this.fa*this.Ya*a,e=this.bc*this.se,g=function(a,b){return Math.round(a*Math.pow(10,b))*Math.pow(10,-b)},q={};q.width=g(this.bc,0)+"px";q.height=g(this.fc,0)+"px";q.transform=this.Kaa?"translate3d("+g(e,2)+"px, 0px, 0px)":"translate("+g(e,2)+"px, 0px)";q["-moz-transform"]=q["-webkit-transform"]=q["-ms-transform"]=q.transform;q["z-index"]=this.KX;if(this.Vj==0)q.display="none";else{q.display=
"block";if(this.Vj==1){q.filter=q["-ms-filter"]="";q.opacity=""}else{q.filter=q["-ms-filter"]="alpha(opacity="+Math.round(this.Vj*100)+")";q.opacity=this.Vj}}e=[];if(this.Kaa){e.push("translate3d("+g(b,2)+"px, "+g(c,2)+"px, 0px)");e.push("scale3d("+a+", "+a+", "+a+")");if(this.aI){e.push("translate3d("+this.Na+"px, 0, 0)");e.push("scale3d(-1, 1, 1)")}}else{e.push("translate("+g(b,2)+"px, "+g(c,2)+"px)");e.push("scale("+a+", "+a+")");if(this.aI){e.push("translate("+this.Na+"px, 0)");e.push("scale(-1, 1)")}}a=
{};a["-moz-transform"]=a["-webkit-transform"]=a["-ms-transform"]=a.transform=e.join(" ");if(!d.isEqual(this.Y3,q)){this.Y3=q;this.KG.css(q)}if(!d.isEqual(this.v5,a)){this.v5=a;this.nP.css(a)}}};return b});
define("gi","require,jquery.mod,do,fg,ll,ge,iG,fR,R,d".split(","),function(a){var b=a("jquery.mod"),c=a("do"),d=a("fg"),f=a("ll"),e=a("ge"),g=a("iG"),k=a("fR"),i=a("R"),p=a("d"),a=d.extend(p,function(){p.call(this);this.Uc("Renderer");this.set("toolTipDisabled",n);this.set("cursor",i.lq);this.bind(f.vb,this.jb,this,n);this.bind(f.od,this.th,this,n);this.bind(f.zd,this.qh,this,n);this.bv=y;this.xb=[];this.ID=this.Ap=y;this.EU=b("<div/>");this.EU.css({position:"absolute",left:0,top:0,right:0,bottom:0,
overflow:"hidden","-webkit-transform":"translateZ(0)"});this.Pa().append(this.EU)});a.prototype.In=function(a){g.In(a,e.Sj)};a.prototype.Ai=function(a){g.Ai(a,e.Sj)};a.prototype.OX=function(a){a=new k(a,this);a.mw(this.Aa(),this.eb());a.Ia(0.5,0.5,0,1);this.EU.append(a.Cb());this.xb.push(a);this.Ap=n};a.prototype.removeItem=function(a){if(a=this.nl(a)){this.xb=c.without(this.xb,a);a.Cb().detach();this.Ap=n}};a.prototype.UX=function(a){if(a=this.nl(a)){this.xb=c.without(this.xb,a);this.xb.push(a);
this.Ap=n}};a.prototype.sya=function(a,b){this.nl(a).Qs(b)};a.prototype.mm=function(a,b){this.nl(a).xd(b)};a.prototype.pya=function(a,b){this.nl(a).Gj(b)};a.prototype.JF=function(a,b,c,d){this.nl(a).Ia(b,c,d)};a.prototype.dF=function(a){return this.nl(a).getX()};a.prototype.eF=function(a){return this.nl(a).getY()};a.prototype.Uba=function(a){return this.nl(a).hm()};a.prototype.cF=function(a){return this.nl(a).Aa()};a.prototype.bF=function(a){return this.nl(a).eb()};a.prototype.render=function(){if(this.bv){this.fta();
this.mra();for(var a=0;a<this.xb.length;a++)this.xb[a].render()}};a.prototype.fta=function(){if(this.ID){this.ID=y;for(var a=this.Aa(),b=this.eb(),c=0;c<this.xb.length;c++)this.xb[c].mw(a,b)}};a.prototype.mra=function(){if(this.Ap){this.Ap=y;for(var a=[],b=0;b<this.xb.length;b++){var c=this.xb[b],d={};d.WM=c.SB;d.index=b;d.ef=c;a.push(d)}a.sort(function(a,b){return a.WM==b.WM?a.index-b.index:a.WM-b.WM});for(b=0;b<a.length;b++)a[b].ef.Vxa(b+1)}};a.prototype.nl=function(a){if(this.sAa==a)return this.rAa;
for(var b=r,c=0;c<this.xb.length&&!b;c++)this.xb[c].getItem()==a&&(b=this.xb[c]);return b};a.prototype.jb=function(){this.ID=n;this.render()};a.prototype.th=function(){this.bv=n;this.render()};a.prototype.qh=function(){this.bv=y};return a});
define("hP","require,fg,bZ,dW,jT,cu,dk,ff,ki,gi,dm,ll".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("dW"),f=a("jT"),e=a("cu"),g=a("dk"),k=a("ff"),i=a("ki"),p=a("gi"),j=a("dm"),l=a("ll"),a=b.extend(g,function(){g.call(this,"photoAlbum");this.vL=this.DU=this.yf=y;this.o=this.g=r;this.Zha=new f(this,"buttonNext",j.Wc);this.Zha.bind(l.U,this.w7,this);this.$ha=new f(this,"buttonPrevious",j.Wc);this.$ha.bind(l.U,this.J7,this);this.Bc=b.jm(this.Ne,this)});d.A("PhotoAlbumPlayer",a).B("Object").K({photoAlbum:"PhotoAlbum",
viewerArea:"ViewerArea",state:"enum[stopped, playing, paused]",mouseTransition:"enum[blending, scroll]",mouseTransitionDuration:"number",touchTransition:"enum[blending, scroll]",touchTransitionDuration:"number",buttonNext:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPrevious:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlay:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonPlayPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonStop:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRestart:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]"}).Ag({next:function(){this.w7()},pause:function(){this.Ju()},play:function(){this.Ku()},previous:function(){this.J7()},stop:function(){this.Hr()},restart:function(){this.Gr()}}).Vb([e.le,e.dg,l.xc]);a.prototype.set=function(a,b){if(this.get(a)!=b){switch(a){case "photoAlbum":this.DU=
n;this.Bc();break;case "viewerArea":this.yf=n;this.Bc();break;case "touchTransition":case "mouseTransition":case "touchTransitionDuration":case "mouseTransitionDuration":case "transitionDuration":this.vL=n;this.Bc()}g.prototype.set.call(this,a,b)}};a.prototype.Ne=function(){if(this.yf){this.yf=y;this.vL=n;this.vo();this.get("viewerArea")&&this.ro();this.CD(this.get("viewerArea"))}if(this.g&&this.DU){this.DU=y;if(this.get("photoAlbum")){this.oD();this.o.Iya(this.get("photoAlbum"))}else this.o.Xp()}if(this.vL){this.vL=
y;this.Eaa()}};a.prototype.My=function(){this.set("photoAlbum",r)};a.prototype.ro=function(){var a=this.get("viewerArea");this.g=new p;this.g.M({left:0,top:0,bottom:0,right:0});a.la(this.g);this.o=new k(a,this.g);this.Eaa();this.o.bind(k.Rk,this.lk,this);this.o.bind(k.Qk,this.yl,this);this.o.bind(k.uO,this.CC,this);this.o.bind(k.vO,this.C7,this);this.o.bind(k.wO,this.D7,this);this.o.bind(k.sb,this.gd,this);this.ds(n)};a.prototype.vo=function(){if(this.g){this.o.unbind(k.Rk,this.lk,this);this.o.unbind(k.Qk,
this.yl,this);this.o.unbind(k.uO,this.CC,this);this.o.unbind(k.vO,this.C7,this);this.o.unbind(k.wO,this.D7,this);this.o.unbind(k.sb,this.gd,this);this.o.clear();this.g.getParent().removeChild(this.g);this.g=r;this.ds(y)}};a.prototype.Eaa=function(){var a=this.get("viewerArea");a&&this.o&&(a.gk?this.o.wN(this.get("touchTransition",i.qm),this.get("touchTransitionDuration",a.get("transitionDuration",1E3))):this.o.wN(this.get("mouseTransition",i.qm),this.get("mouseTransitionDuration",a.get("transitionDuration",
1E3))))};a.prototype.gd=function(a){this.Xb(a.data.state)};a.prototype.lk=function(a){this.dC(a.data.photoAlbum)};a.prototype.yl=function(a){this.cC(a.data.photoAlbum)};a.prototype.CC=function(a){a.data.photoAlbum.trigger(new c(l.Ba))};a.prototype.C7=function(a){a.data.item.Ev()};a.prototype.D7=function(a){a.data.item.end()};a.prototype.Vo=function(a){this.g.getParent().M({progressPercent:a.data.percent,progressVisible:n})};a.prototype.ey=function(){this.g.getParent().set("progressVisible",y)};a.prototype.w7=
function(){this.o&&this.get("photoAlbum")&&this.o.next()};a.prototype.J7=function(){this.o&&this.get("photoAlbum")&&this.o.qZ()};a.prototype.Pg=function(){this.o&&this.get("photoAlbum")&&this.o.play()};a.prototype.sj=function(){this.o&&this.get("photoAlbum")&&this.o.stop()};a.prototype.pk=function(){this.o&&this.get("photoAlbum")&&this.o.pause()};return a});
define("fd",["fg","dW","cu","dl"],function(a,b,c,d){a=a.extend(d,function(){d.call(this)});b.A("PhotoAlbumPlayListItem",a).B("PlayListItem").K({media:"PhotoAlbum",player:"PhotoAlbumPlayer"});a.prototype.start=function(){d.prototype.start.call(this);var a=this.get("player");a&&(a.bind(c.le,this.lk,this),a.set("photoAlbum",this.get("media")))};a.prototype.stop=function(){var a=this.get("player");a&&(a.unbind(c.le,this.lk,this),a.get("photoAlbum")==this.get("media")&&a.set("photoAlbum",r));d.prototype.stop.call(this)};
a.prototype.WF=function(){var a=this.get("media");if(a){var b=a.get("playList");b&&(a=b.get("selectedIndex"),b=b.get("items"),0<=a&&b&&b[a].WF())}d.prototype.WF.call(this)};a.prototype.lk=function(){this.get("player").unbind(c.le,this.lk,this);this.get("player").bind(c.dg,this.yl,this);this.Ev()};a.prototype.yl=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(c.dg,this.yl,this),this.end())};return a});
define("iV","require,fg,ge,dW,gN,z".split(","),function(a){var b=a("fg"),c=a("ge"),d=a("dW"),f=a("gN");a("z");a=b.extend(f,function(){f.call(this,c.Ufa)});d.A("PhotoAudio",a).B("MediaAudio");return a});define("kr",["fg","jd","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("PhotoCamera",a).B("Object").K({scaleMode:"enum[none, fit_inside, fit_outside, fit_to_width, fit_to_height]"});return a});
define("dM","require,do,fg,jd,bZ,dW,hi,ll".split(","),function(a){var b=a("do"),c=a("fg"),d=a("jd"),f=a("bZ"),e=a("dW"),g=a("hi"),k=a("ll"),a=c.extend(d,function(){this.td=-1;this.Qc=[];this.gD=this.ul=this.qg=m;d.call(this)});e.A("PlayList",a).B("Object").K({items:"array[PlayListItem]",selectedIndex:"number"}).Cf([k.TN]).Vb([k.aa]);a.prototype.set=function(a,b){a=="selectedIndex"?this.Tqa(b):a=="items"?this.Gqa(b):d.prototype.set.call(this,a,b)};a.prototype.get=function(a,b){return a=="selectedIndex"?
this.td:a=="items"?this.Qc:d.prototype.get.call(this,a,b)};a.prototype.Gqa=function(a){a=a||[];if(!b.isEqual(this.Qc,a)){var c=this.td;this.Qc=a;a=this.m9(this.td);this.trigger(new f(k.TN,{nextSelectedIndex:a}));this.td=a;this.V9(this.br(this.td));this.yaa();this.trigger(new f(k.aa,{previousSelectedIndex:c}));d.prototype.set.call(this,"items",this.Qc);d.prototype.set.call(this,"selectedIndex",this.td)}};a.prototype.Tqa=function(a){a=this.m9(a);if(this.td!=a){var b=this.td;this.trigger(new f(k.TN,
{nextSelectedIndex:a}));this.td=a;this.V9(this.br(this.td));this.yaa();this.trigger(new f(k.aa,{previousSelectedIndex:b}));d.prototype.set.call(this,"selectedIndex",this.td)}};a.prototype.m9=function(a){return Math.max(-1,Math.min(this.Qc.length-1,a))};a.prototype.br=function(a){return a>=0?this.Qc[a]:r};a.prototype.V9=function(a){if((this.qg!=a||this.ul!==m)&&this.ul!==a)if(this.ul===m){this.ul=a;if(this.qg)if(this.ul&&this.qg.get("player")==this.ul.get("player")){this.qg.WF();this.Lu()}else this.qg.stop();
else this.Lu()}else this.ul=a};a.prototype.Lu=function(){if(this.qg){this.qg.unbind(k.Pk,this.hU,this);this.qg.unbind(k.oe,this.Lu,this);this.qg.unbind(k.Ba,this.Lu,this)}if(this.ul){this.qg=this.ul;this.ul=m;this.qg.bind(k.Pk,this.hU,this);this.qg.bind(k.oe,this.Lu,this);this.qg.start()}else{this.ul=this.qg=m;this.set("selectedIndex",-1)}};a.prototype.hU=function(){this.qg.unbind(k.Pk,this.hU,this);this.qg.unbind(k.oe,this.Lu,this);this.qg.bind(k.Ba,this.Lu,this)};a.prototype.yaa=function(){this.gD&&
g.$M(this.gD.get("media"),-1);(this.gD=this.Qc&&this.td>=0?this.Qc[(this.td+1)%this.Qc.length]:r)&&g.$M(this.gD.get("media"),1)};return a});define("hY",["fg","dW","dM"],function(a,b,c){a=a.extend(c,function(){c.call(this)});b.A("PhotoPlayList",a).B("PlayList").K({items:"array[PhotoPlayListItem]"});return a});define("im",["fg","dW","dl"],function(a,b,c){a=a.extend(c,function(){c.call(this)});b.A("PhotoPlayListItem",a).B("PlayListItem").K({media:"Photo",camera:"PhotoCamera"});return a});
define("eG",["require","do","fg","eT","dW"],function(a){a("do");var b=a("fg"),c=a("eT"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("PlaybackBar",b).B("UIComponent").K({barBackgroundColor:"or[array[color], color]",barBackgroundColorDirection:"enum[horizontal, vertical]",barBackgroundColorRatios:"array[number]",barBorderColor:"color",barBorderRadius:"number",barBorderSize:"number",barOpacity:"number",playheadBackgroundColor:"or[array[color], color]",playheadBackgroundColorDirection:"enum[horizontal, vertical]",
playheadBackgroundColorRatios:"array[number]",playheadBorderColor:"color",playheadBorderRadius:"number",playheadBorderSize:"number",playheadOpacity:"number",playheadWidth:"or[number, percent]",playheadHeight:"or[number, percent]",playheadShadow:"bool",playheadShadowBlurRadius:"number",playheadShadowColor:"color",playheadShadowHorizontalLength:"number",playheadShadowOpacity:"number",playheadShadowSpread:"number",playheadShadowVerticalLength:"number",stepBackgroundColor:"or[array[color], color]",stepBackgroundColorDirection:"enum[horizontal, vertical]",
stepBackgroundColorRatios:"array[number]",stepBorderColor:"color",stepBorderRadius:"number",stepBorderSize:"number",stepOpacity:"number",stepWidth:"or[number, percent]",stepHeight:"or[number, percent]",stepShadow:"bool",stepShadowBlurRadius:"number",stepShadowColor:"color",stepShadowHorizontalLength:"number",stepShadowOpacity:"number",stepShadowSpread:"number",stepShadowVerticalLength:"number",selectedStepBackgroundColor:"or[array[color], color]",selectedStepBackgroundColorDirection:"enum[horizontal, vertical]",
selectedStepBackgroundColorRatios:"array[number]",selectedStepBorderColor:"color",selectedStepBorderRadius:"number",selectedStepBorderSize:"number",selectedStepOpacity:"number",selectedStepWidth:"or[number, percent]",selectedStepHeight:"or[number, percent]",selectedStepShadow:"bool",selectedStepShadowBlurRadius:"number",selectedStepShadowColor:"color",selectedStepShadowHorizontalLength:"number",selectedStepShadowOpacity:"number",selectedStepShadowSpread:"number",selectedStepShadowVerticalLength:"number",
position:"number",duration:"number",steps:"number",selectedStep:"number"});return b});
define("kd",["require"],function(){function a(a){try{for(var f=(c.oF<<12)+c.sF&65535,e="",g=0,k=a.length;g<k;)var i=b.indexOf(a.charAt(g++))<<12|b.indexOf(a.charAt(g++))<<6|b.indexOf(a.charAt(g++))<<0,i=i-f+65536&65535,e=e+String.fromCharCode(i);return e}catch(p){if("{%"==a.substr(0,2))return""}}var b="";[[65,26],[97,26],[48,10]].forEach(function(a){for(var c=0;c<a[1];c++)b+=String.fromCharCode(a[0]+c)});var b=b+"+/",c={yua:"true"};c.oF=parseInt("0")||
0;c.sF=parseInt("1475")||1;c.iza="true";c.name=a("AX2AYHAYZAYsAY2AY3AYkAXjAYTAYvAYkAY8AYoAY1");c.$ea=a("");return c});define("bh",[],function(){return{qa:"left",Ma:"right",mb:"top",lb:"bottom"}});
define("cI",["fg","dy","N","bh"],function(a,b){var c=a.extend(b,function(){b.call(this)});c.prototype.tB=R(0);c.prototype.uB=R(0);c.prototype.Jy=function(){b.prototype.Jy.call(this);this.Vq(function(a){a.xe(n)})};c.prototype.mp=function(){b.prototype.mp.call(this);this.Vq(function(a){a.OF(this.tB(a,this.Ds()));a.PF(this.uB(a,this.Ds()))})};c.prototype.Hy=function(){this.Vq(function(a){a.OF(this.tB(a,1));a.PF(this.uB(a,1))});b.prototype.Hy.call(this)};c.prototype.Iy=function(){this.Vq(function(a){a.OF(this.tB(a,
0));a.PF(this.uB(a,0))});b.prototype.Iy.call(this)};return c});
define("dE",["fg","cI","bh"],function(a,b,c){a=a.extend(b,function(){b.call(this)});a.prototype.tB=function(a,b){switch(this.get("from")){case c.mb:case c.lb:return 0;case c.qa:var e=a.da,g=a.Aa();return isNaN(g)||isNaN(e)?1E4:(-e-g)*(1-b);default:e=a.getParent();if(!e)return 0;g=e.Hd();e=a.da;return isNaN(e)||isNaN(g)?1E4:(g-e)*(1-b)}};a.prototype.uB=function(a,b){switch(this.get("from")){case c.mb:var e=a.fa,g=a.eb();return isNaN(g)||isNaN(e)?1E4:(-e-g)*(1-b);case c.lb:e=a.getParent();if(!e)return 0;
g=e.Gd();e=a.fa;return isNaN(e)||isNaN(g)?1E4:(g-e)*(1-b);default:return 0}};a.prototype.Iy=function(){this.Vq(function(a){a.OF(0);a.PF(0);a.xe(y)})};return a});
define("fP",["fg","cI","N","bh"],function(a,b,c,d){a=a.extend(b,function(){b.call(this)});a.prototype.tB=function(a,b){switch(this.get("to")){case d.mb:case d.lb:return 0;case d.qa:var c=a.da,k=a.Aa();return isNaN(k)||isNaN(c)?1E4:(-c-k)*b;default:c=a.getParent();if(!c)return 0;k=c.Hd();c=a.da;return isNaN(c)||isNaN(k)?1E4:(k-c)*b}};a.prototype.uB=function(a,b){switch(this.get("to")){case d.mb:var c=a.fa,k=a.eb();return isNaN(k)||isNaN(c)?1E4:(-c-k)*b;case d.lb:c=a.getParent();if(!c)return 0;k=c.Gd();
c=a.fa;return isNaN(c)||isNaN(k)?1E4:(k-c)*b;default:return 0}};a.prototype.Hy=function(){this.Vq(function(a){a.OF(0);a.PF(0);a.xe(y)})};return a});
define("A","require,jquery.mod,fg,ll,lk,r,ez,jY,ck,c,kS,dE,fP,hR".split(","),function(a){function b(a){try{return window.localStorage.getItem(a)}catch(b){}}var c=a("jquery.mod"),d=a("fg"),f=a("ll"),e=a("lk"),g=a("r"),k=a("ez"),i=a("jY"),p=a("ck"),j=a("c"),l=a("kS"),q=a("dE"),o=a("fP"),t=a("hR"),a=d.extend(l,function(a){l.call(this);this.ib=a;this.fg=this.Ft=this.Fq=this.ni=r;a=new q;a.set("duration",500);a.set("from","bottom");a=new o;a.set("duration",500);a.set("to","bottom");this.M({creationPolicy:p.pt,
verticalAlign:i.tc,horizontalAlign:i.Mc,visible:y,showEffect:this.xAa,hideEffect:this.yAa});this.rW="";a=this.Cla();if(a===n)setTimeout(function(){this.trigger(f.Cw)}.bind(this),0);else if(a===m){this.ib.bind(f.D("cookiesPolicy"),this.u3,this);setTimeout(function(){this.u3()}.bind(this),0)}});a.prototype.Fa=function(){l.prototype.Fa.call(this);this.M({backgroundColor:"#1a1a1a",width:"100%",left:0,bottom:0});if(this.ni==r){this.ni=new t;this.ni.M({content:this.rW,fontColor:"#ffffff",fontWeight:"400",
fontFamily:"Open Sans, Arial, sans-serif",width:"100%"});this.la(this.ni)}if(this.Fq==r){this.Fq=new l;this.la(this.Fq);this.Fq.M({creationPolicy:p.pt,verticalAlign:i.tc,layout:j.Be})}if(this.Ft==r){this.Ft=new k;this.Ft.M({backgroundColor:"#2aabe2",fontColor:"#ffffff",fontFamily:"Open Sans, Arial, sans-serif",label:e("accept").toUpperCase(),verticalAlign:"middle"});this.Fq.la(this.Ft);this.Ft.bind(f.U,this.Qha,this,n)}if(this.ex==r){this.ex=new k;this.ex.M({backgroundColor:"#1a1a1a",fontColor:"#808080",
fontFamily:"Open Sans, Arial, sans-serif",label:e("reject").toUpperCase(),textDecoration:"underline",verticalAlign:"middle"});this.Fq.la(this.ex);this.ex.bind(f.U,this.bia,this,n)}};a.prototype.Zm=function(){l.prototype.Zm.apply(this,arguments);var a=this.Ra();if(a){a.bind(f.vb,this.dn,this,n);this.dn()}};a.prototype.dn=function(){var a=this.Ra();if(a){var b=g.Xa(),c=a.eb()>a.Aa(),d=Math.min(a.Aa(),a.eb())/100,a=function(a){return Math.round(a*d)};this.M({gap:b?a(4.63):20,paddingLeft:b?a(4.63):20,
paddingRight:b?a(4.63):20,paddingTop:b?a(4.63):14,paddingBottom:b?a(4.63):14,layout:b&&c?j.kf:j.Be});this.ni&&this.ni.M({fontSize:b?a(3.15):14,textAlign:b&&c?"center":"left"});this.Fq&&this.Fq.M({gap:b?0:13});this.Ft&&this.Ft.M({borderRadius:b?a(4.63):15,fontSize:b?a(3.15):14,height:b?a(9.26):30,paddingLeft:b?a(6):20,paddingRight:b?a(6):20});this.ex&&this.ex.M({borderRadius:b?a(4.63):15,fontSize:b?a(3.15):14,height:b?a(9.26):30,paddingLeft:b?a(6):20,paddingRight:b?a(6):20});this.Lc()}};a.prototype.u3=
function(){var a=d.toArray(this.ib.get("cookiesPolicy"));if(this.bD!=a){this.bD=a;this.Rpa()}};a.prototype.Rpa=function(){if(this.bD.length==0)this.OV(r);else{var a=this.bD[0];d.toArray(a.get("geographicArea")).length==0?this.OV(a):this.bla(function(a){for(var b=r,c=0;c<this.bD.length&&!b;c++){var e=this.bD[c],f=d.toArray(e.get("geographicArea"));if(f.length==0)b=e;else for(var g=0;g<f.length&&!b;g++)a.indexOf(f[g])>=0&&(b=e)}this.OV(b)}.bind(this))}};a.prototype.OV=function(a){if(this.py!==a){this.py&&
this.py.unbind(f.D("url"),this.iX,this);if(this.py=a){this.py.bind(f.D("url"),this.iX,this);this.iX();this.set("visible",n)}else{this.trigger(f.Cw);this.set("visible",y)}}};a.prototype.iX=function(){var a=c(document.createElement("div")).html(e("cookies-notice"));a.find("a").css({color:"#2aabe2",cursor:"pointer","text-decoration":"underline"}).attr({href:this.py.get("url"),target:"_blank"});this.rW=a.html();this.ni&&this.ni.set("content",this.rW)};a.prototype.Qha=function(){this.W9(n);this.set("visible",
y);this.trigger(f.Cw)};a.prototype.bia=function(){this.W9(y);this.set("visible",y)};var s=["AT","BE","BG","CY","CZ","DE","DK","EE","EL","ES","FI","FR","HR","HU","IE","IT","LT","LU","LV","MT","NL","PL","PT","RO","SE","SI","SK"];a.prototype.bla=function(a){this.Tka(function(b){var c=[b];s.indexOf(b)&&c.push("EU");a(c)})};a.prototype.Tka=function(a){var d=b("tdvp_country_code");if(d)a(d);else if(!this.g4){this.g4=n;c.get("https://geoloc.3dvista.com",function(b){this.g4=y;b=b.country.toUpperCase();try{window.localStorage.setItem("tdvp_country_code",
b)}catch(c){}a(b)}.bind(this))}};var u="tdvp_accept_cookies_"+window.location.origin+window.location.pathname;a.prototype.Cla=function(){var a=b(u);if(a=="yes")return n;if(a=="no")return y};a.prototype.W9=function(a){try{window.localStorage.setItem(u,a?"yes":"no")}catch(b){}};return a});
define("jl",["require"],function(){function a(a){var b=a instanceof Request||a instanceof Response?a.url:a;b&&(b=b.split("#")[0]);b&&(b=b.split("?")[0]);return!b||-1!=b.indexOf("://")?Promise.resolve(b):("undefined"!==typeof window?Promise.resolve(window.location.href):self.KAa.matchAll({type:"window"}).then(function(a){if(a.length)return a[0].url})).then(function(a){return(new URL(b,a)).toString()})}function b(a,b){return new Promise(function(c,d){(b===m?f():Promise.resolve(b)).then(function(b){(window.webkitRequestFileSystem||
window.requestFileSystem)(b?window.PERSISTENT:window.TEMPORARY,a,function(a){c(a)},function(a){console.log("Error getting file system access",a);d("error getting file system")})},function(a){console.log("error getting file system access",a);d("error getting file system")})})}function c(a,b){return a&&a.queryUsageAndQuota?new Promise(function(c,d){a.queryUsageAndQuota(function(e,f){console.log("UsedBytes:",e,"grantedBytes:",f,"freeBytesRequired:",b);var g=e+b;f>=g?c(g):a==navigator.webkitPersistentStorage||
a==navigator.persistentStorage?(console.log("requestQuota:",g),a.requestQuota(g,function(){console.log("Granted bytes:",g);c(g)},function(a){console.log("Not granted bytes:",g,a);d("not enough free space granted")})):(console.log("Not enough temporary free space."),d("not enough free space granted"))},function(a){console.log("Query quota error:",a);a&&a.message&&(a=a.message);d("not enough free space granted: "+a)})}):Promise.reject("unknown free space")}function d(){return(navigator.storage&&navigator.storage.persist?
navigator.storage.persist():Promise.resolve(y)).then(function(a){console.log("Persistence granted:",a);return a?navigator.webkitPersistentStorage||navigator.persistentStorage:navigator.webkitTemporaryStorage||navigator.temporaryStorage})}function f(){return navigator.storage&&navigator.storage.persisted?navigator.storage.persisted():Promise.resolve(y)}function e(){return!v?Promise.reject("files uninitialized, no space was requested"):Promise.resolve(v)}function g(a){a.length&&"/"==a[0]&&(a=a.substr(1));
return a.split("/").filter(function(a){return""!=a})}function k(a){return new Promise(function(b,c){a.remove(function(){b()},function(a){c("can't remove entry"+(a&&a.message?": "+a.message:"")+".")})})}function i(a){return p(a).then(function(a){return Promise.all(a.map(function(a){return a.isDirectory?i(a):k(a)}))}).then(function(){return k(a).then(function(){return Promise.resolve()},function(){return Promise.resolve()})})}function p(a){return new Promise(function(b,c){a.createReader().readEntries(function(a){b(a)},
function(){c("can't list directory")})})}function j(a,b,c){return new Promise(function(d,e){a.getDirectory(b,c,function(a){d(a)},function(){e("can't get directory entry: "+b)})})}function l(a,b){return new Promise(function(c,d){j(a,b,{create:y}).then(function(a){c(a)})["catch"](function(){j(a,b,{create:n}).then(function(a){c(a)})["catch"](function(a){console.log("Can't create directory entry: "+b,a);d("can't create directory entry: "+b)})})})}function q(a,b){return 0==b.length?a:l(a,b[0]).then(function(a){return q(a,
b.slice(1))})}function o(a,b){return 0==b.length?a:j(a,b[0]).then(function(a){return o(a,b.slice(1))})}function t(a,b,c){return new Promise(function(d,e){a.getFile(b,c,function(a){d(a)},function(){e("can't get file entry: "+b)})})}function s(a){return new Promise(function(b,c){a.createWriter(function(a){b(a)},function(){c("can't create File for writing")})})}function u(a){var b=a.lastIndexOf(".");switch((0>b?"":a.substr(b)).toLowerCase()){case ".bmp":return"image/bmp";case ".eot":return"application/vnd.ms-fontobject";
case ".gif":return"image/gif";case ".htm":case ".html":return"text/html";case ".jpeg":case ".jpg":return"image/jpeg";case ".js":return"text/javascript";case ".json":return"application/json";case ".m3u8":return"application/vnd.apple.mpegurl";case ".m4a":return"audio/mp4";case ".m4v":return"video/mp4";case ".mp3":return"audio/mpeg";case ".mp4":return"video/mp4";case ".ogg":return"audio/ogg";case ".ogv":return"video/ogg";case ".otf":return"font/otf";case ".png":return"image/png";case ".svg":return"image/svg+xml";
case ".tif":return"image/tiff";case ".tiff":return"image/tiff";case ".ts":return"video/vnd.dlna.mpeg-tts";case ".ttf":return"application/font-sfnt";case ".tts":return"video/vnd.dlna.mpeg-tts";case ".txt":return"text/plain";case ".webm":return"video/webm";case ".woff":return"font/x-woff";case ".woff2":return"font/woff2";case ".xml":return"text/xml";default:return"application/octet-stream"}}var v=r;return{dN:function(){return f()},toURL:function(b,c){return a(b).then(function(a){var a=new URL(a),b=
c?"persistent":"temporary",d=a.pathname.split("/").map(encodeURIComponent).join("/");return"filesystem:"+a.origin+"/"+b+d})},zxa:function(a){return d().then(function(b){return c(b,a)}).then(function(a){return b(a)}).then(function(a){v=a})},sxa:function(a){var a=g(a),b=a[a.length-1],c=a.slice(0,-1);return e().then(function(a){return o(a.root,c)}).then(function(a){return t(a,b,{create:n})},function(){return Promise.resolve(r)}).then(function(a){return a&&k(a)})},Mda:function(a,c){var d=g(a);return b(1024,
c).then(function(a){return o(a.root,d)}).then(function(a){return i(a)},function(){return Promise.resolve()})},afa:function(a,b,c){var d=g(a),f=d[d.length-1],i=d.slice(0,-1);return e().then(function(a){return q(a.root,i)}).then(function(a){return t(a,f,{create:y}).then(function(a){return Promise.resolve(a)},function(){return t(a,f,{create:n})})}).then(function(a){return s(a)}).then(function(d){d.seek(d.length);return new Promise(function(e,g){d.onwriteend=function(){e()};d.onerror=function(b){console.log("Error writing file:",
a,b);g("error writing file: "+a)};d.write(new Blob([b],{type:c||u(f)}))})})}}});
define("bX",["require","jl","jt","r"],function(a){function b(a,b){this.Xr=a;this.mQ=y;this.lD=r;this.ap=b||C()}function c(a){return a.ww>=e}var d=a("jl"),f=a("jt"),e=1048576,g=10485760,k=a("r").we()?3:5,a={File:function(a,b){this.url=a;this.ww=b;this.BF=this.dz=0}},i=a.Files=function(a,b,c,d){this.H2=this.Fha=a;this.Sm=b.slice();this.f4=[];var e=0;this.Sm.sort(function(a,b){return a.ww-b.ww});this.Sm.forEach(function(a){e+=a.ww});this.P$=e;this.Yt=[];this.kH=m;this.Hm=[];this.nQ=y;this.Wd=c||C();
this.jB=d||C()};i.prototype.tn=function(){return this.yia().then(function(){return this.zia()}.bind(this))};i.prototype.yia=function(){return self.caches["delete"](this.H2)};i.prototype.zia=function(){var a=(new f(this.Fha)).pathname;return d.Mda(a,y).then(function(){return d.Mda(a,n)})};i.prototype.requestStorage=function(){return d.zxa(Math.round(1.1*this.P$+10485760)).then(function(){return d.dN()})};i.prototype.download=function(){this.nQ=y;this.kH=0;this.tn().then(function(){this.hB()}.bind(this))["catch"](function(a){console.log("error cleaning storage",
a);d.dN().then(function(a){this.jB(y,a)}.bind(this))}.bind(this))};i.prototype.cancelDownload=function(){this.nQ=n;this.Hm.forEach(function(a){a.cancel()});this.tn()};i.prototype.hB=function(){if(!(this.nQ||this.Hm.length>=k))if(0<this.Sm.length){var a;if(1==k)a=0.5<Math.random()?this.Sm.shift():this.Sm.pop();else if(0==this.Yt.filter(c).length)a=this.Sm.pop();else{if(c(this.Sm[0]))return;a=this.Sm.shift()}this.Yt.push(a);var e=f.Dv(a.url,"nc="+(new Date).getTime()),g=new b(e,function(b){a.dz=b.dz;
this.Zl()}.bind(this));this.Hm.push(g);g.fetch().then(function(b){return this.Hra(a.url,b)}.bind(this)).then(function(){this.T3(a,g,n)}.bind(this))["catch"](function(b){console.log("download error",a.url,a.ww,a.dz,b);this.T3(a,g,y)}.bind(this));this.hB()}else if(0==this.Hm.length){var i=5>=this.f4.length;d.dN().then(function(a){this.jB(i,a)}.bind(this))}};i.prototype.T3=function(a,b,e){e?(this.Yt.splice(this.Yt.indexOf(a),1),this.Hm.splice(this.Hm.indexOf(b),1),this.kH+=a.ww,this.Zl(),this.hB()):
(a.dz=0,a.BF+=1,this.Zl(),20<=a.BF?(console.log("Error downloading file: "+a.url+" after "+a.BF+" retries."),this.G5(a.url)?(this.f4.push(a),this.Hm.splice(this.Hm.indexOf(b),1),this.hB()):(this.cancelDownload(),d.dN().then(function(a){this.jB(y,a)}.bind(this)))):(console.log("Error downloading file: "+a.url+" attempt "+a.BF+" of 20. Will retry in 2000ms."),setTimeout(function(){this.Yt.splice(this.Yt.indexOf(a),1);this.Hm.splice(this.Hm.indexOf(b),1);c(a)?this.Sm.push(a):this.Sm.splice(0,0,a);this.hB()}.bind(this),
2E3)))};i.prototype.Hra=function(a,b){return this.Jra(a,b).then(function(){if(!this.G5(a))return this.Ira(a,b)}.bind(this))};i.prototype.Ira=function(a,b){b=b.clone();return 200!=b.status?Promise.reject("response status: "+b.status):self.caches.open(this.H2).then(function(c){return c.put(a,b)})};i.prototype.Jra=function(a,b){b=b.clone();if(200!=b.status)return Promise.reject("response status: "+b.status);var c=(new f(a)).pathname;return c.lastIndexOf("/")==c.length-1?Promise.resolve():new Promise(function(a,
e){function f(){F.read().then(function(b){var c=b.value,d=[];if(c){for(;c.length+z>=g;){var e=c.slice(0,g-z);p.push(e);d.push(i(p));p=[];z=0;c=c.slice(e.length,c.length)}0<c.length&&(p.push(c),z+=c.length)}var l=b.done;z&&l&&d.push(i(p));j(d).then(function(){l?a():f()})["catch"](k)})["catch"](k)}function i(a){if(0==a.length)return new Uint8Array(0);var b=0;a.forEach(function(a){b+=a.length});for(var c=new Uint8Array(b),d=0,e=0;e<a.length;d+=a[e].length,e++)c.set(a[e],d);return c}function j(a){if(0==
a.length)return Promise.resolve();var b=a.shift();return d.afa(c,b).then(function(){j(a)})}function k(a){console.log("Error writing response to file system:",a);d.sxa(c).then(function(){e("Error reading response body")})}var p=[],z=0,F=b.body.getReader();f()})};var p=".bmp,.gif,.jpeg,.jpg,.m3u8,.m4a,.m4v,.mp3,.mp4,.ogg,.ogv,.otf,.png,.svg,.tif,.tiff,.ts,.tts,.webm,.woff,.woff2".split(",");i.prototype.G5=function(a){var a=(new f(a)).pathname,b="."+a.split(".").pop().toLowerCase();return 0<=p.indexOf(b)&&
0>a.indexOf("loading/")};i.prototype.Zl=function(){var a=this.kH;this.Yt.forEach(function(b){a+=b.dz});this.Wd(100*a/this.P$)};b.prototype.fetch=function(){return fetch(this.Xr).then(function(a){if(this.mQ)return a.body.getReader().cancel(),Promise.reject("cancel requested before server responded.");if(!a.ok)return Promise.resolve(a);var b=a.headers.get("content-length"),c=m,d=0;b!==r&&(c=parseInt(b,10));this.lD=a.body.getReader();var e=y,f=function(a){this.mQ?a.close():e=n}.bind(this),g=function(a){return this.lD.read().then(function(b){var e=
b.value;e&&(d+=e.byteLength,a.enqueue(e));b.done&&(c=d,i(a));this.ap({ww:c,dz:d})}.bind(this))["catch"](function(b){console.log("Error reading response",b);a.error(b)}.bind(this))}.bind(this),i=function(a){e&&(a.close(),e=y,this.lD=r)}.bind(this);return new Response(new ReadableStream({start:function(a){return f(a)},pull:function(a){return g(a)},cancel:function(){i()}}))}.bind(this))};b.prototype.cancel=function(){this.mQ=n;this.lD&&this.lD.cancel()};a.tn=function(a){return(new i(a,[])).tn()};return a});
define("dO","require,fg,jquery.mod,ll,eO,r,bX,jl,jE,jt,iL,cJ".split(","),function(a){function b(a){o=a}var c=a("fg"),d=a("jquery.mod"),f=a("ll"),e=a("eO"),g=a("r"),k=a("bX"),i=a("jl"),p=a("jE"),j=a("jt"),l=a("iL"),q=a("cJ"),o=r;window.addEventListener("beforeinstallprompt",b);var t=c.extend(e,function(a){e.call(this);this.ib=a;this.m="initial";this.DV=this.XK=this.Ig=r;this.fV=y;this.du=r;this.LL=m;this.Wt=o;this.YI=t.fda();this.AT=j.ag("vr");if(!this.Wt&&!this.YI){window.removeEventListener("beforeinstallprompt",
b);window.addEventListener("beforeinstallprompt",this.vna.bind(this))}this.YI||window.addEventListener("appinstalled",this.gha.bind(this))});t.prototype.XZ=function(a){this.XK=a;this.Qi=j.Ss(this.XK.get(TDV.PlayerSettings.BASE_DIR_URL)||j.getDirectory(this.XK.get(TDV.PlayerSettings.SELECTED_SCRIPT_URL)));if(this.Qi[this.Qi.length-1]!="/")this.Qi=this.Qi+"/";this.Ig=new s(this.Qi);this.LL=this.Q8=a.get(TDV.PlayerSettings.QUERY_STRING_PARAMETERS);this.fma=j.parse(j.getDirectory(window.location.href)).pathname;
this.nka=j.Dv(j.Ss("files.json",this.Qi),this.Q8);a=TDV.Da.DM();this.DV=j.Dv(this.XK.get(TDV.PlayerSettings.SERVICE_WORKER_URL),"swv="+a.MAJOR+"."+a.MINOR);this.Ig=new s(this.Qi);this.Ig.bind(f.T,this.Xra,this,n);this.Ig.load()};t.prototype.xz=function(){return this.Ig.state==s.eA};t.prototype.jba=function(){return this.m=="can_install"&&!this.AT};t.prototype.lba=function(){return this.xz()&&this.LL!=this.Ig.version&&!this.AT};t.prototype.iba=function(){return this.Ig.state!=s.D_&&!this.AT};t.prototype.Pca=
function(){if(this.m=="can_install")if(this.Wt){this.Wt.userChoice.then(function(a){a.outcome!="accepted"&&this.Xb("unavailable")}.bind(this));this.Wt.prompt().then(function(){this.Wt=r}.bind(this))}else this.zR()};t.prototype.cancel=function(){if(this.m=="downloading"){if(this.du){this.du.cancelDownload();this.du=r}this.Ig.tn();this.Xb("unavailable")}};t.prototype.tn=function(){k.tn(this.Qi);this.Ig.tn()};t.prototype.Xra=function(){this.ib.get("downloadEnabled")!==n?this.Xb("unavailable"):p.lfa!==
n?this.Xb("unavailable"):g.browser()!=g.Di||g.Jc()==g.Vs||g.Jc()==g.Aw?this.Xb("unavailable"):this.DV?"serviceWorker"in navigator?this.xz()&&!this.lba()?this.Xb("unavailable"):navigator.onLine?this.lpa():this.Xb("unavailable"):this.Xb("unavailable"):this.Xb("unavailable")};t.prototype.Xb=function(a){if(this.m!=a){this.m=a;a=["can_install","unavailable"].indexOf(this.m)>=0;if(this.fV!=a)(this.fV=a)&&this.trigger(f.Ib)}};t.prototype.lpa=function(){this.Xb("registering_sw");navigator.serviceWorker.register(this.DV,
{scope:this.fma}).then(function(){this.y9(n)}.bind(this))["catch"](function(){this.y9(y)}.bind(this))};t.prototype.y9=function(a){if(a)if(g.we())this.Xb("can_install");else if(this.YI&&this.Ig.state==s.ZN){this.Xb("can_install");this.zR()}else if(this.Wt)this.Xb("can_install");else{this.Xb("sw_registered");setTimeout(function(){this.m=="sw_registered"&&this.Xb("can_install")}.bind(this),3E3)}else this.Xb("unavailable")};t.prototype.vna=function(a){this.Wt=a;this.m=="sw_registered"&&this.Xb("can_install")};
t.prototype.gha=function(){this.m=="sw_registered"&&this.Xb("can_install");this.zR()};t.prototype.zR=function(){this.Xb("downloading");this.trigger(f.Pk);this.daa(0);this.Wma()};t.prototype.Wma=function(){var a=j.Dv(this.nka,"nc="+(new Date).getTime());d.getJSON(a,function(a){if(this.m=="downloading"){var b=[],c;for(c in a){var d=a[c].tags;if(d){Array.isArray(d)||(d=[d]);for(var e=0;e<d.length;e++)b.indexOf(d[e])<0&&b.push(d[e])}}var f=[];b.indexOf("mobilevr2gen")>=0&&g.XY()?f.push("mobilevr2gen"):
b.indexOf("mobilevr")>=0&&g.we()?f.push("mobilevr"):b.indexOf("mobile")>=0&&g.Xa()?f.push("mobile"):b.indexOf("desktop")>=0&&!g.Xa()&&f.push("desktop");b=[];for(c in a){if(d=a[c].tags){var i=y;if(Array.isArray(d))for(var e=0,l=d.length;e<l&&!i;e++)i=f.indexOf(d[e])>=0;else i=f.indexOf(d)>=0;if(!i)continue}d=j.Ss(c,this.Qi);b.push(new k.File(d,a[c].size))}var o=(new j(window.location.pathname,window.location.href)).toString();b.filter(function(a){return a.url==o}).length==0&&b.push(new k.File(o,1024));
this.du=new k.Files(this.Qi,b,this.daa.bind(this),this.S3.bind(this));this.du.requestStorage().then(function(a){this.Ig.storage=a?s.lA:s.bP;this.Ig.state=s.ZN;this.Ig.version=this.LL;this.Ig.save();this.du.download()}.bind(this))["catch"](function(){this.S3(y,m)}.bind(this))}}.bind(this))};t.prototype.daa=function(a){this.trigger(new l(f.vc,a))};t.prototype.S3=function(a,b){this.du=r;this.Xb("unavailable");if(a){this.Ig.state=s.eA;this.Ig.save()}a?this.trigger(f.Ba,{success:n}):b?this.trigger(f.Ba,
{success:y,error:t.F_}):g.we()?this.trigger(f.Ba,{success:y,error:t.E_}):this.YI?this.trigger(f.Ba,{success:y,error:t.F_}):this.trigger(f.Ba,{success:y,error:t.G_})};t.fda=function(){return j.Yg("installed",y)};t.ixa=function(a,b){var c=new t.IO(a);c.bind(f.T,function(){var d=y;c.state==t.IO.eA&&(d=t.fda()?n:!navigator.onLine);d?i.toURL(a,c.storage==t.IO.lA).then(function(a){b(a)}):b(a)},this,n);c.load()};t.G_="launchFromHomeScreen";t.E_="addToBookmark";t.F_="errorDownloading";var s=c.extend(e,function(a){e.call(this);
this.Qi=a;this.uT="installation_state_"+a;this.Hoa=j.parse(this.Qi).pathname+"installation_state.json";this.state=this.storage=this.version=m;this.G9()});s.prototype.load=function(){if(this.Xma()&&this.state==s.eA)this.I$(this.storage==s.lA).then(function(){this.trigger(f.T)}.bind(this))["catch"](function(){this.I$(this.storage!=s.lA).then(function(){this.storage=this.storage==s.bP?s.lA:s.bP;this.wV();this.trigger(f.T)}.bind(this))["catch"](function(){this.state=s.ZN;this.wV();this.trigger(f.T)}.bind(this))}.bind(this));
else this.trigger(f.T)};s.prototype.save=function(){this.wV();this.state==s.eA&&this.Ppa()};s.prototype.Xma=function(){var a=q.getItem(this.uT);if(!a)return y;this.Eka(a);return n};s.prototype.wV=function(){q.setItem(this.uT,this.O$())};s.prototype.I$=function(a){return new Promise(function(b,c){i.toURL(this.Qi+"installation_state.json",a).then(function(a){d.ajax({type:"GET",url:a,success:function(){b()},error:function(){c()}})}.bind(this))}.bind(this))};s.prototype.Ppa=function(){i.afa(this.Hoa,
this.O$(),"text/json")};s.prototype.O$=function(){var a={};a.version=this.version;a.storage=this.storage;a.state=this.state;return JSON.stringify(a)};s.prototype.Eka=function(a){this.Dka(JSON.parse(a))};s.prototype.Dka=function(a){this.version=a.version;this.storage=a.storage;this.state=a.state};s.prototype.tn=function(){q.removeItem(this.uT);this.G9()};s.prototype.G9=function(){this.version="";this.storage=s.dga;this.state=s.D_};s.dga="unkonwn";s.bP="temporary";s.lA="persistent";s.D_="not started";
s.ZN="started";s.eA="completed";t.IO=s;return t});
define("ij","require,fg,ll,lk,r,dO,ez,eF,jY,c,kS,d,gP".split(","),function(a){function b(a){var b=new k;b.M({label:a,backgroundColor:"#0071BC",borderRadius:2,fontColor:"#ffffff",fontWeight:"400",fontFamily:"Arial, sans-serif",fontSize:14,paddingLeft:14,paddingRight:14,height:31,verticalAlign:p.tc});return b}var c=a("fg"),d=a("ll"),f=a("lk"),e=a("r"),g=a("dO"),k=a("ez"),i=a("eF"),p=a("jY"),j=a("c"),l=a("kS"),q=a("d"),o=a("gP"),a=c.extend(l,function(a,b){l.call(this);this.ib=a;this.ce=b;this.ce.bind(d.Ib,
this.yma,this,n);this.ce.bind(d.Pk,this.vma,this,n);this.ce.bind(d.vc,this.xma,this,n);this.ce.bind(d.Ba,this.wma,this,n);this.S="hidden";this.AE=m;this.KU=y;this.Wd=m;this.fg=this.lo=this.Gt=this.Jt=this.Ht=this.bL=this.sa=r;this.dha();this.M({backgroundColor:"#000000",gap:18,height:55,width:"100%",paddingLeft:28,paddingRight:28,verticalAlign:p.tc,layout:j.Be});this.ie()});a.prototype.yma=function(){if(this.ce.jba()||this.ce.xz()&&this.ce.iba()){this.S="ready";this.KU&&this.o$()}else this.S="hidden";
this.ie()};a.prototype.vma=function(){this.S="installing";this.ie()};a.prototype.xma=function(a){this.Wd=a.Ih;this.ie()};a.prototype.wma=function(a){this.S=a.data.success?"installed":"failed";this.c4=a.data.error;this.ie()};a.prototype.fj=function(){this.Gra()};a.prototype.GJ=function(){if(!this.KU){this.KU=n;this.S=="ready"&&this.o$()}};a.prototype.o$=function(){this.AE=setTimeout(function(){this.AE=r;this.voa()}.bind(this),5E3);this.ie()};a.prototype.Gra=function(){this.b9();this.AE&&clearTimeout(this.AE);
this.AE=r};a.prototype.voa=function(){this.b9();if(this.S=="ready"){this.S="hidden";this.ie()}};a.prototype.dha=function(){this.bind(d.Nc,this.fj,this);this.ib.bind(d.Nc,this.GJ,this);this.ib.bind(d.Eb,this.GJ,this)};a.prototype.b9=function(){this.unbind(d.Nc,this.fj,this);this.ib.unbind(d.Nc,this.GJ,this);this.ib.unbind(d.Eb,this.GJ,this)};a.prototype.Fa=function(){l.prototype.Fa.call(this);if(this.sa==r){this.sa=new o;this.sa.M({fontColor:"#ffffff",fontWeight:"400",fontFamily:"Arial, sans-serif",
fontSize:14,text:f("download-tour")});this.la(this.sa)}if(this.Ht==r){this.Ht=b(f("download"));this.la(this.Ht);this.Ht.bind(d.U,this.Vha,this,n)}if(this.Jt==r){this.Jt=b(f("refresh-downloaded"));this.la(this.Jt);this.Jt.bind(d.U,this.aia,this,n)}if(this.Gt==r){this.Gt=b(f("delete-downloaded"));this.la(this.Gt);this.Gt.bind(d.U,this.Uha,this,n)}if(this.bL==r){this.bL=new q;this.bL.M({width:"100%"});this.la(this.bL)}if(this.lo==r){this.lo=new i;this.lo.M({backgroundColor:"#ffffff",borderRadius:2,iconColor:"#000000",
iconLineWidth:1,iconWidth:17,iconHeight:17,height:31,width:31});this.la(this.lo);this.lo.bind(d.U,this.Tha,this,n)}if(this.fg==r){this.fg=b(f("cancel"));this.la(this.fg);this.fg.bind(d.U,this.dH,this,n)}e.Xa()&&this.dn();this.ie()};a.prototype.al=function(){l.prototype.al.call(this);e.Xa()&&this.getParent().bind(d.vb,this.dn,this,n)};a.prototype.nj=function(){e.Xa()&&this.getParent().unbind(d.vb,this.dn,this,n);l.prototype.nj.call(this)};a.prototype.dn=function(){var a=this.getParent();if(a){var b=
Math.min(a.Aa(),a.eb())/100,c=function(a){return Math.round(a*b)};this.M({gap:c(3.9),height:c(11.9),paddingLeft:c(6),paddingRight:c(6)});this.sa&&this.sa.M({fontSize:c(3)});[this.Ht,this.fg,this.Jt,this.Gt].forEach(function(a){a&&a.M({borderRadius:c(0.4),fontSize:c(3),paddingLeft:c(3),paddingRight:c(3),height:c(6.7)})});this.lo&&this.lo.M({borderRadius:c(0.4),iconLineWidth:c(0.22),iconWidth:c(3.7),iconHeight:c(3.7),height:c(6.7),width:c(6.7)})}};a.prototype.ie=function(){var a;switch(this.S){case "ready":a=
this.ce.xz()?f("downloaded"):f("download-tour");break;case "installing":a=f("downloading");this.Wd!==m&&(a=a+("..."+this.Wd.toFixed(1)+"%"));break;case "installed":a=f("downloaded");break;case "failed":a=this.c4==g.G_?e.Xa()?f("storage-not-provided-launch-from-homescreen"):f("storage-not-provided-launch-from-desktop"):this.c4==g.E_?f("storage-not-provided-bookmark"):f("download-failed")}this.sa&&this.sa.set("text",a);this.Ht&&this.Ht.set("visible",this.S=="ready"&&!this.ce.xz()&&this.ce.jba());this.Gt&&
this.Gt.set("visible",this.S=="ready"&&this.ce.xz()&&this.ce.iba());this.Jt&&this.Jt.set("visible",this.S=="ready"&&this.ce.lba());this.fg&&this.fg.set("visible",this.S=="installing");this.lo&&this.lo.set("visible",this.S!="installing");this.set("visible",this.S!="hidden")};a.prototype.Vha=function(){this.ce.Pca()};a.prototype.aia=function(){this.ce.Pca()};a.prototype.Uha=function(){this.ce.tn();this.S="hidden";this.ie()};a.prototype.dH=function(){this.ce.cancel();this.S="hidden";this.ie()};a.prototype.Tha=
function(){this.S=="installing"&&this.ce.cancel();this.S="hidden";this.ie()};return a});
define("dL","require,fg,do,ll,lk,r,jY,c,kS,ks,kF,ez,gP,gJ".split(","),function(a){function b(a,b){this.text=a;this.Bp=b}var c=a("fg"),d=a("do"),f=a("ll"),e=a("lk"),g=a("r"),k=a("jY"),i=a("c"),p=a("kS"),j=a("ks"),l=a("kF"),q=a("ez"),o=a("gP"),t=a("gJ"),a=c.extend(p,function(){p.call(this);this.tl=[];this.fg=this.It=this.sa=this.lu=this.Dy=this.am=r;var a=new j;a.set("duration",500);a.set("easing","cubic_in");var b=new l;b.set("duration",500);b.set("easing","cubic_out");this.M({backgroundColor:"#000000",
backgroundOpacity:0.6,horizontalAlign:k.Mc,gap:5,left:0,top:0,right:0,bottom:0,hideEffect:b,showEffect:a,visible:y})});a.prototype.Fa=function(){p.prototype.Fa.call(this);if(this.am==r){this.am=new p;this.am.M({centerX:0,centerY:0,backgroundColor:"#ffffff",horizontalAlign:k.Mc,verticalAlign:k.tc,layout:i.kf,shadow:n,shadowColor:"#000000",shadowHorizontalLength:0,shadowVerticalLength:0,shadowOpacity:0.2});this.la(this.am)}if(this.sa==r){this.sa=new o;this.sa.M({fontColor:"#808080",fontWeight:"300",
fontFamily:"Tahoma, Geneva, sans-serif"});this.am.la(this.sa)}if(this.lu==r){this.lu=new t;this.lu.M({width:"80%"});this.am.la(this.lu)}if(this.Dy==r){this.Dy=new p;this.Dy.M({backgroundColor:"#b3b3b3"});this.am.la(this.Dy)}if(this.gg==r){this.gg=new p;this.gg.M({horizontalAlign:k.Mc,verticalAlign:k.tc,layout:i.Be});this.am.la(this.gg)}if(this.It==r){this.It=new q;this.It.M({backgroundColor:"#606060",fontColor:"#FFFFFF",fontFamily:"Tahoma, Geneva, sans-serif",horizontalAlign:k.Mc,verticalAlign:k.tc,
label:e("yes").toUpperCase(),pressedBorderColor:"#808080",rollOverBorderColor:"#808080"});this.It.bind(f.U,this.y2,this,n);this.gg.la(this.It)}if(this.fg==r){this.fg=new q;this.fg.M({backgroundColor:"#606060",fontColor:"#FFFFFF",fontFamily:"Tahoma, Geneva, sans-serif",horizontalAlign:k.Mc,verticalAlign:k.tc,label:e("no").toUpperCase(),pressedBorderColor:"#808080",rollOverBorderColor:"#808080"});this.fg.bind(f.U,this.dH,this,n);this.gg.la(this.fg)}};a.prototype.al=function(){p.prototype.al.call(this);
this.getParent().bind(f.vb,this.dn,this,n)};a.prototype.nj=function(){this.getParent().unbind(f.vb,this.dn,this,n);p.prototype.nj.call(this)};a.prototype.dn=function(){var a=this.getParent();if(a){var b=a.Aa(),a=a.eb();if(g.Xa())var c=Math.min(b,a),b=function(a){return Math.round(a*c/100)};else b=function(a){return Math.round(a*4)};this.am&&this.am.M({borderRadius:b(1),width:b(80),height:b(40),gap:b(4),shadowBlurRadius:b(1),shadowSpread:b(1)});this.Dy&&this.Dy.M({width:b(60),minHeight:2,height:b(0.25)});
this.gg&&this.gg.M({gap:b(5)});this.fg&&this.fg.M({borderRadius:b(1),width:b(20),height:b(10),fontSize:b(4.25)});this.It&&this.It.M({borderRadius:b(1),width:b(20),height:b(10),fontSize:b(4.5)});this.sa&&this.sa.M({fontSize:b(5)});this.CL()}};a.prototype.show=function(a,c){this.dn();var d=this.U4(c);d>=0&&this.Z8(d);this.cpa(new b(a,c));this.dx()};a.prototype.hide=function(a){a=this.U4(a);a>=0&&this.Z8(a)};a.prototype.dx=function(){var a=this.getParent();a&&a.Fj(this,a.Oa().length-1)};a.prototype.y2=
function(){this.VG(n)};a.prototype.dH=function(){this.VG(y)};a.prototype.U4=function(a){for(var b=0;b<this.tl.length;b++)if(this.tl[b].Bp==a)return b;return-1};a.prototype.CL=function(){if(this.am){var a=this.g5();if(a){if(a.text.length<20){this.lu.set("visible",y);this.sa.set("text",a.text);this.sa.set("visible",n)}else{this.sa.set("visible",y);this.lu.set("html",this.cla(a.text));this.lu.set("visible",n)}this.fg.set("visible",a.Bp?n:y);this.set("visible",n)}else this.set("visible",y)}};a.prototype.cla=
function(a){return"<div style=\"color:#808080; font-weight:300; font-family:'Tahoma', 'Geneva', sans-serif; font-size: "+this.sa.get("fontSize")+'px; text-align:center;" >'+a+"</div>"};a.prototype.VG=function(a){var b=this.g5();if(b){b=this.qla(b.text);this.Apa(b);d(b).each(function(b){b.Bp&&b.Bp.call(this,a)},this)}};a.prototype.cpa=function(a){this.tl.push(a);this.CL()};a.prototype.qla=function(a){return d(this.tl).filter(function(b){return b.text==a})};a.prototype.Apa=function(a){this.tl=d(this.tl).filter(function(b){return!d(a).contains(b)});
this.CL()};a.prototype.Z8=function(a){this.tl.splice(a,1);a==this.tl.length&&this.CL()};a.prototype.g5=function(){return this.tl.length>0?this.tl[this.tl.length-1]:r};return a});
define("iZ","require,fg,ll,bZ,eO,r,ke".split(","),function(a){function b(a){for(;a&&a!=document;){if(a.getAttribute("tdvclass")=="Button")return n;a=a.parentNode}return y}var c=a("fg"),d=a("ll"),f=a("bZ"),e=a("eO"),g=a("r"),k=a("ke"),i=[],a=[99,111,110,116,101,120,116,109,101,110,117].map(function(a){return String.fromCharCode(a)}).join("");document.addEventListener(a,function(a){(!g.Xa()||!b(a.target))&&i.forEach(function(b){b(a)});a.preventDefault();a.stopImmediatePropagation()},n);var p=1,c=c.extend(e,
function(a,b){e.call(this);this.ra=a;this.kla=b;this.bU=this.bU.bind(this);this.mc=this.mc.bind(this);this.tT=y;this.qT=this.qT.bind(this);this.rT=this.rT.bind(this);this.pT=this.pT.bind(this);this.sT=this.sT.bind(this);this.J=document.createElement("div");this.J.style.setProperty("border","1px solid #bbb","important");this.J.style.setProperty("border-radius","3px","important");this.J.style.setProperty("position","absolute","important");this.J.style.setProperty("z-index",p,"important");this.J.style.setProperty("display",
"none","important");this.J.style.setProperty("background-color","#e5e5e5","important");this.J.style.setProperty("display","none","important");this.J.style.setProperty("opacity",1,"important");this.J.style.setProperty("padding",0,"important");this.J.style.setProperty("margin",0,"important");this.J.style.setProperty("pointer-events","all","important");this.J.style.setProperty("text-align","left","important");this.J.style.setProperty("box-shadow","1px 1px 3px rgba(0, 0, 0, 0.2)","important");i.push(this.bU)});
c.prototype.bU=function(a){var b=this.kla();if(b.length!=0){this.J.innerHTML="";this.tT=y;var c=0;b.forEach(function(a){var b=document.createElement("div");if(a){b.textContent=a;b.style.setProperty("cursor","pointer","important");b.style.setProperty("border-radius","3px","important");b.style.setProperty("padding","7px 20px","important");b.style.setProperty("white-space","nowrap","important");var d=c;c++;b.addEventListener("mouseenter",function(a){this.qT(a,d)}.bind(this));b.addEventListener("mouseleave",
function(a){this.rT(a,d)}.bind(this));b.addEventListener("mousedown",function(a){this.pT(a,d)}.bind(this));b.addEventListener("mouseup",function(a){this.sT(a,d)}.bind(this))}else{b.style.setProperty("margin","7px 5px","important");b.style.setProperty("border-top","1px solid #aaa","important");b.style.setProperty("border-bottom","1px solid #fff","important")}b.style.setProperty("font-family","Arial","important");b.style.setProperty("font-size","13px","important");b.style.setProperty("color","#000000",
"important");b.style.setProperty("opacity",1,"important");b.style.setProperty("display","block","important");b.style.setProperty("pointer-events","all","important");this.J.appendChild(b)}.bind(this));(k.cm()||document.body).appendChild(this.J);this.J.style.setProperty("display","block","important");b=a.pageX;a=a.pageY;b+this.J.clientWidth>document.body.clientWidth-5&&(b=document.body.clientWidth-this.J.clientWidth-5);a+this.J.clientHeight>document.body.clientHeight-5&&(a=document.body.clientHeight-
this.J.clientHeight-5);this.J.style.setProperty("left",b+"px","important");this.J.style.setProperty("top",a+"px","important");this.ra.bind(d.Eb,this.mc,this);document.addEventListener("mousedown",this.mc);this.Eta=setInterval(this.Dta.bind(this),200)}};c.prototype.n5=function(){clearInterval(this.Eta);this.J.parentNode.removeChild(this.J);document.removeEventListener("mousedown",this.mc);this.ra.unbind(d.Eb,this.mc,this);this.J.style.setProperty("display","none","important")};c.prototype.Dta=function(){this.J.contains(document.elementFromPoint(this.J.offsetLeft+
this.J.clientWidth*0.5,this.J.offsetTop+this.J.clientHeight*0.5))||this.J.style.setProperty("z-index",p=p*10,"important")};c.prototype.mc=function(){this.n5()};c.prototype.pT=function(a){this.tT=n;a.preventDefault();a.stopImmediatePropagation()};c.prototype.sT=function(a,b){if(this.tT){this.n5();a.preventDefault();a.stopImmediatePropagation();this.trigger(new f(d.Ii,{index:b}))}};c.prototype.qT=function(a){a.currentTarget.style.setProperty("color","#ffffff","important");a.currentTarget.style.setProperty("background-color",
"rgba(0, 0, 0, 0.7)","important")};c.prototype.rT=function(a){a.currentTarget.style.setProperty("color","#000000","important");a.currentTarget.style.setProperty("background-color","","important")};return c});
define("jx",["require","jt","R"],function(a){function b(a){this.ra=a;this.an={};this.an[d.Lfa]="move";this.an[d.Mfa]="ew-resize";this.an[d.Ofa]="ns-resize";this.an[d.Nfa]="nesw-resize";this.an[d.Pfa]="nwse-resize";this.an[d.me]="pointer";this.an[d.lq]="inherit";this.an[d.dd]="default";this.Ue={};this.Ue[d.tG]="grab.cur";this.Ue[d.uG]="grabbing.cur";this.Ue[d.p0]="N.cur";this.Ue[d.q0]="NE.cur";this.Ue[d.g0]="E.cur";this.Ue[d.t0]="SE.cur";this.Ue[d.s0]="S.cur";this.Ue[d.u0]="SW.cur";this.Ue[d.v0]="W.cur";
this.Ue[d.r0]="NW.cur";this.Ue[d.i0]="FN.cur";this.Ue[d.j0]="FNE.cur";this.Ue[d.h0]="FE.cur";this.Ue[d.m0]="FSE.cur";this.Ue[d.l0]="FS.cur";this.Ue[d.n0]="FSW.cur";this.Ue[d.o0]="FW.cur";this.Ue[d.k0]="FNW.cur";this.G2={}}var c=a("jt"),d=a("R");b.prototype.Jba=function(a){return this.Oma(a)?this.d5(a):this.Ima(a)?this.Uka(a):this.d5(d.dd)};b.prototype.gia=function(a){if(!(a in this.G2)){var b=new Image;b.src=this.F4(a);this.G2[a]=b}};b.prototype.Oma=function(a){return a in this.an};b.prototype.d5=
function(a){return this.an[a]};b.prototype.Ima=function(a){return this.Ue[a]};b.prototype.Uka=function(a){this.gia(a);return"url("+this.F4(a)+"), default"};b.prototype.F4=function(a){return c.Ss(this.ra.get("settings").get(TDV.PlayerSettings.CURSORS_DIR_URL))+"/"+this.Ue[a]};return b});
define("bT",["do"],function(a){function b(){this.hp={};this.Il=[];this.VA=0}b.prototype.push=function(b,d){if(this.hp[d]==m)this.hp[d]=[b],this.Il.push(d),this.Il.sort(function(a,b){return a-b}),this.VA++;else{var f=this.hp[d];a(f).contains(b)||(f.push(b),this.VA++)}};b.prototype.Lba=Q("VA");b.prototype.isEmpty=function(){return 0==this.Il.length};b.prototype.Dda=function(){if(!this.isEmpty()){var a=this.Il[0],b=this.hp[a].pop();0==this.hp[a].length&&(delete this.hp[a],this.Il=this.Il.slice(1));this.VA--;
return b}};b.prototype.oZ=function(){if(!this.isEmpty()){var a=this.Il[this.Il.length-1],b=this.hp[a].pop();0==this.hp[a].length&&(delete this.hp[a],this.Il=this.Il.slice(0,this.Il.length-1));this.VA--;return b}};return b});
define("gI","require,do,fg,fe,bT,V,iN".split(","),function(a){function b(){this.Pr=y;this.q8=m;this.W=n;this.MJ=this.MJ.bind(this);this.sH=new d;this.qK=new d;this.ZK=new d;this.ZI=new d;this.vR=new d;f.La(this.Ng,this)}a("do");a("fg");var c=a("fe"),d=a("bT"),f=a("V"),e=a("iN");b.prototype.clear=function(){this.W=y};b.prototype.hF=function(a){this.sH.push(a,this.Ix(a));this.sD()};b.prototype.Dc=function(a){this.qK.push(a,this.Ix(a));this.sD()};b.prototype.Wa=function(a){this.ZK.push(a,this.Ix(a));
this.sD()};b.prototype.Lc=function(a){this.ZI.push(a,this.Ix(a));this.sD()};b.prototype.Gh=function(a){this.vR.push(a,this.Ix(a));this.sD()};b.prototype.L=function(){this.Isa();this.kta();this.Ksa()};b.prototype.Isa=function(){do{for(;!this.sH.isEmpty();)this.sH.oZ().Fa();this.qK.isEmpty()||this.qK.oZ().ja()}while(!this.qK.isEmpty()||!this.sH.isEmpty())};b.prototype.kta=function(){for(;!this.ZK.isEmpty()||!this.ZI.isEmpty();){this.GL();this.YW()}};b.prototype.GL=function(){for(;!this.ZK.isEmpty();){var a=
this.ZK.oZ();if(a.Cza()){var b=a.getParent();if(b){b.Wa();b.Lc()}else a.iea(0,0,a.Dn(),a.Cn())}}};b.prototype.YW=function(){for(;!this.ZI.isEmpty();)this.ZI.Dda().Bi()};b.prototype.Ksa=function(){for(;!this.vR.isEmpty();)this.vR.Dda().Re();c.hxa()};b.prototype.sD=function(){if(!this.Pr){this.Pr=n;this.q8=(new Date).getTime()+500;e.jw(this.MJ)}};b.prototype.MJ=function(){this.Pr=y;this.W&&this.L()};b.prototype.Ix=function(a){return(a=a.getParent())?this.Ix(a)+1:0};b.prototype.Ng=function(){this.Pr&&
(new Date).getTime()>=this.q8&&this.MJ();f.La(this.Ng,this)};return b});
define("fh","jquery.mod,do,fg,ll,kS,iZ,jx,Y,gI,ke,r".split(","),function(a,b,c,d,f,e,g,k,i,p,j){c=c.extend(f,function(b){this.Ww=new i;f.call(this);this.Zm(this);this.Uc("Application");this.Bd=a(b);this.Bd.css({overflow:"hidden","user-select":"none","-ms-user-select":"none","-moz-user-select":"none","-webkit-user-select":"none","-ms-touch-action":"none","touch-action":"none",visibility:"visible","-webkit-tap-highlight-color":"rgba(255, 255, 255, 0)"});this.qp=a(document.createElement("div"));this.qp.css({position:"absolute",
left:0,top:0,right:0,bottom:0,width:"auto",height:"auto",margin:0});this.Bd.append(this.qp);this.qp.append(this.Cb());this.D$=this.qp.get(0);this.fc=this.bc=m;this.Bma=10;this.sia=500;this.pD=r;this.iR=new g(this);this.ya=new k(this);this.J.append(this.ya.Cb());this.Yia=new e(this,this.C4.bind(this));this.Yia.bind(d.Ii,this.df(this.M6),this,n);this.l6=n;this.set("contentOpaque",n);this.St=r;this.QA=[];this.zx(["globalmousemove"]);this.Gha();this.QL=this.RL=0;this.iy=1;try{this.RL=window.top.innerWidth;
this.QL=window.top.innerHeight;this.FS=n}catch(c){this.FS=y}this.Gaa();this.mg=new p(b);this.mg.bind(d.aa,function(){this.XR(this.mg.enabled())},this)});c.prototype.start=function(){if(!this.p$){this.p$=n;this.trigger(d.Ji)}};c.prototype.Gaa=function(){if(this.FS&&!p.enabled()){this.RL=window.top.innerWidth;this.QL=window.top.innerHeight}};c.prototype.clear=function(){this.lw(r);this.A$();this.fka();this.Ww.clear();if(this.Bd){this.Cb().remove();this.qp.remove();this.Bd=r}this.iR=r;this.mg.Sea();
this.mg=r};c.prototype.zya=P("l6");c.prototype.XR=function(a){a?this.F9():this.Dia()};c.prototype.To=function(){this.bC=this.$h=this.qp.width();this.aC=this.Zh=this.qp.height()};c.prototype.lw=function(a){if(this.St!=a){this.St!=r&&this.St.nsa();this.St=a;for(var c=[];a!=r;){c=[a].concat(c);a=a.getParent()}for(var a=this.QA.length-1,d=n;a>=0&&d;a--)b(c).contains(this.QA[a])?d=y:this.QA.pop().psa();for(a=0;a<c.length;a++)b(this.QA).contains(c[a])||c[a].qsa();this.QA=c;this.St!=r&&this.St.msa();this.ya.lw(this.St)}};
c.prototype.Ula=function(a){var b=this.vB(a);this.J5(a,b.x,b.y)?a.preventDefault():this.lw(r)};c.prototype.j5=function(a){var b=this.iu(a);this.J5(a,b.x,b.y)?a.preventDefault():this.lw(r)};c.prototype.C4=function(){return[]};c.prototype.M6=C();c.prototype.J5=function(a,b,c){return this.Jma(a.target)&&b>=0&&c>=0&&b<this.X&&c<this.ha};c.prototype.Jma=function(a){if(!this.Bd)return y;for(var b=this.Bd.get(0);a;){if(a===b)return n;a=a.parentElement}return y};c.prototype.Gha=function(){this.zx(["globalresize"]);
this.pQ=setInterval(b.bind(function(){this.Q2()},this),this.sia)};c.prototype.fka=function(){this.fB(["globalresize"]);if(this.pQ){clearInterval(this.pQ);this.pQ=r}};c.prototype.Q2=function(){this.mg.enabled()?this.F9():this.Gaa();var a=this.D$.clientWidth,b=this.D$.clientHeight;if(this.bc!=a||this.fc!=b){this.bc=a;this.fc=b;this.yra()}};c.prototype.F9=function(){var a;if(this.FS&&(j.Zd()==j.s_&&j.browser()==j.Di||j.Zd()==j.Qj)){var b=p.cm();a=b.clientWidth;var b=b.clientHeight,c=(a>b?a:b)/(this.RL>
this.QL?this.RL:this.QL),d=Math.round(a/c),e=Math.round(b/c);this.iy=c;a={left:Math.round((a-d)*0.5)+"px",top:Math.round((b-e)*0.5)+"px",right:"auto",bottom:"auto",width:d+"px",height:e+"px",transform:"scale("+[c,c].join(", ")+")",position:"absolute"}}else{a={position:"absolute",left:0,top:0,right:"auto",bottom:"auto",width:document.body.clientWidth+"px",height:document.body.clientHeight+"px"};this.iy=1}this.qp.css(a)};c.prototype.Dia=function(){this.qp.css({position:"abolute",left:0,top:0,right:0,
bottom:0,width:"auto",height:"auto",transform:""});this.iy=1};c.prototype.yra=function(){this.A$();var a=this;this.pD=setTimeout(function(){a.pD=r;a.Wa()},this.Bma)};c.prototype.A$=function(){if(this.pD){this.pD=r;clearTimeout(this.pD)}};c.prototype.Tla=function(){this.Q2()};c.prototype.fS=function(){return b(f.prototype.fS.call(this)).defaults({globaltouchmove:[{target:a(document),name:"touchmove",handler:this.df(this.Ula)}],globalmousemove:[{target:a(document),name:"mousemove",handler:this.df(this.j5)},
{target:a(window),name:"mouseout",handler:this.df(this.j5)}],globalresize:[{target:a(window),name:"resize",handler:this.df(this.Tla)}]})};return c});
define("fc","require,jquery.mod,lC,bK,ke,ll,eO,lk,r".split(","),function(a){function b(){o=TDV.Da.Bn();var a=q||o;if(l!=a){l=a;j.trigger(g.aa)}a=!!q&&o!=q&&p.Xa();if(t!=a){if(!s){s=c("<div/>");s.css({position:"fixed","z-index":d.rfa,left:0,top:0,margin:0,padding:0,height:"100%",width:"100%","background-color":"rgba(255, 255, 255, 0.99)"});s.html(['<div style="box-sizing:border-box; padding:0 10vmin; display:table; height:100%; width:100vw;">\n<div style="vertical-align:middle; text-align:center; display:table-cell;">','<img style="width:22vmin" src="'+
f.jA+'"/>','<div style="color:#000; font-family:Arial, Helvetica, sans-serif; font-size:3.6vmin; line-height:4.3vmin; margin:5vmin 0; text-align:center;">'+i("rotate-device")+"</div>","</div>\n</div>"].join("\n"));u=s.find("img")}t&&s.detach();(t=a)&&(e.enabled()?c(e.cm()):c("body")).append(s)}t&&u.css("transform",l==j.Yfa?"translate(-11%, 0) rotate(-90deg)":"none")}var c=a("jquery.mod"),d=a("lC"),f=a("bK"),e=a("ke"),g=a("ll"),k=a("eO"),i=a("lk"),p=a("r"),j=new k;j.Uza=TDV.Da.OO;j.Yfa=TDV.Da.PO;j.MF=
function(a){if(q!=a){q=a;b()}};j.Vba=function(){return q};j.get=function(){return l};var l=m,q=m,o=m,t=y,s=r,u=r;window.addEventListener("resize",function(){b();setTimeout(b,500)},n);try{window.screen.orientation.addEventListener("change",b)}catch(v){window.addEventListener("orientationchange",b,y)}b();return j});
define("gE","require,fg,do,ll,bZ,ce,dW,kd,lk,jT,A,ij,dL,dc,dQ,kz,iX,r,fT,dO,bW,hi,jt,bi,dm,fh,kS,cv,ke,bp,fc,jg,cJ".split(","),function(a){var b=a("fg"),c=a("do"),d=a("ll"),f=a("bZ"),e=a("ce"),g=a("dW"),k=a("kd"),i=a("lk"),p=a("jT"),j=a("A"),l=a("ij"),q=a("dL"),o=a("dc"),t=a("dQ"),s=a("kz"),u=a("iX"),v=a("r"),w=a("fT"),x=a("dO"),z=a("bW"),F=a("hi"),A=a("jt"),K=a("bi"),E=a("dm"),J=a("fh"),B=a("kS"),O=a("cv"),N=a("ke"),I=a("bp"),L=a("fc"),G=a("jg"),D=a("cJ"),H=b.extend(J,function(a){J.call(this,a);
this.ce=new x(this);this.R3=new l(this,this.ce);this.Bm=new B;this.Bm.M({visible:n,width:"100%",height:"100%"});this.$x=new q;this.Wy=new o;this.EH=new j(this);a=new O;a.xN(0);this.KF(a);this.xe(n);this.bind(d.D("settings"),this.koa,this,n);this.LL=TDV.Da.DM();L.bind(d.aa,this.Wna,this,n);I.uza();this.Yha=new p(this,"buttonMute",E.Wc);this.Yha.bind(d.U,this.v7,this,n);this.eia=new p(this,"buttonUnmute",E.Wc);this.eia.bind(d.U,this.U7,this,n);this.iH=new p(this,"buttonToggleMute",E.Mh);this.iH.bind(d.Bg,
this.v7,this,n);this.iH.bind(d.Lh,this.U7,this,n);this.bind(d.D("mute"),this.Tna,this);this.iH.set("pressed",this.get("mute"));this.Wha=new p(this,"buttonEnterFullscreen",E.Wc);this.Wha.bind(d.U,this.R6,this,n);this.Xha=new p(this,"buttonExitFullscreen",E.Wc);this.Xha.bind(d.U,this.S6,this,n);this.fH=new p(this,"buttonToggleFullscreen",E.Mh);this.fH.bind(d.Bg,this.R6,this,n);this.fH.bind(d.Lh,this.S6,this,n);this.fH.set("pressed",this.get("fullscreenEnabled"));this.bind(d.D("fullscreenEnabled"),this.Ena,
this,n);this.set("fullscreenEnabled",this.mg.enabled());this.set("mouseWheelEnabled",n);this.set("backgroundPreloadEnabled",n);this.set("defaultVRPointer","laser");this.set("downloadEnabled",y);this.set("mediaActivationMode","window");this.set("fullscreenFallback","out_of_frame");this.set("defaultMenu",["fullscreen","mute","rotation"]);this.bind(d.Ji,this.noa,this,n);[d.Eb,d.ec,d.nq,d.sG,d.rG].forEach(function(a){this.bind(a,function(a){this.trigger(new f(d.nG,{Eea:a}))},this,n)}.bind(this));K.bind(d.aa,
function(){K.isPresenting()?L.MF(m):L.MF(J.prototype.get.call(this,"lockedOrientation"))},this);this.mg.bind(d.aa,function(){var a=L.Vba();L.MF(m);L.MF(a)},this)});H.O_="orientationChange";g.A("Player",H).hya().B("Container").K({backgroundPreloadEnabled:"bool",buttonEnterFullscreen:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonExitFullscreen:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonMute:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonToggleFullscreen:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonToggleMute:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonUnmute:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",cardboardAvailable:"bool",cookiesPolicy:"or[array[CookiesPolicy], CookiesPolicy]",defaultVRPointer:"enum[gaze, laser]",definitions:"array[Object]",desktopMipmappingEnabled:"bool",downloadEnabled:"bool",fullscreenAvailable:"bool",fullscreenEnabled:"bool",
fullscreenFallback:"enum[out_of_frame, none]",gyroscopeAvailable:"bool",hash:"string",isMobile:"bool",mediaActivationMode:"enum[window, button]",menu:"array[PlayerMenuItem]",defaultMenu:"array[enum[fullscreen, mute, rotation]]",mobileMipmappingEnabled:"bool",mouseWheelEnabled:"bool",mute:"bool",lockedOrientation:"enum[portrait, landscape]",orientation:"enum[portrait, landscape]",surfaceSelectionAvailable:"bool",touchDevice:"bool",touchEnabled:"bool",vrAvailable:"bool",vrPolyfillScale:"number"}).Aya().Ag({logCapabilities:function(){this.cna()},
activateAudio:function(a){this.Iga(a)}}).Cf([d.Ji,H.O_,d.nG]);H.prototype.XR=function(a){J.prototype.XR.apply(this,arguments);this.set("fullscreenEnabled",a)};H.prototype.za=function(){J.prototype.za.call(this);this.f("mute",y);this.f("fullscreenEnabled",y)};H.prototype.Fa=function(){J.prototype.Fa.call(this);this.R3.getParent()!=this&&this.la(this.R3);if(this.Bm.getParent()!=this){this.la(this.Bm);this.Bm.la(this.EH);this.Bm.la(this.$x);this.Bm.la(this.Wy)}};H.prototype.Opa=function(a){var b=[];
this.$x&&b.push(this.$x);this.Wy&&b.push(this.Wy);this.EH&&b.push(this.EH);for(var c=n,d=0;d<=b.length&&c;d++){c=a.indexOf(b[d]);c=a.length-(b.length-d)==c}return c?a:a.filter(function(a){return b.indexOf(a)<0}).concat(b)};H.prototype.ja=function(){this.P8||(this.P8=c.difference(this.Ela(),["visible","includeInLayout","state","left","right","top","bottom","centerX","centerY","width","height","minWidth","minHeight","maxWidth","maxHeight","actualWidth","actualHeight","paddingLeft","paddingTop","paddingRight",
"paddingBottom"]));this.hb(this.P8,{},[this.Bm],n,n);J.prototype.ja.call(this);this.vAa===n&&this.uAa()};H.prototype.set=function(a,b){switch(a){case "children":this.Bm.set(a,this.Opa(b));return;case "creationPolicy":this.Bm.set(a,b);return;case "fullscreenAvailable":case "gyroscopeAvailable":case "cardboardAvailable":case "isMobile":case "orientation":case "surfaceSelectionAvailable":case "touchEnabled":case "touchDevice":case "vrAvailable":b=this.get(a);break;case "fullscreenEnabled":b=this.mg.available()&&
b;break;case "fullscreenFallback":N.NZ(b);break;case "lockedOrientation":v.Jc()==v.Ws&&(b=m);L.MF(b);break;case "installAvailable":b=this.ce.ready();break;case "mouseWheelEnabled":this.zya(A.Yg("mousewheelenabled",b));break;case "backgroundPreloadEnabled":this.$pa(b);break;case "vrPolyfillScale":K.Lya(b);break;case "desktopMipmappingEnabled":s.Txa(b);break;case "mobileMipmappingEnabled":s.xya(b)}J.prototype.set.call(this,a,b)};H.prototype.get=function(a,b){switch(a){case "children":case "creationPolicy":return this.Bm.get(a,
b);case "touchEnabled":return this.gk;case "touchDevice":return v.k_();case "isMobile":return v.Xa();case "orientation":return L.get();case "lockedOrientation":return L.Vba();case "gyroscopeAvailable":return w.available;case "cardboardAvailable":case "vrAvailable":return K.available();case "fullscreenAvailable":return this.mg.available();case "vrPolyfillScale":return K.vva();case "installAvailable":return this.ce.ready();case "surfaceSelectionAvailable":return t.Iea();default:return J.prototype.get.apply(this,
arguments)}};H.prototype.v7=function(){this.set("mute",n)};H.prototype.U7=function(){this.set("mute",y)};H.prototype.Tna=function(){this.iH.set("pressed",this.get("mute"))};H.prototype.R6=function(){this.set("fullscreenEnabled",n)};H.prototype.S6=function(){this.set("fullscreenEnabled",y)};H.prototype.Ena=function(){this.get("fullscreenEnabled")?this.mg.Dh():this.mg.Yd();this.fH.set("pressed",this.get("fullscreenEnabled"));this.set("fullscreenEnabled",this.mg.enabled())};H.prototype.koa=function(){var a=
this.get("settings");if(a){z.im(a);F.XZ(a);this.ce.XZ(a)}};H.prototype.$pa=function(a){F.enabled(a)};H.prototype.C4=function(){if(A.ag("debug"))return[];var a=[];this.nx=[];(this.get("menu")||[]).forEach(function(b){var c=b.get("label");a.push(b.get("label"));c&&this.nx.push(function(){b.trigger("click")})}.bind(this));var b=this.get("defaultMenu",[]);if(b.indexOf("rotation")>=0){var c=this.wn("PanoramaPlayer");if(c.length){a.push(c[0].get("mouseControlMode")==e.Zs?i("change-to-drag-and-release"):
i("change-to-click-and-move"));this.nx.push(this.csa.bind(this))}}if(b.indexOf("fullscreen")>=0&&this.mg.available()){a.push(this.mg.enabled()?i("exit-fullscreen"):i("enter-fullscreen"));this.nx.push(this.asa.bind(this))}if(b.indexOf("mute")>=0){a.push(this.get("mute")?i("unmute"):i("mute"));this.nx.push(this.bsa.bind(this))}b=[].concat(k.name?[k.name]:[],k.yua!="false"?k.oF?["v:"+k.oF+"."+k.sF]:["v:"+k.sF]:[]).join(" ");if(b!=""){a.length>0&&a.push("");a.push(b);this.nx.push(this.yoa.bind(this))}return a};
H.prototype.M6=function(a){this.nx[a.data.index]()};H.prototype.csa=function(){var a=this.wn("PanoramaPlayer"),b=a[0].get("mouseControlMode")==e.Zs?e.Tn:e.Zs;a.forEach(function(a){D.setItem(M,b);a.set("mouseControlMode",b)})};H.prototype.noa=function(){D.getItem(M)==e.Tn&&this.wn("PanoramaPlayer").forEach(function(a){a.set("mouseControlMode",e.Tn)});A.ag("mute")&&this.set("mute",A.Yg("mute",this.get("mute")));A.ag("vr")&&K.Dh()};H.prototype.asa=function(){this.mg.toggle()};H.prototype.bsa=function(){this.set("mute",
!this.get("mute"))};H.prototype.yoa=function(){k.$ea&&window.open(k.$ea,"_blank")};H.prototype.Wna=function(){this.trigger(H.O_)};H.prototype.cna=function(){b.Dua(n);b.log("UA: "+navigator.userAgent);b.log("screen: ("+Math.max(window.screen.width,window.screen.height)+", "+Math.min(window.screen.width,window.screen.height)+") dpr: "+window.devicePixelRatio+" ("+Math.max(window.screen.width,window.screen.height)*window.devicePixelRatio+", "+Math.min(window.screen.width,window.screen.height)*window.devicePixelRatio+
")");v.log();u.log();i.log();K.log()};H.prototype.Iga=function(a){if(I.NX())G.Vz(a);else{I.p_(a);I.zg(this)}};var M="tdvp_"+window.location.pathname+"_rotation_mode";return H});define("bQ",["require","fg","jd","ll","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("PlayerMenuItem",b).B("Object").K({label:"string"}).Cf([d.U]);return b});
define("K","require,fg,jd,ll,fu,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("fu"),e=a("dW"),g=a("hW"),a=b.extend(c,function(){c.call(this);this.set("visible",y);this.set("state",f.I);this.set("showDuration",1E3);this.set("hideDuration",1E3);this.set("darkenBackground",n);this.set("lookAwayToHide",n);this.set("lookAwayToHideTime",2E3);this.set("showEasing","linear");this.set("hideEasing","linear");this.bind(d.D("state"),function(){this.trigger(d.xc)},this,n);this.Ob=m});a.prototype.show=
function(){this.set("visible",n)};a.prototype.hide=function(){this.set("visible",y)};a.prototype.play=function(){this.set("state",f.O)};a.prototype.pause=function(){this.set("state",f.DG)};a.prototype.stop=function(){this.set("state",f.I)};e.A("PopupPanoramaOverlay",a).B("PanoramaOverlay").K({autoplay:"bool",darkenBackground:"bool",loop:"bool",yaw:"number",pitch:"number",hfov:"number",image:"ImageResource",video:"VideoResource",lookAwayToHide:"bool",lookAwayToHideTime:"number",popupDistance:"number",
popupMaxHeight:"or[number,percent]",popupMaxWidth:"or[number,percent]",rotationX:"number",rotationY:"number",rotationZ:"number",hideEasing:"enum[linear, quad_in, quad_out, quad_in_out, cubic_in, cubic_out, cubic_in_out, quart_in, quart_out, quart_in_out, quint_in, quint_out, quint_in_out]",hideDuration:"number",state:"enum[stopped, playing, paused]",showEasing:"enum[linear, quad_in, quad_out, quad_in_out, cubic_in, cubic_out, cubic_in_out, quart_in, quart_out, quart_in_out, quint_in, quint_out, quint_in_out]",
showDuration:"number",visible:"bool",playbackPositions:"array[PopupPanoramaOverlayPlaybackPosition]"}).Ag({hide:a.prototype.hide,pause:a.prototype.pause,play:a.prototype.play,show:a.prototype.show,stop:a.prototype.stop}).Vb([d.Ba,d.Mw,d.ot,d.xc]).Cf([d.U]);a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=g.xva(this);return this.Ob}return c.prototype.get.call(this,a,b)};a.prototype.set=function(a,b){var e=y;switch(a){case "hfov":case "vfov":case "pitch":case "rotationX":case "rotationY":case "rotationZ":case "yaw":case "playbackPositions":this.Ob=
m;e=n}c.prototype.set.call(this,a,b);e&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};return a});define("lm",["do","fg","cr","dW"],function(a,b,c,d){a=b.extend(c,function(){c.call(this)});d.A("ProgressBar",a).B("UIComponent").K({barBackgroundColor:"or[array[color], color]",barBackgroundColorDirection:"enum[horizontal, vertical]",barBackgroundColorRatios:"array[number]",barBorderColor:"color",barBorderRadius:"number",barBorderSize:"number",barOpacity:"number",percent:"number"});return a});
define("cY","require,fg,jd,ll,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("hW"),a=b.extend(c,function(){c.call(this);this.Ob=m;this.set("enabled",n);this.set("interactionEnabled",n);this.set("contentInteractive",y);this.set("transparent",y)});f.A("QuadFramePanoramaOverlay",a).B("PanoramaOverlay").K({displayTooltipInTouchScreens:"bool",contentInteractive:"bool",enabled:"bool",image:"ImageResource",interactionEnabled:"bool",height:"number",playbackPositions:"array[QuadPanoramaOverlayPlaybackPosition]",
transparent:"bool",toolTip:"string",url:"string",useHandCursor:"bool",vertices:"array[PanoramaPoint]",width:"number"}).Vb([d.zd,d.Jh,d.Ff,d.wc,d.Mb,d.od]).Cf([d.U]).fh(["url"]);a.prototype.set=function(a,b){var e=y;switch(a){case "vertices":case "playbackPositions":this.Ob=m;e=n}c.prototype.set.call(this,a,b);e&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=e.FY(this);return this.Ob}return c.prototype.get.call(this,
a,b)};return a});define("br",["require","fg","dW","cj"],function(a){var b=a("fg"),c=a("dW"),d=a("cj"),a=b.extend(d,function(){d.call(this)});c.A("QuadHotspotPanoramaOverlay",a).B("HotspotPanoramaOverlay");return a});define("gK",["dW","q"],function(a,b){a.A("QuadHotspotPanoramaOverlayArea",b).B("HotspotPanoramaOverlayArea");return b});
define("cX","require,fg,jd,ll,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("dW"),e=a("hW"),a=b.extend(c,function(){c.call(this);this.set("opacity",1);this.Ob=m});f.A("QuadHotspotPanoramaOverlayImageBase",a).B("Object").K({distance:"number",image:"ImageResource",playbackPositions:"array[QuadPanoramaOverlayPlaybackPosition]",opacity:"number",vertices:"array[PanoramaPoint]"}).Vb([d.od,d.zd]);a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=
e.FY(this);return this.Ob}return c.prototype.get.call(this,a,b)};a.prototype.set=function(a,b){var e=y;switch(a){case "opacity":case "distance":case "vertices":case "playbackPositions":this.Ob=m;e=n}c.prototype.set.call(this,a,b);e&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};return a});
define("el",["require","fg","dW","cX"],function(a){var b=a("fg"),c=a("dW"),d=a("cX"),a=b.extend(d,function(){d.call(this)});c.A("QuadHotspotPanoramaOverlayImage",a).B("QuadHotspotPanoramaOverlayImageBase");return a});define("hX",["require","fg","dW","cX"],function(a){var b=a("fg"),c=a("dW"),d=a("cX"),a=b.extend(d,function(){d.call(this)});c.A("QuadHotspotPanoramaOverlayMap",a).B("QuadHotspotPanoramaOverlayImageBase");return a});
define("dP","require,fg,jd,ll,fu,bZ,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("fu"),e=a("bZ"),g=a("dW"),k=a("hW"),a=b.extend(c,function(){c.call(this);this.Ob=m;this.set("enabled",n);this.set("interactionEnabled",n);this.set("state",f.I);this.set("enabledInCardboard",n);this.set("enabledInStandard",n);this.set("blending",0);this.set("opacity",1);this.set("fadeInDuration",200);this.set("fadeOutDuration",200)});a.prototype.play=function(){this.set("state",f.O)};a.prototype.pause=
function(){this.set("state",f.uc)};a.prototype.stop=function(){this.set("state",f.I)};g.A("QuadVideoPanoramaOverlay",a).B("PanoramaOverlay").K({autoplay:"bool",blending:"number",chromaColor:"color",chromaThreshold:"number",chromaSmoothing:"number",cues:"array[VideoCue]",distance:"number",displayTooltipInTouchScreens:"bool",enabled:"bool",enabledInCardboard:"bool",enabledInVR:"bool",enabledInStandard:"bool",fadeInDuration:"number",fadeOutDuration:"number",interactionEnabled:"bool",videoVisibleOnStop:"bool",
vertices:"array[PanoramaPoint]",image:"ImageResource",loop:"bool",opacity:"number",playbackPositions:"array[QuadPanoramaOverlayPlaybackPosition]",state:"enum[stopped, playing, paused]",toolTip:"string",useHandCursor:"bool",video:"VideoResource"}).Vb([d.Ba,d.zd,d.Jh,d.Ff,d.wc,d.Mb,d.od,d.Ji,d.Ef,d.xc]).Cf([d.U]).Ag({pause:a.prototype.pause,play:a.prototype.play,stop:a.prototype.stop});a.prototype.set=function(a,b){var g=y;switch(a){case "state":var k=this.get("state")||f.I;k==f.I&&b==f.O&&this.trigger(d.Ji);
k!=b&&this.trigger(new e(d.xc,{oldState:k,state:b}));break;case "enabledInCardboard":this.set("enabledInVR",b);break;case "distance":case "opacity":case "playbackPositions":case "vertices":this.Ob=m;g=n}c.prototype.set.call(this,a,b);g&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=k.FY(this);return this.Ob}return c.prototype.get.call(this,a,b)};return a});
define("jI",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("initialState","playing");this.set("opacity",0.25);this.set("speed",0.5);this.set("intensity",0.5);this.set("color","#ffffff");this.set("state","playing");this.set("startDuration",2E4);this.set("stopDuration",2E4)});a.A("RainPanoramaOverlay",b).B("PanoramaOverlay").K({initialState:"enum[playing, stopped]",intensity:"number",speed:"number",opacity:"number",color:"color",
startDuration:"number",state:"enum[playing, stopped]",stopDuration:"number",startState:"enum[playing, stopped]"});b.prototype.get=function(a,b){"startState"==a&&b===m&&(b=this.get("initialState"));return c.prototype.get.call(this,a,b)};return b});
define("ec",["require","fg","jd","dW","ll"],function(a){var b=a("fg"),c=a("jd"),d=a("dW"),a=a("ll"),b=b.extend(c,function(){c.call(this)});d.A("RotationalCameraMovement",b).B("Object").K({easing:"enum[linear, quad_in, quad_out, quad_in_out, cubic_in, cubic_out, cubic_in_out, quart_in, quart_out, quart_in_out, quint_in, quint_out, quint_in_out]",duration:"number",hfovSpeed:"number",pitchSpeed:"number",yawSpeed:"number"}).Vb([a.Ba]);return b});
define("bO",["fg","dE","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("SlideInEffect",a).B("Effect").K({from:"enum[left, top, right, bottom]"});return a});define("gu",["fg","fP","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("SlideOutEffect",a).B("Effect").K({to:"enum[left, top, right, bottom]"});return a});
define("kI",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("initialState","playing");this.set("intensity",0.5);this.set("speed",0.25);this.set("state","playing");this.set("startDuration",2E4);this.set("stopDuration",2E4)});a.A("SnowPanoramaOverlay",b).B("PanoramaOverlay").K({initialState:"enum[playing, stopped]",intensity:"number",speed:"number",startDuration:"number",state:"enum[playing, stopped]",stopDuration:"number",startState:"enum[playing, stopped]"});
b.prototype.get=function(a,b){"startState"==a&&b===m&&(b=this.get("initialState"));return c.prototype.get.call(this,a,b)};return b});
define("jz",["require","fg","dW","iR"],function(a){var b=a("fg"),c=a("dW"),d=a("iR"),a=b.extend(d,function(){d.call(this)});c.A("SphericPanoramaFrame",a).B("PanoramaFrame").K({sphere:"or[ImageResource, Video360Resource]",stereoSphere:"or[ImageResource, Video360Resource]"});a.prototype.Hh=function(){var a=this.get("sphere");return a&&c.qb("Video360Resource",a)?n:(a=this.get("stereoSphere"))&&c.qb("Video360Resource",a)?n:y};return a});
define("cz","do,fg,u,kS,jY,N,gP".split(","),function(a,b,c,d,f,e,g){var k=b.extend(d,function(a){d.call(this);this.Uc("Tab");this.vU=a;this.ni="";this.qW=y;this.P5=this.sa=r;this.uX=this.tX=y;this.set("childrenInteractionEnabled",y);this.set("contentOpaque",n)});k.prototype.za=function(){d.prototype.za.call(this);this.f("horizontalAlign",f.Mc);this.f("verticalAlign",f.tc);this.f("fontFamily");this.f("fontSize");this.f("fontColor");this.f("fontWeight");this.f("fontStyle");this.f("textDecoration");
this.f("textShadowBlurRadius");this.f("textShadowColor");this.f("textShadowHorizontalLength");this.f("textShadowOpacity");this.f("textShadowVerticalLength")};k.prototype.Bea=function(a){if(this.tX!=a){this.tX=a;this.uX=n;this.Dc()}};k.prototype.Fa=function(){d.prototype.Fa.call(this);if(this.sa==r){this.sa=new g;this.sa.set("horizontalAlign","center");this.la(this.sa)}};k.prototype.al=function(){d.prototype.al.call(this);this.P5=c.watch(this.vU,"label",this.Kna,this);this.Y9(this.vU.get("label"))};
k.prototype.nV=function(){d.prototype.nV.call(this);this.P5.unwatch()};k.prototype.Kna=function(){var a=this.vU.get("label");this.Y9(a?a:"")};k.prototype.Y9=function(a){if(this.ni!=a){this.ni=a;this.qW=n;this.Dc()}};k.prototype.ja=function(){if(this.qW){this.qW=y;this.sa.set("text",this.ni)}if(this.uX){this.uX=y;this.sa.set("direction",this.tX?e.kf:e.Be)}this.hb(k.A1,k.Sw,[this.sa],n,n);d.prototype.ja.call(this)};k.A1=["fontFamily","fontSize","fontColor","fontWeight","fontStyle","textDecoration",
"textShadowColor","textShadowHorizontalLength","textShadowVerticalLength","textShadowBlurRadius","textShadowOpacity"];k.Sw={};a(k.A1).each(function(a){k.Sw[a]=a});return k});define("dV",[],function(){return{iA:"normal",Fw:"inverse",x_:"center"}});
define("cq","do,fg,W,R,ll,kS,jY,c,cz,dV,bh".split(","),function(a,b,c,d,f,e,g,k,i,p,j){b=b.extend(e,function(){e.call(this);this.Uc("TabPanel");this.td=-1;this.dv=y;this.UD=[];this.lL=y;this.Qm=[];this.xU=y;this.TD=[];this.Ie=this.vf=r;this.fv(y)});b.prototype.za=function(){e.prototype.za.call(this);this.f("pages",[]);this.f("selectedIndex",-1);this.f("tabsSize",25);this.f("tabsPosition",j.mb);this.f("tabsGap",0);this.f("tabsPadding",10);this.f("tabsAlign",p.iA);this.f("tabsBackgroundOpacity",0.6);
this.f("tabsBackgroundColor",["#FFFFFF","#CCCCCC"]);this.f("tabsBackgroundColorRatios",[0,0.5]);this.f("tabsRollOverBackgroundOpacity",1);this.f("tabsRollOverBackgroundColor",["#FFFFFF","#CCCCCC"]);this.f("tabsRollOverBackgroundColorRatios",[0,0.5]);this.f("backgroundColor","#FFFFFF");this.f("selectedTabBackgroundOpacity",1);this.f("selectedTabBackgroundColor");this.f("selectedTabBackgroundColorRatios");this.f("borderRadius",6);this.f("pagePaddingLeft",4);this.f("pagePaddingTop",4);this.f("pagePaddingRight",
4);this.f("pagePaddingBottom",4);this.f("borderColor","#AAAAAA");this.f("borderSize",1);this.f("selectedTabFontSize");this.f("selectedTabFontColor");this.f("selectedTabFontWeight");this.f("selectedTabFontStyle");this.f("selectedTabTextDecoration");this.f("selectedTabTextShadowBlurRadius");this.f("selectedTabTextShadowColor");this.f("selectedTabTextShadowHorizontalLength");this.f("selectedTabTextShadowOpacity");this.f("selectedTabTextShadowVerticalLength");this.f("tabsFontFamily");this.f("tabsFontSize");
this.f("tabsFontColor");this.f("tabsFontWeight");this.f("tabsFontStyle");this.f("tabsTextDecoration");this.f("tabsTextShadowBlurRadius");this.f("tabsTextShadowColor");this.f("tabsTextShadowHorizontalLength");this.f("tabsTextShadowOpacity");this.f("tabsTextShadowVerticalLength");this.f("tabsRollOverFontSize");this.f("tabsRollOverFontColor");this.f("tabsRollOverFontWeight");this.f("tabsRollOverFontStyle");this.f("tabsRollOverTextDecoration");this.f("tabsRollOverTextShadowBlurRadius");this.f("tabsRollOverTextShadowColor");
this.f("tabsRollOverTextShadowHorizontalLength");this.f("tabsRollOverTextShadowOpacity");this.f("tabsRollOverTextShadowVerticalLength")};b.prototype.Fa=function(){e.prototype.Fa.call(this);if(this.Ie==r){this.Ie=new e;this.Ie.fv(y);this.la(this.Ie)}if(this.vf==r){this.vf=new e;this.vf.fv(y);this.la(this.vf)}};b.prototype.set=function(a,b){if(a=="pages")this.Gya(b||[]);else if(a=="selectedIndex")this.WZ(b);else if(a=="layout")b=k.Kza;e.prototype.set.call(this,a,b)};b.prototype.get=function(a,b){return a==
"pages"?this.Qm:a=="selectedIndex"?this.td:e.prototype.get.call(this,a,b)};b.prototype.WZ=function(a){if(this.td!=a){this.td=a;this.td=Math.min(Math.max(this.td,-1),this.Qm.length);this.dv=n;this.Dc();this.trigger(f.aa)}};b.prototype.Gya=function(b){if(!a.isEqual(this.Qm,b)){this.Qm=b;this.xU=n;this.Dc()}};b.prototype.Rra=function(b){this.UD=a(this.UD).union([b.source]);this.lL=n;this.Dc()};b.prototype.Qra=function(b){this.UD=a(this.UD).difference([b.source]);this.lL=n;this.Dc()};b.prototype.Pra=
function(b){this.WZ(a(this.TD).indexOf(b.source))};b.prototype.ja=function(){var b=y,q=y,o=y,t=y,s=y,u=this.k("tabsPosition"),v=this.k("tabsAlign");if(this.xU){this.TD=[];this.vf.Kda();this.Ie.Kda();a(this.Qm).forEach(function(b){var c=new i(b);c.fv(n);c.bind(f.wc,a.bind(this.Rra,this));c.bind(f.Mb,a.bind(this.Qra,this));c.bind(f.Eb,a.bind(this.Pra,this));this.TD.push(c);this.vf.la(c);b.M({top:m,left:m,right:m,bottom:m,width:"100%",height:"100%"});this.Ie.la(b)},this);this.td=Math.min(Math.max(this.td,
0),this.Qm.length-1);this.xU=y;q=b=s=n}if(this.n("tabsPosition")){this.q("tabsPosition");t=q=b=n}if(this.dv){this.dv=y;o=q=s=n}if(this.lL){this.lL=y;o=n}a(["tabsAlign","tabsGap","tabsSize"]).forEach(function(a){if(this.n(a)){this.q(a);b=n}},this);a(["borderRadius","borderTopRadius","borderBottomRadius","borderLeftRadius","borderRightRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderSize","borderLeftSize","borderTopSize","borderRightSize",
"borderBottomSize","borderColor","borderLeftColor","borderTopColor","borderRightColor","borderBottomColor","shadow","shadowHorizontalLength","shadowVerticalLength","shadowBlurRadius","shadowSpread","shadowColor","backgroundOpacity","backgroundColor","backgroundColorRatios"]).forEach(function(a){if(this.n(a)){this.q(a);t=q=n}},this);a(["tabsBackgroundOpacity","tabsBackgroundColor","tabsBackgroundColorRatios","selectedTabBackgroundOpacity","selectedTabBackgroundColor","selectedTabBackgroundColorRatios",
"selectedTabFontSize","selectedTabFontColor","selectedTabFontWeight","selectedTabFontStyle","selectedTabTextDecoration","selectedTabTextShadowColor","selectedTabTextShadowHorizontalLength","selectedTabTextShadowVerticalLength","selectedTabTextShadowBlurRadius","selectedTabTextShadowOpacity","tabsFontFamily","tabsFontSize","tabsFontColor","tabsFontWeight","tabsFontStyle","tabsPadding","tabsTextDecoration","tabsRollOverFontSize","tabsRollOverFontColor","tabsTextShadowColor","tabsTextShadowHorizontalLength",
"tabsTextShadowVerticalLength","tabsTextShadowBlurRadius","tabsTextShadowOpacity","tabsRollOverFontWeight","tabsRollOverFontStyle","tabsRollOverTextDecoration","tabsRollOverTextShadowColor","tabsRollOverTextShadowHorizontalLength","tabsRollOverTextShadowVerticalLength","tabsRollOverTextShadowBlurRadius","tabsRollOverTextShadowOpacity"]).forEach(function(a){if(this.n(a)){this.q(a);q=n}},this);a(["pagePaddingLeft","pagePaddingTop","pagePaddingRight","pagePaddingBottom"]).forEach(function(a){if(this.n(a)){this.q(a);
t=n}},this);this.n("backgroundColorDirection")&&this.q("backgroundColorDirection");if(b){switch(u){case j.qa:this.vf.M({left:0,right:m});break;case j.Ma:this.vf.M({left:m,right:0});break;case j.mb:this.vf.M({bottom:m,top:0});break;case j.lb:this.vf.M({bottom:0,top:m})}switch(u){case j.qa:case j.Ma:this.vf.M({layout:k.kf,top:0,bottom:0,height:m,width:this.k("tabsSize")});switch(v){case p.Fw:this.vf.set("verticalAlign",g.lb);break;case p.x_:this.vf.set("verticalAlign",g.tc);break;default:this.vf.set("verticalAlign",
g.mb)}break;case j.mb:case j.lb:this.vf.M({layout:k.Be,left:0,right:0,height:this.k("tabsSize"),width:m});switch(v){case p.Fw:this.vf.set("horizontalAlign",g.Ma);break;case p.x_:this.vf.set("horizontalAlign",g.Mc);break;default:this.vf.set("horizontalAlign",g.qa)}}this.vf.set("gap",this.k("tabsGap"))}if(q)for(var w=0;w<this.Qm.length;w++){var x=this.TD[w];if(u==j.lb||u==j.mb){x.M({layout:k.Be,width:m,paddingLeft:this.k("tabsPadding"),paddingTop:0,paddingRight:this.k("tabsPadding"),paddingBottom:0,
height:"100%",backgroundColorDirection:c.gP});x.Bea(y)}else{x.M({layout:k.kf,width:"100%",paddingLeft:0,paddingTop:this.k("tabsPadding"),paddingRight:0,paddingBottom:this.k("tabsPadding"),height:m,backgroundColorDirection:c.JO});x.Bea(n)}u==j.lb||u==j.Ma?x.set("borderTopLeftRadius",0):x.set("borderTopLeftRadius",this.k("borderTopLeftRadius","borderTopRadius","borderLeftRadius","borderRadius"));u==j.lb||u==j.qa?x.set("borderTopRightRadius",0):x.set("borderTopRightRadius",this.k("borderTopRightRadius",
"borderTopRadius","borderRightRadius","borderRadius"));u==j.mb||u==j.Ma?x.set("borderBottomLeftRadius",0):x.set("borderBottomLeftRadius",this.k("borderBottomLeftRadius","borderBottomRadius","borderLeftRadius","borderRadius"));u==j.mb||u==j.qa?x.set("borderBottomRightRadius",0):x.set("borderBottomRightRadius",this.k("borderBottomRightRadius","borderBottomRadius","borderRightRadius","borderRadius"));u==j.Ma&&x.set("borderSize",this.k("borderRightSize","borderSize"));u==j.qa&&x.set("borderSize",this.k("borderLeftSize",
"borderSize"));u==j.mb&&x.set("borderSize",this.k("borderTopSize","borderSize"));u==j.lb&&x.set("borderSize",this.k("borderBottomSize","borderSize"));var z;switch(u){case j.qa:z=this.k("borderLeftColor","borderColor");break;case j.Ma:z=this.k("borderRightColor","borderColor");break;case j.lb:z=this.k("borderBottomColor","borderColor");break;default:case j.mb:z=this.k("borderTopColor","borderColor")}x.set("borderColor",z);x.M({fontFamily:this.k("tabsFontFamily"),shadow:this.k("shadow"),shadowHorizontalLength:this.k("shadowHorizontalLength"),
shadowVerticalLength:this.k("shadowVerticalLength"),shadowBlurRadius:this.k("shadowBlurRadius"),shadowSpread:this.k("shadowSpread"),shadowColor:this.k("shadowColor")})}if(q||o)for(w=0;w<this.Qm.length;w++){x=this.TD[w];o=w==this.td;z=a(this.UD).contains(x);if(o){z=this.k("selectedTabBackgroundColor","tabsBackgroundColor");if(a(z).isUndefined()){z=this.k("backgroundColor");z=a(z).isArray()&&z.length>0?u==j.qa||u==j.mb?z[0]:z[z.length-1]:z}x.M({backgroundOpacity:this.k("selectedTabBackgroundOpacity",
"tabsBackgroundOpacity","backgroundOpacity"),backgroundColor:z,backgroundColorRatios:this.k("selectedTabBackgroundColorRatios","tabsBackgroundColorRatios"),cursor:d.dd,fontSize:this.k("selectedTabFontSize","tabsFontSize"),fontColor:this.k("selectedTabFontColor","tabsFontColor"),fontWeight:this.k("selectedTabFontWeight","tabsFontWeight"),fontStyle:this.k("selectedTabFontStyle","tabsFontStyle"),textDecoration:this.k("selectedTabTextDecoration","tabsTextDecoration"),textShadowColor:this.k("selectedTabTextShadowColor",
"tabsTextShadowColor"),textShadowHorizontalLength:this.k("selectedTabTextShadowHorizontalLength","tabsTextShadowHorizontalLength"),textShadowVerticalLength:this.k("selectedTabTextShadowVerticalLength","tabsTextShadowVerticalLength"),textShadowBlurRadius:this.k("selectedTabTextShadowBlurRadius","tabsTextShadowBlurRadius"),textShadowOpacity:this.k("selectedTabTextShadowOpacity","tabsTextShadowOpacity")})}else z?x.M({backgroundOpacity:this.k("tabsRollOverBackgroundOpacity","tabsBackgroundOpacity","backgroundOpacity"),
backgroundColor:this.k("tabsRollOverBackgroundColor","tabsBackgroundColor"),backgroundColorRatios:this.k("tabsRollOverBackgroundColorRatios","tabsBackgroundColorRatios"),cursor:d.me,fontSize:this.k("tabsRollOverFontSize","tabsFontSize"),fontColor:this.k("tabsRollOverFontColor","tabsFontColor"),fontWeight:this.k("tabsRollOverFontWeight","tabsFontWeight"),fontStyle:this.k("tabsRollOverFontStyle","tabsFontStyle"),textDecoration:this.k("tabsRollOverTextDecoration","tabsTextDecoration"),textShadowColor:this.k("tabsRollOverTextShadowColor",
"tabsTextShadowColor"),textShadowHorizontalLength:this.k("tabsRollOverTextShadowHorizontalLength","tabsTextShadowHorizontalLength"),textShadowVerticalLength:this.k("tabsRollOverTextShadowVerticalLength","tabsTextShadowVerticalLength"),textShadowBlurRadius:this.k("tabsRollOverTextShadowBlurRadius","tabsTextShadowBlurRadius"),textShadowOpacity:this.k("tabsRollOverTextShadowOpacity","tabsTextShadowOpacity")}):x.M({backgroundOpacity:this.k("tabsBackgroundOpacity","backgroundOpacity"),backgroundColor:this.k("tabsBackgroundColor"),
backgroundColorRatios:this.k("tabsBackgroundColorRatios"),fontSize:this.k("tabsFontSize"),fontColor:this.k("tabsFontColor"),fontWeight:this.k("tabsFontWeight"),fontStyle:this.k("tabsFontStyle"),textDecoration:this.k("tabsTextDecoration"),textShadowColor:this.k("tabsTextShadowColor"),textShadowHorizontalLength:this.k("tabsTextShadowHorizontalLength"),textShadowVerticalLength:this.k("tabsTextShadowVerticalLength"),textShadowBlurRadius:this.k("tabsTextShadowBlurRadius"),textShadowOpacity:this.k("tabsTextShadowOpacity")});
x.M({borderLeftSize:u==j.Ma&&o?0:m,borderRightSize:u==j.qa&&o?0:m,borderBottomSize:u==j.mb&&o?0:m,borderTopSize:u==j.lb&&o?0:m})}if(t){w=this.k("tabsSize");switch(u){case j.qa:this.Ie.M({left:w-(this.k("borderLeftSize","borderSize")||0),right:0,top:0,bottom:0});break;case j.Ma:this.Ie.M({left:0,right:w-(this.k("borderRightSize","borderSize")||0),top:0,bottom:0});break;case j.mb:this.Ie.M({left:0,right:0,top:w-(this.k("borderTopSize","borderSize")||0),bottom:0});break;case j.lb:this.Ie.M({left:0,right:0,
top:0,bottom:w-(this.k("borderBottomSize","borderSize")||0)})}u==j.mb&&v==p.iA||u==j.qa&&v==p.iA?this.Ie.set("borderTopLeftRadius",0):this.Ie.set("borderTopLeftRadius",this.k("borderTopLeftRadius","borderTopRadius","borderLeftRadius","borderRadius"));u==j.mb&&v==p.Fw||u==j.Ma&&v==p.iA?this.Ie.set("borderTopRightRadius",0):this.Ie.set("borderTopRightRadius",this.k("borderTopRightRadius","borderTopRadius","borderRightRadius","borderRadius"));u==j.lb&&v==p.iA||u==j.qa&&v==p.Fw?this.Ie.set("borderBottomLeftRadius",
0):this.Ie.set("borderBottomLeftRadius",this.k("borderBottomLeftRadius","borderBottomRadius","borderLeftRadius","borderRadius"));u==j.lb&&v==p.Fw||u==j.Ma&&v==p.Fw?this.Ie.set("borderBottomRightRadius",0):this.Ie.set("borderBottomRightRadius",this.k("borderBottomRightRadius","borderBottomRadius","borderRightRadius","borderRadius"));this.Ie.M({paddingLeft:this.k("pagePaddingLeft"),paddingTop:this.k("pagePaddingTop"),paddingRight:this.k("pagePaddingRight"),paddingBottom:this.k("pagePaddingBottom"),
borderLeftSize:this.k("borderLeftSize","borderSize"),borderTopSize:this.k("borderTopSize","borderSize"),borderRightSize:this.k("borderRightSize","borderSize"),borderBottomSize:this.k("borderBottomSize","borderSize"),borderLeftColor:this.k("borderLeftColor","borderColor"),borderTopColor:this.k("borderTopColor","borderColor"),borderRightColor:this.k("borderRightColor","borderColor"),borderBottomColor:this.k("borderBottomColor","borderColor"),shadow:this.k("shadow"),shadowHorizontalLength:this.k("shadowHorizontalLength"),
shadowVerticalLength:this.k("shadowVerticalLength"),shadowBlurRadius:this.k("shadowBlurRadius"),shadowSpread:this.k("shadowSpread"),shadowColor:this.k("shadowColor"),backgroundOpacity:this.k("backgroundOpacity"),backgroundColor:this.k("backgroundColor"),backgroundColorRatios:this.k("backgroundColorRatios")});u==j.mb||u==j.lb?this.Ie.set("backgroundColorDirection",c.gP):this.Ie.set("backgroundColorDirection",c.JO)}if(s)for(w=0;w<this.Qm.length;w++)this.Qm[w].set("visible",w==this.td);e.prototype.ja.call(this)};
return b});
define("kL",["do","fg","ll","cq","dW"],function(a,b,c,d,f){a=b.extend(d,function(){d.call(this)});f.A("TabPanel",a).B("Container").K({pagePaddingLeft:"number",pagePaddingTop:"number",pagePaddingRight:"number",pagePaddingBottom:"number",pages:"array[TabPanelPage]",selectedIndex:"number",selectedTabBackgroundColor:"or[color, array[color]]",selectedTabBackgroundColorRatios:"array[number]",selectedTabBackgroundOpacity:"number",selectedTabFontColor:"color",selectedTabFontSize:"or[number, size]",selectedTabFontStyle:"enum[italic, normal]",
selectedTabFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",selectedTabTextDecoration:"enum[underline, overline, line-through, none]",selectedTabTextShadowBlurRadius:"number",selectedTabTextShadowColor:"color",selectedTabTextShadowHorizontalLength:"number",selectedTabTextShadowOpacity:"number",selectedTabTextShadowVerticalLength:"number",tabsAlign:"enum[normal, inverse, center]",tabsBackgroundColor:"or[color, array[color]]",tabsBackgroundColorRatios:"array[number]",
tabsBackgroundOpacity:"number",tabsFontColor:"color",tabsFontFamily:"string",tabsFontSize:"or[number, size]",tabsFontStyle:"enum[italic, normal]",tabsFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",tabsGap:"number",tabsPadding:"number",tabsPosition:"enum[left, top, right, bottom]",tabsRollOverBackgroundColor:"or[color, array[color]]",tabsRollOverBackgroundColorRatios:"array[number]",tabsRollOverBackgroundOpacity:"number",tabsRollOverFontColor:"color",
tabsRollOverFontSize:"or[number, size]",tabsRollOverFontStyle:"enum[italic, normal]",tabsRollOverFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",tabsRollOverTextDecoration:"enum[underline, overline, line-through, none]",tabsRollOverTextShadowBlurRadius:"number",tabsRollOverTextShadowColor:"color",tabsRollOverTextShadowHorizontalLength:"number",tabsRollOverTextShadowOpacity:"number",tabsRollOverTextShadowVerticalLength:"number",tabsSize:"number",tabsTextDecoration:"enum[underline, overline, line-through, none]",
tabsTextShadowBlurRadius:"number",tabsTextShadowColor:"color",tabsTextShadowHorizontalLength:"number",tabsTextShadowOpacity:"number",tabsTextShadowVerticalLength:"number"}).aq(["selectedTabFontSize","tabsFontSize","tabsRollOverFontSize"]).Vb([c.aa]);return a});define("eA",["fg","kS"],function(a,b){var c=a.extend(b,function(){b.call(this);this.Uc("Page");this.set("label","")});c.prototype.za=function(){b.prototype.za.call(this);this.f("visible",m)};return c});
define("T",["fg","eA","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("TabPanelPage",a).B("Container").K({label:"string"});return a});define("fa",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("TargetPanoramaCameraMovement",b).B("TargetRotationalCameraMovement");return b});
define("cF",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("TargetRotationalCameraDisplayMovement",b).B("RotationalCameraMovement").K({stereographicFactorSpeed:"number",path:"enum[left, right, shortest, longest]",targetYaw:"number",targetPitch:"number",targetHfov:"number",targetStereographicFactor:"number"});return b});
define("gc",["require","fg","jj","dW"],function(a){var b=a("fg"),c=a("jj"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("TiledImageResourceLevel",b).B("ImageResourceLevel").K({rowCount:"number",colCount:"number"});return b});define("hj",["require","fg","dW","gk"],function(a){var b=a("fg"),c=a("dW"),d=a("gk"),a=b.extend(d,function(){d.call(this)});c.A("TripodCapPanoramaOverlay",a).B("CapPanoramaOverlay");return a});
define("gn","require,fg,u,ll,jY,ck,R,c,bh,jn,fm,kS,jF,gP,do".split(","),function(a){var b=a("fg"),c=a("u"),d=a("ll"),f=a("jY"),e=a("ck"),g=a("R"),k=a("c"),i=a("bh"),p=a("jn"),j=a("fm"),l=a("kS"),q=a("jF"),o=a("gP"),t=a("do"),s=b.extend(l,function(){l.call(this);this.sa=this.$c=r;this.Mt=[];this.set("autoRolledOver",n);this.set("childrenInteractionEnabled",y);this.set("contentOpaque",n);this.set("creationPolicy",e.pt);this.set("cursor",g.me)});s.prototype.za=function(){l.prototype.za.call(this);this.f("overflow",
"hidden");this.f("item");this.f("thumbnailUrlFunction",this.lR);this.f("sourceProperties");this.f("labelFunction",this.jR);this.f("labelFontFamily");this.f("labelFontColor");this.f("labelFontSize");this.f("labelFontStyle");this.f("labelFontWeight");this.f("labelGap");this.f("labelHorizontalAlign");this.f("labelMaxWidth");this.f("labelPosition");this.f("labelTextDecoration");this.f("labelTextShadowColor");this.f("labelTextShadowHorizontalLength");this.f("labelTextShadowVerticalLength");this.f("labelTextShadowBlurRadius");
this.f("labelTextShadowOpacity");this.f("thumbnailBorderRadius");this.f("thumbnailOpacity");this.f("thumbnailBorderSize");this.f("thumbnailBorderColor");this.f("thumbnailWidth");this.f("thumbnailHeight");this.f("thumbnailMaxWidth");this.f("thumbnailMaxHeight");this.f("thumbnailShadow");this.f("thumbnailShadowHorizontalLength");this.f("thumbnailShadowVerticalLength");this.f("thumbnailShadowBlurRadius");this.f("thumbnailShadowSpread");this.f("thumbnailShadowColor");this.f("thumbnailShadowOpacity");
this.h("rollOverBackgroundOpacity",j.u,"backgroundOpacity");this.h("rollOverBackgroundColor",j.u,"backgroundColor");this.h("rollOverBackgroundColorRatios",j.u,"backgroundColorRatios");this.h("rollOverBackgroundColorDirection",j.u,"backgroundColorDirection");this.h("rollOverBorderRadius",j.u,"borderRadius");this.h("rollOverBorderTopRadius",j.u,"borderTopRadius");this.h("rollOverBorderBottomRadius",j.u,"borderBottomRadius");this.h("rollOverBorderLeftRadius",j.u,"borderLeftRadius");this.h("rollOverBorderRightRadius",
j.u,"borderRightRadius");this.h("rollOverBorderTopLeftRadius",j.u,"borderTopLeftRadius");this.h("rollOverBorderTopRightRadius",j.u,"borderTopRightRadius");this.h("rollOverBorderBottomLeftRadius",j.u,"borderBottomLeftRadius");this.h("rollOverBorderBottomRightRadius",j.u,"borderBottomRightRadius");this.h("rollOverBorderSize",j.u,"borderSize");this.h("rollOverBorderLeftSize",j.u,"borderLeftSize");this.h("rollOverBorderTopSize",j.u,"borderTopSize");this.h("rollOverBorderRightSize",j.u,"borderRightSize");
this.h("rollOverBorderBottomSize",j.u,"borderBottomSize");this.h("rollOverBorderColor",j.u,"borderColor");this.h("rollOverBorderLeftColor",j.u,"borderLeftColor");this.h("rollOverBorderTopColor",j.u,"borderTopColor");this.h("rollOverBorderRightColor",j.u,"borderRightColor");this.h("rollOverBorderBottomColor",j.u,"borderBottomColor");this.h("rollOverLabelFontColor",j.u,"labelFontColor");this.h("rollOverLabelFontSize",j.u,"labelFontSize");this.h("rollOverLabelFontStyle",j.u,"labelFontStyle");this.h("rollOverLabelFontWeight",
j.u,"labelFontWeight");this.h("rollOverLabelTextDecoration",j.u,"labelTextDecoration");this.h("rollOverLabelTextShadowColor",j.u,"labelTextShadowColor");this.h("rollOverLabelTextShadowHorizontalLength",j.u,"labelTextShadowHorizontalLength");this.h("rollOverLabelTextShadowVerticalLength",j.u,"labelTextShadowVerticalLength");this.h("rollOverLabelTextShadowBlurRadius",j.u,"labelTextShadowBlurRadius");this.h("rollOverLabelTextShadowOpacity",j.u,"labelTextShadowOpacity");this.h("rollOverOpacity",j.u,"opacity");
this.h("rollOverPaddingLeft",j.u,"paddingLeft");this.h("rollOverPaddingTop",j.u,"paddingTop");this.h("rollOverPaddingRight",j.u,"paddingRight");this.h("rollOverPaddingBottom",j.u,"paddingBottom");this.h("rollOverShadow",j.u,"shadow");this.h("rollOverThumbnailOpacity",j.u,"thumbnailOpacity");this.h("rollOverThumbnailBorderSize",j.u,"thumbnailBorderSize");this.h("rollOverThumbnailBorderColor",j.u,"thumbnailBorderColor");this.h("rollOverThumbnailShadow",j.u,"thumbnailShadow");this.h("rollOverThumbnailShadowHorizontalLength",
j.u,"thumbnailShadowHorizontalLength");this.h("rollOverThumbnailShadowVerticalLength",j.u,"thumbnailShadowVerticalLength");this.h("rollOverThumbnailShadowBlurRadius",j.u,"thumbnailShadowBlurRadius");this.h("rollOverThumbnailShadowSpread",j.u,"thumbnailShadowSpread");this.h("rollOverThumbnailShadowColor",j.u,"thumbnailShadowColor");this.h("rollOverThumbnailShadowOpacity",j.u,"thumbnailShadowOpacity");this.h("selectedBackgroundOpacity",j.G,"backgroundOpacity");this.h("selectedBackgroundColor",j.G,"backgroundColor");
this.h("selectedBackgroundColorRatios",j.G,"backgroundColorRatios");this.h("selectedBackgroundColorDirection",j.G,"backgroundColorDirection");this.h("selectedBorderRadius",j.G,"borderRadius");this.h("selectedBorderTopRadius",j.G,"borderTopRadius");this.h("selectedBorderBottomRadius",j.G,"borderBottomRadius");this.h("selectedBorderLeftRadius",j.G,"borderLeftRadius");this.h("selectedBorderRightRadius",j.G,"borderRightRadius");this.h("selectedBorderTopLeftRadius",j.G,"borderTopLeftRadius");this.h("selectedBorderTopRightRadius",
j.G,"borderTopRightRadius");this.h("selectedBorderBottomLeftRadius",j.G,"borderBottomLeftRadius");this.h("selectedBorderBottomRightRadius",j.G,"borderBottomRightRadius");this.h("selectedBorderSize",j.G,"borderSize");this.h("selectedBorderLeftSize",j.G,"borderLeftSize");this.h("selectedBorderTopSize",j.G,"borderTopSize");this.h("selectedBorderRightSize",j.G,"borderRightSize");this.h("selectedBorderBottomSize",j.G,"borderBottomSize");this.h("selectedBorderColor",j.G,"borderColor");this.h("selectedBorderLeftColor",
j.G,"borderLeftColor");this.h("selectedBorderTopColor",j.G,"borderTopColor");this.h("selectedBorderRightColor",j.G,"borderRightColor");this.h("selectedBorderBottomColor",j.G,"borderBottomColor");this.h("selectedLabelFontColor",j.G,"labelFontColor");this.h("selectedLabelFontSize",j.G,"labelFontSize");this.h("selectedLabelFontStyle",j.G,"labelFontStyle");this.h("selectedLabelFontWeight",j.G,"labelFontWeight");this.h("selectedLabelTextDecoration",j.G,"labelTextDecoration");this.h("selectedLabelTextShadowColor",
j.G,"labelTextShadowColor");this.h("selectedLabelTextShadowHorizontalLength",j.G,"labelTextShadowHorizontalLength");this.h("selectedLabelTextShadowVerticalLength",j.G,"labelTextShadowVerticalLength");this.h("selectedLabelTextShadowBlurRadius",j.G,"labelTextShadowBlurRadius");this.h("selectedLabelTextShadowOpacity",j.G,"labelTextShadowOpacity");this.h("selectedOpacity",j.G,"opacity");this.h("selectedPaddingLeft",j.G,"paddingLeft");this.h("selectedPaddingTop",j.G,"paddingTop");this.h("selectedPaddingRight",
j.G,"paddingRight");this.h("selectedPaddingBottom",j.G,"paddingBottom");this.h("selectedShadow",j.G,"shadow");this.h("selectedThumbnailOpacity",j.G,"thumbnailOpacity");this.h("selectedThumbnailBorderSize",j.G,"thumbnailBorderSize");this.h("selectedThumbnailBorderColor",j.G,"thumbnailBorderColor");this.h("selectedThumbnailShadow",j.G,"thumbnailShadow");this.h("selectedThumbnailShadowHorizontalLength",j.G,"thumbnailShadowHorizontalLength");this.h("selectedThumbnailShadowVerticalLength",j.G,"thumbnailShadowVerticalLength");
this.h("selectedThumbnailShadowBlurRadius",j.G,"thumbnailShadowBlurRadius");this.h("selectedThumbnailShadowSpread",j.G,"thumbnailShadowSpread");this.h("selectedThumbnailShadowColor",j.G,"thumbnailShadowColor");this.h("selectedThumbnailShadowOpacity",j.G,"thumbnailShadowOpacity")};s.prototype.QF=function(a){this.zD(a)};s.prototype.Fa=function(){l.prototype.Fa.call(this);if(!this.$c){this.$c=new q;this.la(this.$c);this.$c.set("horizontalAlign",f.Mc);this.$c.set("verticalAlign",f.tc);this.$c.bind(d.T,
this.vW,this)}if(!this.sa){this.sa=new o;this.la(this.sa)}};s.prototype.lR=function(a){if(t(a).isString())return a;if(a&&a.i_)return a.i_};s.prototype.jR=function(a){if(a&&a.label)return a.label};s.prototype.ja=function(){if(this.n("sourceProperties")||this.n("item")){for(;this.Mt.length;)this.Mt.pop().unwatch();var a=this.k("sourceProperties"),b=this.k("item");a&&b&&a.forEach(function(a){this.Mt.push(c.watch(b,a,this.oU,this,n))}.bind(this))}if(this.n("sourceProperties")||this.n("item")||this.n("tooltipFunction")){b=
this.k("item");a=this.k("tooltipFunction")(b);this.set("toolTip",a)}if(this.n("sourceProperties")||this.n("item")||this.n("thumbnailUrlFunction")){b=this.k("item");(a=this.k("thumbnailUrlFunction")(b))?this.$c.get("url")!=a&&this.$c.M({url:a,visible:n,opacity:0.5}):this.$c.M({url:m,visible:y});this.q("thumbnailUrlFunction")}if(this.n("sourceProperties")||this.n("item")||this.n("labelFunction")){b=this.k("item");a=this.k("labelFunction")(b);this.sa.M({text:a,visible:a?n:y});this.q("labelFunction")}this.q("item");
this.q("sourceProperties");if(this.n("labelPosition")||this.n("listLayout")||this.n("thumbnailWidth")||this.n("thumbnailHeight")){var d=this,a=function(a,b){var c=d.k(a);return c!==m?c:b};switch(this.k("labelPosition")){case i.qa:case i.Ma:this.set("layout",k.Be);this.sa.set("width","100%");this.$c.M({height:a("thumbnailHeight","100%"),width:a("thumbnailWidth"),scaleMode:a("thumbnailScaleMode",p.ih)});break;default:this.set("layout",k.kf);this.sa.set("width","100%");this.$c.M({height:a("thumbnailHeight",
"100%"),width:a("thumbnailWidth","100%"),scaleMode:a("thumbnailScaleMode",p.ih)})}switch(this.k("labelPosition")){case i.qa:case i.mb:this.Fj(this.sa,0);break;default:this.Fj(this.sa,1)}this.q("labelPosition")}this.hb(s.sP,s.z1,[this],n,n);this.hb(s.uP,s.C1,[this.$c],n,n);this.hb(s.tP,s.B1,[this.sa],n,n);l.prototype.ja.call(this)};s.prototype.oU=function(){this.gv("item")};s.prototype.ev=function(a){l.prototype.ev.call(this,a)};s.prototype.vW=function(){this.$c.set("opacity",1)};s.z1={labelGap:"gap"};
s.sP=t(s.z1).keys();s.B1={labelFontFamily:"fontFamily",labelFontColor:"fontColor",labelFontSize:"fontSize",labelFontStyle:"fontStyle",labelFontWeight:"fontWeight",labelHorizontalAlign:"horizontalAlign",labelMaxWidth:"maxWidth",labelTextDecoration:"textDecoration",labelTextShadowColor:"textShadowColor",labelTextShadowHorizontalLength:"textShadowHorizontalLength",labelTextShadowVerticalLength:"textShadowVerticalLength",labelTextShadowBlurRadius:"textShadowBlurRadius",labelTextShadowOpacity:"textShadowOpacity"};
s.tP=t(s.B1).keys();s.C1={thumbnailMaxWidth:"maxWidth",thumbnailMaxHeight:"maxHeight",thumbnailBorderRadius:"borderRadius",thumbnailOpacity:"opacity",thumbnailBorderSize:"borderSize",thumbnailBorderColor:"borderColor",thumbnailShadow:"shadow",thumbnailShadowHorizontalLength:"shadowHorizontalLength",thumbnailShadowVerticalLength:"shadowVerticalLength",thumbnailShadowBlurRadius:"shadowBlurRadius",thumbnailShadowSpread:"shadowSpread",thumbnailShadowColor:"shadowColor",thumbnailShadowOpacity:"shadowOpacity"};
s.uP=t(s.C1).keys();return s});
define("bB","fg,bZ,jY,ll,ck,c,fV,bh,kS,gn,do".split(","),function(a,b,c,d,f,e,g,k,i,p,j){var l=a.extend(i,function(){i.call(this);this.set("contentOpaque",n)});l.prototype.za=function(){i.prototype.za.call(this);this.f("layout",e.kq);this.f("selectedIndex",-1);this.f("items",[]);this.f("overflow",g.vm);this.f("itemHorizontalAlign",c.Mc);this.f("itemLabelFontFamily");this.f("itemLabelPosition",k.lb);this.f("itemLabelFunction");this.f("itemLabelMaxWidth");this.f("itemLabelGap");this.f("itemLabelHorizontalAlign",
c.Mc);this.f("itemSourceProperties");this.f("itemThumbnailBorderRadius");this.f("itemThumbnailScaleMode");this.f("itemThumbnailWidth");this.f("itemThumbnailHeight");this.f("itemThumbnailMaxWidth");this.f("itemThumbnailMaxHeight");this.f("itemThumbnailUrlFunction");this.f("itemTooltipFunction");this.f("itemVerticalAlign",c.tc);this.f("itemBackgroundOpacity");this.f("itemBackgroundColor");this.f("itemBackgroundColorRatios");this.f("itemBackgroundColorDirection");this.f("itemBorderRadius");this.f("itemBorderTopRadius");
this.f("itemBorderBottomRadius");this.f("itemBorderLeftRadius");this.f("itemBorderRightRadius");this.f("itemBorderTopLeftRadius");this.f("itemBorderTopRightRadius");this.f("itemBorderBottomLeftRadius");this.f("itemBorderBottomRightRadius");this.f("itemBorderSize");this.f("itemBorderLeftSize");this.f("itemBorderTopSize");this.f("itemBorderRightSize");this.f("itemBorderBottomSize");this.f("itemBorderColor");this.f("itemBorderLeftColor");this.f("itemBorderTopColor");this.f("itemBorderRightColor");this.f("itemBorderBottomColor");
this.f("itemLabelFontColor");this.f("itemLabelFontSize");this.f("itemLabelFontStyle");this.f("itemLabelFontWeight");this.f("itemLabelMaxWidth");this.f("itemLabelTextDecoration");this.f("itemLabelTextShadowColor");this.f("itemLabelTextShadowHorizontalLength");this.f("itemLabelTextShadowVerticalLength");this.f("itemLabelTextShadowBlurRadius");this.f("itemLabelTextShadowOpacity");this.f("itemOpacity");this.f("itemPaddingLeft");this.f("itemPaddingTop");this.f("itemPaddingRight");this.f("itemPaddingBottom");
this.f("itemShadow");this.f("itemThumbnailOpacity");this.f("itemThumbnailBorderSize");this.f("itemThumbnailBorderColor");this.f("itemThumbnailShadow");this.f("itemThumbnailShadowHorizontalLength");this.f("itemThumbnailShadowVerticalLength");this.f("itemThumbnailShadowBlurRadius");this.f("itemThumbnailShadowSpread");this.f("itemThumbnailShadowColor");this.f("itemThumbnailShadowOpacity");this.f("rollOverItemBackgroundOpacity");this.f("rollOverItemBackgroundColor");this.f("rollOverItemBackgroundColorRatios");
this.f("rollOverItemBackgroundColorDirection");this.f("rollOverItemBorderRadius");this.f("rollOverItemBorderTopRadius");this.f("rollOverItemBorderBottomRadius");this.f("rollOverItemBorderLeftRadius");this.f("rollOverItemBorderRightRadius");this.f("rollOverItemBorderTopLeftRadius");this.f("rollOverItemBorderTopRightRadius");this.f("rollOverItemBorderBottomLeftRadius");this.f("rollOverItemBorderBottomRightRadius");this.f("rollOverItemBorderSize");this.f("rollOverItemBorderLeftSize");this.f("rollOverItemBorderTopSize");
this.f("rollOverItemBorderRightSize");this.f("rollOverItemBorderBottomSize");this.f("rollOverItemBorderColor");this.f("rollOverItemBorderLeftColor");this.f("rollOverItemBorderTopColor");this.f("rollOverItemBorderRightColor");this.f("rollOverItemBorderBottomColor");this.f("rollOverItemLabelFontSize");this.f("rollOverItemLabelFontStyle");this.f("rollOverItemLabelFontWeight");this.f("rollOverItemLabelTextDecoration");this.f("rollOverItemLabelTextShadowColor");this.f("rollOverItemLabelTextShadowHorizontalLength");
this.f("rollOverItemLabelTextShadowVerticalLength");this.f("rollOverItemLabelTextShadowBlurRadius");this.f("rollOverItemLabelTextShadowOpacity");this.f("rollOverItemOpacity");this.f("rollOverItemPaddingLeft");this.f("rollOverItemPaddingTop");this.f("rollOverItemPaddingRight");this.f("rollOverItemPaddingBottom");this.f("rollOverItemShadow");this.f("rollOverItemThumbnailOpacity");this.f("rollOverItemThumbnailBorderSize");this.f("rollOverItemThumbnailBorderColor");this.f("rollOverItemThumbnailShadow");
this.f("rollOverItemThumbnailShadowHorizontalLength");this.f("rollOverItemThumbnailShadowVerticalLength");this.f("rollOverItemThumbnailShadowBlurRadius");this.f("rollOverItemThumbnailShadowSpread");this.f("rollOverItemThumbnailShadowColor");this.f("rollOverItemThumbnailShadowOpacity");this.f("selectedItemBackgroundOpacity");this.f("selectedItemBackgroundColor");this.f("selectedItemBackgroundColorRatios");this.f("selectedItemBackgroundColorDirection");this.f("selectedItemBorderRadius");this.f("selectedItemBorderTopRadius");
this.f("selectedItemBorderBottomRadius");this.f("selectedItemBorderLeftRadius");this.f("selectedItemBorderRightRadius");this.f("selectedItemBorderTopLeftRadius");this.f("selectedItemBorderTopRightRadius");this.f("selectedItemBorderBottomLeftRadius");this.f("selectedItemBorderBottomRightRadius");this.f("selectedItemBorderSize");this.f("selectedItemBorderLeftSize");this.f("selectedItemBorderTopSize");this.f("selectedItemBorderRightSize");this.f("selectedItemBorderBottomSize");this.f("selectedItemBorderColor");
this.f("selectedItemBorderLeftColor");this.f("selectedItemBorderTopColor");this.f("selectedItemBorderRightColor");this.f("selectedItemBorderBottomColor");this.f("selectedItemLabelFontSize");this.f("selectedItemLabelFontStyle");this.f("selectedItemLabelFontWeight");this.f("selectedItemLabelTextDecoration");this.f("selectedItemLabelTextShadowColor");this.f("selectedItemLabelTextShadowHorizontalLength");this.f("selectedItemLabelTextShadowVerticalLength");this.f("selectedItemLabelTextShadowBlurRadius");
this.f("selectedItemLabelTextShadowOpacity");this.f("selectedItemOpacity");this.f("selectedItemPaddingLeft");this.f("selectedItemPaddingTop");this.f("selectedItemPaddingRight");this.f("selectedItemPaddingBottom");this.f("selectedItemShadow");this.f("selectedItemThumbnailOpacity");this.f("selectedItemThumbnailBorderSize");this.f("selectedItemThumbnailBorderColor");this.f("selectedItemThumbnailShadow");this.f("selectedItemThumbnailShadowHorizontalLength");this.f("selectedItemThumbnailShadowVerticalLength");
this.f("selectedItemThumbnailShadowBlurRadius");this.f("selectedItemThumbnailShadowSpread");this.f("selectedItemThumbnailShadowColor");this.f("selectedItemThumbnailShadowOpacity")};l.prototype.MB=function(a){this.Ak=n;this.set("selectedIndex",this.mS(a.source))};l.prototype.mS=function(a){for(var b=this.Oa(),c=0;c<b.length;c++)if(b[c]==a)return c;return-1};l.prototype.ja=function(){this.n("layout")&&this.k("layout")!=e.kq&&this.set("layout",e.kq);var a=y;if(this.n("items")){var a=n,c=this.k("items")||
[],f=this.Oa();if(f.length<c.length){for(var g=f.length;g<c.length;g++){f=new p;f.bind(d.U,this.MB,this);this.hb(l.rA,l.wt,[f],y,y);this.hb(l.sA,l.xt,[f],y,y);this.la(f)}f=this.Oa()}if(f.length>c.length){for(g=c.length;g<f.length;g++){var k=f[g];k.unbind(d.U,this.MB,this);this.removeChild(k)}f=this.Oa()}for(g=0;g<c.length;g++)f[g].set("item",c[g]);this.q("items")}if(this.n("selectedIndex")||a){c=this.Oa();a=Math.min(c.length-1,Math.max(-1,this.k("selectedIndex")));this.set("selectedIndex",a);for(g=
0;g<c.length;g++)c[g].QF(g==a);this.q("selectedIndex");if(this.Ak){this.Ak=y;this.trigger(new b(d.aa))}}this.hb(l.rA,l.wt,this.Oa(),n,y);this.hb(l.sA,l.xt,this.Oa(),n,n);i.prototype.ja.call(this)};l.wt={layout:"listLayout",shadowHorizontalLength:"shadowHorizontalLength",shadowVerticalLength:"shadowVerticalLength",shadowBlurRadius:"shadowBlurRadius",shadowSpread:"shadowSpread",shadowOpacity:"shadowOpacity",shadowColor:"shadowColor"};l.xt={itemHorizontalAlign:"horizontalAlign",itemLabelFunction:"labelFunction",
itemLabelFontFamily:"labelFontFamily",itemLabelGap:"labelGap",itemLabelHorizontalAlign:"labelHorizontalAlign",itemLabelMaxWidth:"labelMaxWidth",itemLabelPosition:"labelPosition",itemSourceProperties:"sourceProperties",itemThumbnailBorderRadius:"thumbnailBorderRadius",itemThumbnailScaleMode:"thumbnailScaleMode",itemThumbnailHeight:"thumbnailHeight",itemThumbnailWidth:"thumbnailWidth",itemThumbnailMaxHeight:"thumbnailMaxHeight",itemThumbnailMaxWidth:"thumbnailMaxWidth",itemThumbnailUrlFunction:"thumbnailUrlFunction",
itemTooltipFunction:"tooltipFunction",itemVerticalAlign:"verticalAlign",itemBackgroundOpacity:"backgroundOpacity",itemBackgroundColor:"backgroundColor",itemBackgroundColorRatios:"backgroundColorRatios",itemBackgroundColorDirection:"backgroundColorDirection",itemBorderRadius:"borderRadius",itemBorderTopRadius:"borderTopRadius",itemBorderBottomRadius:"borderBottomRadius",itemBorderLeftRadius:"borderLeftRadius",itemBorderRightRadius:"borderRightRadius",itemBorderTopLeftRadius:"borderTopLeftRadius",itemBorderTopRightRadius:"borderTopRightRadius",
itemBorderBottomLeftRadius:"borderBottomLeftRadius",itemBorderBottomRightRadius:"borderBottomRightRadius",itemBorderSize:"borderSize",itemBorderLeftSize:"borderLeftSize",itemBorderTopSize:"borderTopSize",itemBorderRightSize:"borderRightSize",itemBorderBottomSize:"borderBottomSize",itemBorderColor:"borderColor",itemBorderLeftColor:"borderLeftColor",itemBorderTopColor:"borderTopColor",itemBorderRightColor:"borderRightColor",itemBorderBottomColor:"borderBottomColor",itemLabelFontColor:"labelFontColor",
itemLabelFontSize:"labelFontSize",itemLabelFontStyle:"labelFontStyle",itemLabelFontWeight:"labelFontWeight",itemLabelTextDecoration:"labelTextDecoration",itemLabelTextShadowColor:"labelTextShadowColor",itemLabelTextShadowHorizontalLength:"labelTextShadowHorizontalLength",itemLabelTextShadowVerticalLength:"labelTextShadowVerticalLength",itemLabelTextShadowBlurRadius:"labelTextShadowBlurRadius",itemLabelTextShadowOpacity:"labelTextShadowOpacity",itemOpacity:"opacity",itemPaddingLeft:"paddingLeft",itemPaddingTop:"paddingTop",
itemPaddingRight:"paddingRight",itemPaddingBottom:"paddingBottom",itemShadow:"shadow",itemThumbnailOpacity:"thumbnailOpacity",itemThumbnailBorderSize:"thumbnailBorderSize",itemThumbnailBorderColor:"thumbnailBorderColor",itemThumbnailShadow:"thumbnailShadow",itemThumbnailShadowHorizontalLength:"thumbnailShadowHorizontalLength",itemThumbnailShadowVerticalLength:"thumbnailShadowVerticalLength",itemThumbnailShadowBlurRadius:"thumbnailShadowBlurRadius",itemThumbnailShadowSpread:"thumbnailShadowSpread",
itemThumbnailShadowColor:"thumbnailShadowColor",itemThumbnailShadowOpacity:"thumbnailShadowOpacity",rollOverItemBackgroundOpacity:"rollOverBackgroundOpacity",rollOverItemBackgroundColor:"rollOverBackgroundColor",rollOverItemBackgroundColorRatios:"rollOverBackgroundColorRatios",rollOverItemBackgroundColorDirection:"rollOverBackgroundColorDirection",rollOverItemBorderRadius:"rollOverBorderRadius",rollOverItemBorderTopRadius:"rollOverBorderTopRadius",rollOverItemBorderBottomRadius:"rollOverBorderBottomRadius",
rollOverItemBorderLeftRadius:"rollOverBorderLeftRadius",rollOverItemBorderRightRadius:"rollOverBorderRightRadius",rollOverItemBorderTopLeftRadius:"rollOverBorderTopLeftRadius",rollOverItemBorderTopRightRadius:"rollOverBorderTopRightRadius",rollOverItemBorderBottomLeftRadius:"rollOverBorderBottomLeftRadius",rollOverItemBorderBottomRightRadius:"rollOverBorderBottomRightRadius",rollOverItemBorderSize:"rollOverBorderSize",rollOverItemBorderLeftSize:"rollOverBorderLeftSize",rollOverItemBorderTopSize:"rollOverBorderTopSize",
rollOverItemBorderRightSize:"rollOverBorderRightSize",rollOverItemBorderBottomSize:"rollOverBorderBottomSize",rollOverItemBorderColor:"rollOverBorderColor",rollOverItemBorderLeftColor:"rollOverBorderLeftColor",rollOverItemBorderTopColor:"rollOverBorderTopColor",rollOverItemBorderRightColor:"rollOverBorderRightColor",rollOverItemBorderBottomColor:"rollOverBorderBottomColor",rollOverItemLabelFontColor:"rollOverLabelFontColor",rollOverItemLabelFontSize:"rollOverLabelFontSize",rollOverItemLabelFontStyle:"rollOverLabelFontStyle",
rollOverItemLabelFontWeight:"rollOverLabelFontWeight",rollOverItemLabelTextDecoration:"rollOverLabelTextDecoration",rollOverItemLabelTextShadowColor:"rollOverLabelTextShadowColor",rollOverItemLabelTextShadowHorizontalLength:"rollOverLabelTextShadowHorizontalLength",rollOverItemLabelTextShadowVerticalLength:"rollOverLabelTextShadowVerticalLength",rollOverItemLabelTextShadowBlurRadius:"rollOverLabelTextShadowBlurRadius",rollOverItemLabelTextShadowOpacity:"rollOverLabelTextShadowOpacity",rollOverItemOpacity:"rollOverOpacity",
rollOverItemPaddingLeft:"rollOverPaddingLeft",rollOverItemPaddingTop:"rollOverPaddingTop",rollOverItemPaddingRight:"rollOverPaddingRight",rollOverItemPaddingBottom:"rollOverPaddingBottom",rollOverItemShadow:"rollOverShadow",rollOverItemThumbnailOpacity:"rollOverThumbnailOpacity",rollOverItemThumbnailBorderSize:"rollOverThumbnailBorderSize",rollOverItemThumbnailBorderColor:"rollOverThumbnailBorderColor",rollOverItemThumbnailShadow:"rollOverThumbnailShadow",rollOverItemThumbnailShadowHorizontalLength:"rollOverThumbnailShadowHorizontalLength",
rollOverItemThumbnailShadowVerticalLength:"rollOverThumbnailShadowVerticalLength",rollOverItemThumbnailShadowBlurRadius:"rollOverThumbnailShadowBlurRadius",rollOverItemThumbnailShadowSpread:"rollOverThumbnailShadowSpread",rollOverItemThumbnailShadowColor:"rollOverThumbnailShadowColor",rollOverItemThumbnailShadowOpacity:"rollOverThumbnailShadowOpacity",selectedItemBackgroundOpacity:"selectedBackgroundOpacity",selectedItemBackgroundColor:"selectedBackgroundColor",selectedItemBackgroundColorRatios:"selectedBackgroundColorRatios",
selectedItemBackgroundColorDirection:"selectedBackgroundColorDirection",selectedItemBorderRadius:"selectedBorderRadius",selectedItemBorderTopRadius:"selectedBorderTopRadius",selectedItemBorderBottomRadius:"selectedBorderBottomRadius",selectedItemBorderLeftRadius:"selectedBorderLeftRadius",selectedItemBorderRightRadius:"selectedBorderRightRadius",selectedItemBorderTopLeftRadius:"selectedBorderTopLeftRadius",selectedItemBorderTopRightRadius:"selectedBorderTopRightRadius",selectedItemBorderBottomLeftRadius:"selectedBorderBottomLeftRadius",
selectedItemBorderBottomRightRadius:"selectedBorderBottomRightRadius",selectedItemBorderSize:"selectedBorderSize",selectedItemBorderLeftSize:"selectedBorderLeftSize",selectedItemBorderTopSize:"selectedBorderTopSize",selectedItemBorderRightSize:"selectedBorderRightSize",selectedItemBorderBottomSize:"selectedBorderBottomSize",selectedItemBorderColor:"selectedBorderColor",selectedItemBorderLeftColor:"selectedBorderLeftColor",selectedItemBorderTopColor:"selectedBorderTopColor",selectedItemBorderRightColor:"selectedBorderRightColor",
selectedItemBorderBottomColor:"selectedBorderBottomColor",selectedItemLabelFontColor:"selectedLabelFontColor",selectedItemLabelFontSize:"selectedLabelFontSize",selectedItemLabelFontStyle:"selectedLabelFontStyle",selectedItemLabelFontWeight:"selectedLabelFontWeight",selectedItemLabelTextDecoration:"selectedLabelTextDecoration",selectedItemLabelTextShadowColor:"selectedLabelTextShadowColor",selectedItemLabelTextShadowHorizontalLength:"selectedLabelTextShadowHorizontalLength",selectedItemLabelTextShadowVerticalLength:"selectedLabelTextShadowVerticalLength",
selectedItemLabelTextShadowBlurRadius:"selectedLabelTextShadowBlurRadius",selectedItemLabelTextShadowOpacity:"selectedLabelTextShadowOpacity",selectedItemOpacity:"selectedOpacity",selectedItemPaddingLeft:"selectedPaddingLeft",selectedItemPaddingTop:"selectedPaddingTop",selectedItemPaddingRight:"selectedPaddingRight",selectedItemPaddingBottom:"selectedPaddingBottom",selectedItemShadow:"selectedShadow",selectedItemThumbnailOpacity:"selectedThumbnailOpacity",selectedItemThumbnailBorderSize:"selectedThumbnailBorderSize",
selectedItemThumbnailBorderColor:"selectedThumbnailBorderColor",selectedItemThumbnailShadow:"selectedThumbnailShadow",selectedItemThumbnailShadowHorizontalLength:"selectedThumbnailShadowHorizontalLength",selectedItemThumbnailShadowVerticalLength:"selectedThumbnailShadowVerticalLength",selectedItemThumbnailShadowBlurRadius:"selectedThumbnailShadowBlurRadius",selectedItemThumbnailShadowSpread:"selectedThumbnailShadowSpread",selectedItemThumbnailShadowColor:"selectedThumbnailShadowColor",selectedItemThumbnailShadowOpacity:"selectedThumbnailShadowOpacity",
toolTipBackgroundColor:"toolTipBackgroundColor",toolTipBackgroundOpacity:"toolTipBackgroundOpacity",toolTipBorderRadius:"toolTipBorderRadius",toolTipBorderColor:"toolTipBorderColor",toolTipBorderSize:"toolTipBorderSize",toolTipDisplayTime:"toolTipDisplayTime",toolTipFontFamily:"toolTipFontFamily",toolTipFontSize:"toolTipFontSize",toolTipFontColor:"toolTipFontColor",toolTipFontWeight:"toolTipFontWeight",toolTipFontStyle:"toolTipFontStyle",toolTipPaddingBottom:"toolTipPaddingBottom",toolTipPaddingLeft:"toolTipPaddingLeft",
toolTipPaddingTop:"toolTipPaddingTop",toolTipPaddingRight:"toolTipPaddingRight",toolTipShadowBlurRadius:"toolTipShadowBlurRadius",toolTipShadowColor:"toolTipShadowColor",toolTipShadowHorizontalLength:"toolTipShadowHorizontalLength",toolTipShadowOpacity:"toolTipShadowOpacity",toolTipShadowSpread:"toolTipShadowSpread",toolTipShadowVerticalLength:"toolTipShadowVerticalLength",toolTipOpacity:"toolTipOpacity",toolTipTextShadowBlurRadius:"toolTipTextShadowBlurRadius",toolTipTextShadowColor:"toolTipTextShadowColor",
toolTipTextShadowHorizontalLength:"toolTipTextShadowHorizontalLength",toolTipTextShadowOpacity:"toolTipTextShadowOpacity",toolTipTextShadowVerticalLength:"toolTipTextShadowVerticalLength"};l.rA=j(l.wt).keys();l.sA=j(l.xt).keys();return l});
define("hN","fg,ll,bB,dW,jT,dm,by,do".split(","),function(a,b,c,d,f,e,g){a=a.extend(c,function(){c.call(this);this.Wb=r;this.set("itemMode","normal");this.ol=y;this.KA=new f(this,"buttonScrollDown",e.Wc);this.KA.bind(b.U,this.dea,this);this.LA=new f(this,"buttonScrollLeft",e.Wc);this.LA.bind(b.U,this.scrollLeft,this);this.MA=new f(this,"buttonScrollRight",e.Wc);this.MA.bind(b.U,this.eea,this);this.NA=new f(this,"buttonScrollUp",e.Wc);this.NA.bind(b.U,this.fea,this);this.bind(b.aa,this.poa,this)});
d.A("ThumbnailGrid",a).B("UIComponent").K({buttonScrollDown:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonScrollUp:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",contentOpaque:"bool",gap:"number",hideScrollButtons:"bool",horizontalAlign:"enum[center, left, right]",itemMode:"enum[normal, thumbnail-only, label-only]",itemBackgroundColor:"or[array[color], color]",itemBackgroundColorDirection:"enum[horizontal, vertical]",itemBackgroundColorRatios:"array[number]",
itemBackgroundOpacity:"number",itemBorderBottomColor:"color",itemBorderBottomLeftRadius:"number",itemBorderBottomRadius:"number",itemBorderBottomRightRadius:"number",itemBorderBottomSize:"number",itemBorderColor:"color",itemBorderLeftColor:"color",itemBorderLeftRadius:"number",itemBorderLeftSize:"number",itemBorderRadius:"number",itemBorderRightColor:"color",itemBorderRightRadius:"number",itemBorderRightSize:"number",itemBorderSize:"number",itemBorderTopColor:"color",itemBorderTopLeftRadius:"number",
itemBorderTopRadius:"number",itemBorderTopRightRadius:"number",itemBorderTopSize:"number",itemHeight:"or[number, percent]",itemHorizontalAlign:"enum[center, left, right]",itemLabelFontColor:"color",itemLabelFontFamily:"string",itemLabelFontSize:"or[number, size]",itemLabelFontStyle:"enum[italic, normal]",itemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",itemLabelGap:"number",itemLabelHorizontalAlign:"enum[center, left, right]",itemLabelMaxWidth:"number",
itemLabelPosition:"enum[left, top, right, bottom]",itemLabelTextDecoration:"enum[underline, overline, line-through, none]",itemLabelTextShadowBlurRadius:"number",itemLabelTextShadowColor:"color",itemLabelTextShadowHorizontalLength:"number",itemLabelTextShadowOpacity:"number",itemLabelTextShadowVerticalLength:"number",itemMaxHeight:"number",itemMaxWidth:"number",itemMinHeight:"number",itemMinWidth:"number",itemOpacity:"number",itemPaddingBottom:"number",itemPaddingLeft:"number",itemPaddingTop:"number",
itemPaddingRight:"number",itemShadow:"bool",itemThumbnailBorderColor:"color",itemThumbnailBorderRadius:"number",itemThumbnailBorderSize:"number",itemThumbnailScaleMode:"enum[none, fill, fit_inside, fit_outside, fit_to_width, fit_to_height]",itemThumbnailHeight:"number",itemThumbnailWidth:"number",itemThumbnailMaxHeight:"number",itemThumbnailMaxWidth:"number",itemThumbnailOpacity:"number",itemThumbnailShadow:"bool",itemThumbnailShadowBlurRadius:"number",itemThumbnailShadowColor:"color",itemThumbnailShadowHorizontalLength:"number",
itemThumbnailShadowOpacity:"number",itemThumbnailShadowSpread:"number",itemThumbnailShadowVerticalLength:"number",itemWidth:"or[number, percent]",itemVerticalAlign:"enum[bottom, middle, top]",overflow:"enum[scroll, hidden, visible]",playList:"PlayList",rollOverItemBackgroundColor:"or[array[color], color]",rollOverItemBackgroundColorDirection:"enum[horizontal, vertical]",rollOverItemBackgroundColorRatios:"array[number]",rollOverItemBackgroundOpacity:"number",rollOverItemBorderBottomColor:"color",rollOverItemBorderBottomLeftRadius:"number",
rollOverItemBorderBottomRadius:"number",rollOverItemBorderBottomRightRadius:"number",rollOverItemBorderBottomSize:"number",rollOverItemBorderColor:"color",rollOverItemBorderLeftColor:"color",rollOverItemBorderLeftRadius:"number",rollOverItemBorderLeftSize:"number",rollOverItemBorderRadius:"number",rollOverItemBorderRightColor:"color",rollOverItemBorderRightRadius:"number",rollOverItemBorderRightSize:"number",rollOverItemBorderSize:"number",rollOverItemBorderTopColor:"color",rollOverItemBorderTopLeftRadius:"number",
rollOverItemBorderTopRadius:"number",rollOverItemBorderTopRightRadius:"number",rollOverItemBorderTopSize:"number",rollOverItemLabelFontColor:"color",rollOverItemLabelFontSize:"or[number, size]",rollOverItemLabelFontStyle:"enum[italic, normal]",rollOverItemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",rollOverItemLabelTextDecoration:"enum[underline, overline, line-through, none]",rollOverItemLabelTextShadowBlurRadius:"number",rollOverItemLabelTextShadowColor:"color",
rollOverItemLabelTextShadowHorizontalLength:"number",rollOverItemLabelTextShadowOpacity:"number",rollOverItemLabelTextShadowVerticalLength:"number",rollOverItemOpacity:"number",rollOverItemPaddingBottom:"number",rollOverItemPaddingLeft:"number",rollOverItemPaddingRight:"number",rollOverItemPaddingTop:"number",rollOverItemShadow:"bool",rollOverItemThumbnailBorderColor:"color",rollOverItemThumbnailBorderSize:"number",rollOverItemThumbnailOpacity:"number",rollOverItemThumbnailShadow:"bool",rollOverItemThumbnailShadowBlurRadius:"number",
rollOverItemThumbnailShadowColor:"color",rollOverItemThumbnailShadowHorizontalLength:"number",rollOverItemThumbnailShadowOpacity:"number",rollOverItemThumbnailShadowSpread:"number",rollOverItemThumbnailShadowVerticalLength:"number",scrollBarColor:"color",scrollBarWidth:"number",scrollBarMargin:"number",scrollBarHorizontalMargin:"number",scrollBarVerticalMargin:"number",scrollBarOpacity:"number",scrollBarVisible:"enum[rollOver, always]",selectedItemBackgroundColor:"or[array[color], color]",selectedItemBackgroundColorDirection:"enum[horizontal, vertical]",
selectedItemBackgroundColorRatios:"array[number]",selectedItemBackgroundOpacity:"number",selectedItemBorderBottomColor:"color",selectedItemBorderBottomLeftRadius:"number",selectedItemBorderBottomRadius:"number",selectedItemBorderBottomRightRadius:"number",selectedItemBorderBottomSize:"number",selectedItemBorderColor:"color",selectedItemBorderLeftColor:"color",selectedItemBorderLeftRadius:"number",selectedItemBorderLeftSize:"number",selectedItemBorderRadius:"number",selectedItemBorderRightRadius:"number",
selectedItemBorderRightSize:"number",selectedItemBorderSize:"number",selectedItemBorderTopLeftRadius:"number",selectedItemBorderTopRadius:"number",selectedItemBorderTopRightRadius:"number",selectedItemBorderTopSize:"number",selectedItemBorderTopColor:"color",selectedItemBorderRightColor:"color",selectedItemLabelFontColor:"color",selectedItemLabelFontSize:"or[number, size]",selectedItemLabelFontStyle:"enum[italic, normal]",selectedItemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",
selectedItemLabelTextDecoration:"enum[underline, overline, line-through, none]",selectedItemLabelTextShadowBlurRadius:"number",selectedItemLabelTextShadowColor:"color",selectedItemLabelTextShadowHorizontalLength:"number",selectedItemLabelTextShadowOpacity:"number",selectedItemLabelTextShadowVerticalLength:"number",selectedItemOpacity:"number",selectedItemPaddingBottom:"number",selectedItemPaddingLeft:"number",selectedItemPaddingTop:"number",selectedItemPaddingRight:"number",selectedItemShadow:"bool",
selectedItemThumbnailBorderSize:"number",selectedItemThumbnailBorderColor:"color",selectedItemThumbnailOpacity:"number",selectedItemThumbnailShadow:"bool",selectedItemThumbnailShadowBlurRadius:"number",selectedItemThumbnailShadowColor:"color",selectedItemThumbnailShadowHorizontalLength:"number",selectedItemThumbnailShadowOpacity:"number",selectedItemThumbnailShadowSpread:"number",selectedItemThumbnailShadowVerticalLength:"number",verticalAlign:"enum[bottom, middle, top]"}).aq(["itemLabelFontSize",
"rollOverItemLabelFontSize","selectedItemLabelFontSize"]).Vb([b.aa]);a.prototype.Bi=function(){c.prototype.Bi.call(this);this.sv()};a.prototype.yp=function(){c.prototype.yp.call(this);this.sv()};a.prototype.sv=function(){this.KA.set("visible",!this.ol||this.lH());this.NA.set("visible",!this.ol||this.oH());this.LA.set("visible",!this.ol||this.mH());this.MA.set("visible",!this.ol||this.nH())};a.prototype.set=function(a,b){if(a=="itemMode")switch(b){case "thumbnail-only":this.set("itemLabelFunction",
this.Lo);this.set("itemThumbnailUrlFunction",this.OB);this.set("itemTooltipFunction",this.qu);this.set("itemSourceProperties",["label","media.label","media.thumbnailUrl","media.flipImageHorizontally"]);break;case "label-only":this.set("itemLabelFunction",this.qu);this.set("itemThumbnailUrlFunction",this.Lo);this.set("itemTooltipFunction",this.Lo);this.set("itemSourceProperties",["label","media.label"]);break;default:this.set("itemLabelFunction",this.qu);this.set("itemThumbnailUrlFunction",this.OB);
this.set("itemTooltipFunction",this.Lo);this.set("itemSourceProperties",["label","media.label","media.thumbnailUrl","media.flipImageHorizontally"])}else if(a=="playList"){this.Wb&&this.Wb.unbind("change",this.$o,this);if(this.Wb=b){this.set("items",this.Wb.get("items"));this.set("selectedIndex",this.Wb.get("selectedIndex"));this.Wb.bind("change",this.$o,this,n)}else this.set("items",[])}else if(a=="hideScrollButtons"){this.ol=b;this.sv()}else c.prototype.set.call(this,a,b)};a.prototype.get=function(a,
b){switch(a){case "playList":return this.Wb;default:return c.prototype.get.call(this,a,b)}};a.prototype.$o=function(){this.set("items",this.Wb.get("items"));this.set("selectedIndex",this.Wb.get("selectedIndex"))};a.prototype.poa=function(){this.Wb&&this.Wb.set("selectedIndex",this.get("selectedIndex"))};a.prototype.Lo=C();a.prototype.qu=function(a){return a.get("label")||a.get("media").get("label")};a.prototype.OB=function(a){var a=a.get("media"),b=a.get("thumbnailUrl");a.get("flipImageHorizontally")&&
(b=g.bba(b));return b};return a});
define("ie","require,fg,u,ll,jY,ck,R,c,bh,jn,fm,kS,jF,gP,do".split(","),function(a){var b=a("fg"),c=a("u"),d=a("ll"),f=a("jY"),e=a("ck"),g=a("R"),k=a("c"),i=a("bh"),p=a("jn"),j=a("fm"),l=a("kS"),q=a("jF"),o=a("gP"),t=a("do"),s=b.extend(l,function(){l.call(this);this.sa=this.$c=r;this.Mt=[];this.set("autoRolledOver",n);this.set("childrenInteractionEnabled",y);this.set("contentOpaque",n);this.set("creationPolicy",e.pt);this.set("cursor",g.me)});s.prototype.za=function(){l.prototype.za.call(this);this.f("listLayout");
this.f("overflow","hidden");this.f("item");this.f("thumbnailUrlFunction",this.lR);this.f("sourceProperties");this.f("labelFunction",this.jR);this.f("labelFontFamily");this.f("labelFontColor");this.f("labelFontSize");this.f("labelFontStyle");this.f("labelFontWeight");this.f("labelGap");this.f("labelHorizontalAlign");this.f("labelPosition");this.f("labelTextDecoration");this.f("labelTextShadowColor");this.f("labelTextShadowHorizontalLength");this.f("labelTextShadowVerticalLength");this.f("labelTextShadowBlurRadius");
this.f("labelTextShadowOpacity");this.f("thumbnailBorderRadius");this.f("thumbnailOpacity");this.f("thumbnailBorderSize");this.f("thumbnailBorderColor");this.f("thumbnailWidth");this.f("thumbnailHeight");this.f("thumbnailMaxWidth");this.f("thumbnailMaxHeight");this.f("thumbnailShadow");this.f("thumbnailShadowHorizontalLength");this.f("thumbnailShadowVerticalLength");this.f("thumbnailShadowBlurRadius");this.f("thumbnailShadowSpread");this.f("thumbnailShadowColor");this.f("thumbnailShadowOpacity");
this.h("rollOverBackgroundOpacity",j.u,"backgroundOpacity");this.h("rollOverBackgroundColor",j.u,"backgroundColor");this.h("rollOverBackgroundColorRatios",j.u,"backgroundColorRatios");this.h("rollOverBackgroundColorDirection",j.u,"backgroundColorDirection");this.h("rollOverBorderRadius",j.u,"borderRadius");this.h("rollOverBorderTopRadius",j.u,"borderTopRadius");this.h("rollOverBorderBottomRadius",j.u,"borderBottomRadius");this.h("rollOverBorderLeftRadius",j.u,"borderLeftRadius");this.h("rollOverBorderRightRadius",
j.u,"borderRightRadius");this.h("rollOverBorderTopLeftRadius",j.u,"borderTopLeftRadius");this.h("rollOverBorderTopRightRadius",j.u,"borderTopRightRadius");this.h("rollOverBorderBottomLeftRadius",j.u,"borderBottomLeftRadius");this.h("rollOverBorderBottomRightRadius",j.u,"borderBottomRightRadius");this.h("rollOverBorderSize",j.u,"borderSize");this.h("rollOverBorderLeftSize",j.u,"borderLeftSize");this.h("rollOverBorderTopSize",j.u,"borderTopSize");this.h("rollOverBorderRightSize",j.u,"borderRightSize");
this.h("rollOverBorderBottomSize",j.u,"borderBottomSize");this.h("rollOverBorderColor",j.u,"borderColor");this.h("rollOverBorderLeftColor",j.u,"borderLeftColor");this.h("rollOverBorderTopColor",j.u,"borderTopColor");this.h("rollOverBorderRightColor",j.u,"borderRightColor");this.h("rollOverBorderBottomColor",j.u,"borderBottomColor");this.h("rollOverLabelFontColor",j.u,"labelFontColor");this.h("rollOverLabelFontSize",j.u,"labelFontSize");this.h("rollOverLabelFontStyle",j.u,"labelFontStyle");this.h("rollOverLabelFontWeight",
j.u,"labelFontWeight");this.h("rollOverLabelTextDecoration",j.u,"labelTextDecoration");this.h("rollOverLabelTextShadowColor",j.u,"labelTextShadowColor");this.h("rollOverLabelTextShadowHorizontalLength",j.u,"labelTextShadowHorizontalLength");this.h("rollOverLabelTextShadowVerticalLength",j.u,"labelTextShadowVerticalLength");this.h("rollOverLabelTextShadowBlurRadius",j.u,"labelTextShadowBlurRadius");this.h("rollOverLabelTextShadowOpacity",j.u,"labelTextShadowOpacity");this.h("rollOverOpacity",j.u,"opacity");
this.h("rollOverPaddingLeft",j.u,"paddingLeft");this.h("rollOverPaddingTop",j.u,"paddingTop");this.h("rollOverPaddingRight",j.u,"paddingRight");this.h("rollOverPaddingBottom",j.u,"paddingBottom");this.h("rollOverShadow",j.u,"shadow");this.h("rollOverThumbnailOpacity",j.u,"thumbnailOpacity");this.h("rollOverThumbnailBorderSize",j.u,"thumbnailBorderSize");this.h("rollOverThumbnailBorderColor",j.u,"thumbnailBorderColor");this.h("rollOverThumbnailShadow",j.u,"thumbnailShadow");this.h("rollOverThumbnailShadowHorizontalLength",
j.u,"thumbnailShadowHorizontalLength");this.h("rollOverThumbnailShadowVerticalLength",j.u,"thumbnailShadowVerticalLength");this.h("rollOverThumbnailShadowBlurRadius",j.u,"thumbnailShadowBlurRadius");this.h("rollOverThumbnailShadowSpread",j.u,"thumbnailShadowSpread");this.h("rollOverThumbnailShadowColor",j.u,"thumbnailShadowColor");this.h("rollOverThumbnailShadowOpacity",j.u,"thumbnailShadowOpacity");this.h("selectedBackgroundOpacity",j.G,"backgroundOpacity");this.h("selectedBackgroundColor",j.G,"backgroundColor");
this.h("selectedBackgroundColorRatios",j.G,"backgroundColorRatios");this.h("selectedBackgroundColorDirection",j.G,"backgroundColorDirection");this.h("selectedBorderRadius",j.G,"borderRadius");this.h("selectedBorderTopRadius",j.G,"borderTopRadius");this.h("selectedBorderBottomRadius",j.G,"borderBottomRadius");this.h("selectedBorderLeftRadius",j.G,"borderLeftRadius");this.h("selectedBorderRightRadius",j.G,"borderRightRadius");this.h("selectedBorderTopLeftRadius",j.G,"borderTopLeftRadius");this.h("selectedBorderTopRightRadius",
j.G,"borderTopRightRadius");this.h("selectedBorderBottomLeftRadius",j.G,"borderBottomLeftRadius");this.h("selectedBorderBottomRightRadius",j.G,"borderBottomRightRadius");this.h("selectedBorderSize",j.G,"borderSize");this.h("selectedBorderLeftSize",j.G,"borderLeftSize");this.h("selectedBorderTopSize",j.G,"borderTopSize");this.h("selectedBorderRightSize",j.G,"borderRightSize");this.h("selectedBorderBottomSize",j.G,"borderBottomSize");this.h("selectedBorderColor",j.G,"borderColor");this.h("selectedBorderLeftColor",
j.G,"borderLeftColor");this.h("selectedBorderTopColor",j.G,"borderTopColor");this.h("selectedBorderRightColor",j.G,"borderRightColor");this.h("selectedBorderBottomColor",j.G,"borderBottomColor");this.h("selectedLabelFontColor",j.G,"labelFontColor");this.h("selectedLabelFontSize",j.G,"labelFontSize");this.h("selectedLabelFontStyle",j.G,"labelFontStyle");this.h("selectedLabelFontWeight",j.G,"labelFontWeight");this.h("selectedLabelTextDecoration",j.G,"labelTextDecoration");this.h("selectedLabelTextShadowColor",
j.G,"labelTextShadowColor");this.h("selectedLabelTextShadowHorizontalLength",j.G,"labelTextShadowHorizontalLength");this.h("selectedLabelTextShadowVerticalLength",j.G,"labelTextShadowVerticalLength");this.h("selectedLabelTextShadowBlurRadius",j.G,"labelTextShadowBlurRadius");this.h("selectedLabelTextShadowOpacity",j.G,"labelTextShadowOpacity");this.h("selectedOpacity",j.G,"opacity");this.h("selectedPaddingLeft",j.G,"paddingLeft");this.h("selectedPaddingTop",j.G,"paddingTop");this.h("selectedPaddingRight",
j.G,"paddingRight");this.h("selectedPaddingBottom",j.G,"paddingBottom");this.h("selectedShadow",j.G,"shadow");this.h("selectedThumbnailOpacity",j.G,"thumbnailOpacity");this.h("selectedThumbnailBorderSize",j.G,"thumbnailBorderSize");this.h("selectedThumbnailBorderColor",j.G,"thumbnailBorderColor");this.h("selectedThumbnailShadow",j.G,"thumbnailShadow");this.h("selectedThumbnailShadowHorizontalLength",j.G,"thumbnailShadowHorizontalLength");this.h("selectedThumbnailShadowVerticalLength",j.G,"thumbnailShadowVerticalLength");
this.h("selectedThumbnailShadowBlurRadius",j.G,"thumbnailShadowBlurRadius");this.h("selectedThumbnailShadowSpread",j.G,"thumbnailShadowSpread");this.h("selectedThumbnailShadowColor",j.G,"thumbnailShadowColor");this.h("selectedThumbnailShadowOpacity",j.G,"thumbnailShadowOpacity")};s.prototype.QF=function(a){this.zD(a)};s.prototype.Fa=function(){l.prototype.Fa.call(this);if(!this.$c){this.$c=new q;this.la(this.$c);this.$c.set("horizontalAlign",f.Mc);this.$c.set("verticalAlign",f.tc);this.$c.bind(d.T,
this.vW,this)}if(!this.sa){this.sa=new o;this.la(this.sa)}};s.prototype.lR=function(a){if(t(a).isString())return a;if(a&&a.i_)return a.i_};s.prototype.jR=function(a){if(a&&a.label)return a.label};s.prototype.ja=function(){if(this.n("sourceProperties")||this.n("item")){for(;this.Mt.length;)this.Mt.pop().unwatch();var a=this.k("sourceProperties"),b=this.k("item");a&&b&&a.forEach(function(a){this.Mt.push(c.watch(b,a,this.oU,this,n))}.bind(this))}if(this.n("sourceProperties")||this.n("item")||this.n("tooltipFunction")){b=
this.k("item");a=this.k("tooltipFunction")(b);this.set("toolTip",a)}if(this.n("sourceProperties")||this.n("item")||this.n("thumbnailUrlFunction")){b=this.k("item");(a=this.k("thumbnailUrlFunction")(b))?this.$c.get("url")!=a&&this.$c.M({url:a,visible:n,opacity:0.5}):this.$c.M({url:m,visible:y});this.q("thumbnailUrlFunction")}if(this.n("sourceProperties")||this.n("item")||this.n("labelFunction")){b=this.k("item");a=this.k("labelFunction")(b);this.sa.M({text:a,visible:a?n:y});this.q("labelFunction")}this.q("sourceProperties");
this.q("item");if(this.n("listLayout"))switch(this.k("listLayout")){case k.kf:this.M({width:"100%",height:m});break;default:this.M({height:"100%",width:m})}if(this.n("labelPosition")||this.n("listLayout")||this.n("thumbnailWidth")||this.n("thumbnailHeight")){var d=this,a=function(a,b){var c=d.k(a);c===m&&(c=b);return c};switch(this.k("labelPosition")){case i.qa:case i.Ma:this.set("layout",k.Be);this.sa.set("width","100%");switch(this.k("listLayout")){case k.kf:this.$c.M({height:a("thumbnailHeight"),
width:a("thumbnailWidth"),scaleMode:a("thumbnailScaleMode",p.ih)});break;default:this.$c.M({height:a("thumbnailHeight","100%"),width:a("thumbnailWidth"),scaleMode:a("thumbnailScaleMode",p.ih)})}break;default:this.set("layout",k.kf);this.sa.set("width",m);switch(this.k("listLayout")){case k.kf:this.$c.M({height:a("thumbnailHeight"),width:a("thumbnailWidth","100%"),scaleMode:a("thumbnailScaleMode",p.Wk)});break;default:this.$c.M({height:a("thumbnailHeight","100%"),width:a("thumbnailWidth"),scaleMode:a("thumbnailScaleMode",
p.ih)})}}switch(this.k("labelPosition")){case i.qa:case i.mb:this.Fj(this.sa,0);break;default:this.Fj(this.sa,1)}this.q("labelPosition")}this.q("listLayout");this.hb(s.sP,s.Sw,[this],n,n);this.hb(s.uP,s.Sw,[this.$c],n,n);this.hb(s.tP,s.Sw,[this.sa],n,n);l.prototype.ja.call(this)};s.prototype.oU=function(){this.gv("item")};s.prototype.ev=function(a){l.prototype.ev.call(this,a)};s.prototype.vW=function(){this.$c.set("opacity",1)};s.sP=["labelGap"];s.uP=["thumbnailBorderColor","thumbnailBorderRadius",
"thumbnailBorderSize","thumbnailMaxWidth","thumbnailMaxHeight","thumbnailOpacity","thumbnailShadow","thumbnailShadowHorizontalLength","thumbnailShadowVerticalLength","thumbnailShadowBlurRadius","thumbnailShadowSpread","thumbnailShadowColor","thumbnailShadowOpacity"];s.tP=["labelFontFamily","labelFontColor","labelFontSize","labelFontStyle","labelFontWeight","labelHorizontalAlign","labelTextDecoration","labelTextShadowColor","labelTextShadowHorizontalLength","labelTextShadowVerticalLength","labelTextShadowBlurRadius",
"labelTextShadowOpacity"];s.Sw={labelFontFamily:"fontFamily",labelFontColor:"fontColor",labelFontSize:"fontSize",labelFontStyle:"fontStyle",labelFontWeight:"fontWeight",labelGap:"gap",labelHorizontalAlign:"horizontalAlign",labelTextDecoration:"textDecoration",labelTextShadowColor:"textShadowColor",labelTextShadowHorizontalLength:"textShadowHorizontalLength",labelTextShadowVerticalLength:"textShadowVerticalLength",labelTextShadowBlurRadius:"textShadowBlurRadius",labelTextShadowOpacity:"textShadowOpacity",
thumbnailMaxWidth:"maxWidth",thumbnailMaxHeight:"maxHeight",thumbnailBorderRadius:"borderRadius",thumbnailOpacity:"opacity",thumbnailBorderSize:"borderSize",thumbnailBorderColor:"borderColor",thumbnailShadow:"shadow",thumbnailShadowHorizontalLength:"shadowHorizontalLength",thumbnailShadowVerticalLength:"shadowVerticalLength",thumbnailShadowBlurRadius:"shadowBlurRadius",thumbnailShadowSpread:"shadowSpread",thumbnailShadowColor:"shadowColor",thumbnailShadowOpacity:"shadowOpacity"};return s});
define("D","require,fg,bZ,jY,ll,c,fV,bh,kS,ie,do".split(","),function(a){var b=a("fg"),c=a("bZ"),d=a("jY"),f=a("ll"),e=a("c"),g=a("fV"),k=a("bh"),i=a("kS"),p=a("ie"),a=a("do"),j=b.extend(i,function(){i.call(this);this.set("contentOpaque",n);this.bind(f.D("selectedIndex"),this.Tpa,this);this.bind(f.vb,this.Zra,this)});j.prototype.za=function(){i.prototype.za.call(this);this.f("layout",e.Be);this.f("selectedIndex",-1);this.f("items",[]);this.f("overflow",g.vm);this.f("itemHorizontalAlign",d.Mc);this.f("itemLabelFontFamily");
this.f("itemLabelPosition",k.lb);this.f("itemLabelFunction");this.f("itemLabelGap");this.f("itemLabelHorizontalAlign",d.Mc);this.f("itemThumbnailBorderRadius");this.f("itemThumbnailScaleMode");this.f("itemThumbnailWidth");this.f("itemThumbnailHeight");this.f("itemThumbnailMaxWidth");this.f("itemThumbnailMaxHeight");this.f("itemThumbnailUrlFunction");this.f("itemTooltipFunction");this.f("itemSourceProperties");this.f("itemVerticalAlign",d.tc);this.f("itemBackgroundOpacity");this.f("itemBackgroundColor");
this.f("itemBackgroundColorRatios");this.f("itemBackgroundColorDirection");this.f("itemBorderRadius");this.f("itemBorderTopRadius");this.f("itemBorderBottomRadius");this.f("itemBorderLeftRadius");this.f("itemBorderRightRadius");this.f("itemBorderTopLeftRadius");this.f("itemBorderTopRightRadius");this.f("itemBorderBottomLeftRadius");this.f("itemBorderBottomRightRadius");this.f("itemBorderSize");this.f("itemBorderLeftSize");this.f("itemBorderTopSize");this.f("itemBorderRightSize");this.f("itemBorderBottomSize");
this.f("itemBorderColor");this.f("itemBorderLeftColor");this.f("itemBorderTopColor");this.f("itemBorderRightColor");this.f("itemBorderBottomColor");this.f("itemLabelFontColor");this.f("itemLabelFontSize");this.f("itemLabelFontStyle");this.f("itemLabelFontWeight");this.f("itemLabelTextDecoration");this.f("itemLabelTextShadowColor");this.f("itemLabelTextShadowHorizontalLength");this.f("itemLabelTextShadowVerticalLength");this.f("itemLabelTextShadowBlurRadius");this.f("itemLabelTextShadowOpacity");this.f("itemOpacity");
this.f("itemPaddingLeft");this.f("itemPaddingTop");this.f("itemPaddingRight");this.f("itemPaddingBottom");this.f("itemShadow");this.f("itemThumbnailOpacity");this.f("itemThumbnailBorderSize");this.f("itemThumbnailBorderColor");this.f("itemThumbnailShadow");this.f("itemThumbnailShadowHorizontalLength");this.f("itemThumbnailShadowVerticalLength");this.f("itemThumbnailShadowBlurRadius");this.f("itemThumbnailShadowSpread");this.f("itemThumbnailShadowColor");this.f("itemThumbnailShadowOpacity");this.f("rollOverItemBackgroundOpacity");
this.f("rollOverItemBackgroundColor");this.f("rollOverItemBackgroundColorRatios");this.f("rollOverItemBackgroundColorDirection");this.f("rollOverItemBorderRadius");this.f("rollOverItemBorderTopRadius");this.f("rollOverItemBorderBottomRadius");this.f("rollOverItemBorderLeftRadius");this.f("rollOverItemBorderRightRadius");this.f("rollOverItemBorderTopLeftRadius");this.f("rollOverItemBorderTopRightRadius");this.f("rollOverItemBorderBottomLeftRadius");this.f("rollOverItemBorderBottomRightRadius");this.f("rollOverItemBorderSize");
this.f("rollOverItemBorderLeftSize");this.f("rollOverItemBorderTopSize");this.f("rollOverItemBorderRightSize");this.f("rollOverItemBorderBottomSize");this.f("rollOverItemBorderColor");this.f("rollOverItemBorderLeftColor");this.f("rollOverItemBorderTopColor");this.f("rollOverItemBorderRightColor");this.f("rollOverItemBorderBottomColor");this.f("rollOverItemLabelFontSize");this.f("rollOverItemLabelFontStyle");this.f("rollOverItemLabelFontWeight");this.f("rollOverItemLabelTextDecoration");this.f("rollOverItemLabelTextShadowColor");
this.f("rollOverItemLabelTextShadowHorizontalLength");this.f("rollOverItemLabelTextShadowVerticalLength");this.f("rollOverItemLabelTextShadowBlurRadius");this.f("rollOverItemLabelTextShadowOpacity");this.f("rollOverItemOpacity");this.f("rollOverItemPaddingLeft");this.f("rollOverItemPaddingTop");this.f("rollOverItemPaddingRight");this.f("rollOverItemPaddingBottom");this.f("rollOverItemShadow");this.f("rollOverItemThumbnailOpacity");this.f("rollOverItemThumbnailBorderSize");this.f("rollOverItemThumbnailBorderColor");
this.f("rollOverItemThumbnailShadow");this.f("rollOverItemThumbnailShadowHorizontalLength");this.f("rollOverItemThumbnailShadowVerticalLength");this.f("rollOverItemThumbnailShadowBlurRadius");this.f("rollOverItemThumbnailShadowSpread");this.f("rollOverItemThumbnailShadowColor");this.f("rollOverItemThumbnailShadowOpacity");this.f("selectedItemBackgroundOpacity");this.f("selectedItemBackgroundColor");this.f("selectedItemBackgroundColorRatios");this.f("selectedItemBackgroundColorDirection");this.f("selectedItemBorderRadius");
this.f("selectedItemBorderTopRadius");this.f("selectedItemBorderBottomRadius");this.f("selectedItemBorderLeftRadius");this.f("selectedItemBorderRightRadius");this.f("selectedItemBorderTopLeftRadius");this.f("selectedItemBorderTopRightRadius");this.f("selectedItemBorderBottomLeftRadius");this.f("selectedItemBorderBottomRightRadius");this.f("selectedItemBorderSize");this.f("selectedItemBorderLeftSize");this.f("selectedItemBorderTopSize");this.f("selectedItemBorderRightSize");this.f("selectedItemBorderBottomSize");
this.f("selectedItemBorderColor");this.f("selectedItemBorderLeftColor");this.f("selectedItemBorderTopColor");this.f("selectedItemBorderRightColor");this.f("selectedItemBorderBottomColor");this.f("selectedItemLabelFontSize");this.f("selectedItemLabelFontStyle");this.f("selectedItemLabelFontWeight");this.f("selectedItemLabelTextDecoration");this.f("selectedItemLabelTextShadowColor");this.f("selectedItemLabelTextShadowHorizontalLength");this.f("selectedItemLabelTextShadowVerticalLength");this.f("selectedItemLabelTextShadowBlurRadius");
this.f("selectedItemLabelTextShadowOpacity");this.f("selectedItemOpacity");this.f("selectedItemPaddingLeft");this.f("selectedItemPaddingTop");this.f("selectedItemPaddingRight");this.f("selectedItemPaddingBottom");this.f("selectedItemShadow");this.f("selectedItemThumbnailOpacity");this.f("selectedItemThumbnailBorderSize");this.f("selectedItemThumbnailBorderColor");this.f("selectedItemThumbnailShadow");this.f("selectedItemThumbnailShadowHorizontalLength");this.f("selectedItemThumbnailShadowVerticalLength");
this.f("selectedItemThumbnailShadowBlurRadius");this.f("selectedItemThumbnailShadowSpread");this.f("selectedItemThumbnailShadowColor");this.f("selectedItemThumbnailShadowOpacity")};j.prototype.MB=function(a){this.Ak=n;this.set("selectedIndex",this.mS(a.source))};j.prototype.Tpa=function(){this.r9()};j.prototype.Zra=function(){this.r9()};j.prototype.r9=function(){var a=this.get("selectedIndex"),b=this.Oa();a>=0&&a<b.length&&this.scrollIntoView(b[a])};j.prototype.mS=function(a){for(var b=this.Oa(),
c=0;c<b.length;c++)if(b[c]==a)return c;return-1};j.prototype.ja=function(){if(this.n("layout")){var a=this.k("layout");a!=e.kf&&a!=e.Be&&this.set("layout",e.Be)}var b=y;if(this.n("items")){var b=n,a=this.k("items")||[],d=this.Oa();if(d.length<a.length){for(var g=d.length;g<a.length;g++){d=new p;d.bind(f.U,this.MB,this);this.hb(j.rA,j.wt,[d],y,y);this.hb(j.sA,j.xt,[d],y,y);this.la(d)}d=this.Oa()}if(d.length>a.length){for(g=a.length;g<d.length;g++){var k=d[g];k.unbind(f.U,this.MB,this);this.removeChild(k)}d=
this.Oa()}for(g=0;g<a.length;g++)d[g].set("item",a[g]);this.q("items")}if(this.n("selectedIndex")||b){a=this.Oa();b=Math.min(a.length-1,Math.max(-1,this.k("selectedIndex")));this.set("selectedIndex",b);for(g=0;g<a.length;g++)a[g].QF(g==b);this.q("selectedIndex");if(this.Ak){this.Ak=y;this.trigger(new c(f.aa))}}this.hb(j.rA,j.wt,this.Oa(),n,y);this.hb(j.sA,j.xt,this.Oa(),n,n);i.prototype.ja.call(this)};j.wt={layout:"listLayout",shadowHorizontalLength:"shadowHorizontalLength",shadowVerticalLength:"shadowVerticalLength",
shadowBlurRadius:"shadowBlurRadius",shadowSpread:"shadowSpread",shadowOpacity:"shadowOpacity",shadowColor:"shadowColor"};j.xt={itemHorizontalAlign:"horizontalAlign",itemLabelFunction:"labelFunction",itemLabelFontFamily:"labelFontFamily",itemLabelGap:"labelGap",itemLabelHorizontalAlign:"labelHorizontalAlign",itemLabelPosition:"labelPosition",itemSourceProperties:"sourceProperties",itemThumbnailBorderRadius:"thumbnailBorderRadius",itemThumbnailScaleMode:"thumbnailScaleMode",itemThumbnailHeight:"thumbnailHeight",
itemThumbnailWidth:"thumbnailWidth",itemThumbnailMaxHeight:"thumbnailMaxHeight",itemThumbnailMaxWidth:"thumbnailMaxWidth",itemThumbnailUrlFunction:"thumbnailUrlFunction",itemTooltipFunction:"tooltipFunction",itemVerticalAlign:"verticalAlign",itemBackgroundOpacity:"backgroundOpacity",itemBackgroundColor:"backgroundColor",itemBackgroundColorRatios:"backgroundColorRatios",itemBackgroundColorDirection:"backgroundColorDirection",itemBorderRadius:"borderRadius",itemBorderTopRadius:"borderTopRadius",itemBorderBottomRadius:"borderBottomRadius",
itemBorderLeftRadius:"borderLeftRadius",itemBorderRightRadius:"borderRightRadius",itemBorderTopLeftRadius:"borderTopLeftRadius",itemBorderTopRightRadius:"borderTopRightRadius",itemBorderBottomLeftRadius:"borderBottomLeftRadius",itemBorderBottomRightRadius:"borderBottomRightRadius",itemBorderSize:"borderSize",itemBorderLeftSize:"borderLeftSize",itemBorderTopSize:"borderTopSize",itemBorderRightSize:"borderRightSize",itemBorderBottomSize:"borderBottomSize",itemBorderColor:"borderColor",itemBorderLeftColor:"borderLeftColor",
itemBorderTopColor:"borderTopColor",itemBorderRightColor:"borderRightColor",itemBorderBottomColor:"borderBottomColor",itemLabelFontColor:"labelFontColor",itemLabelFontSize:"labelFontSize",itemLabelFontStyle:"labelFontStyle",itemLabelFontWeight:"labelFontWeight",itemLabelTextDecoration:"labelTextDecoration",itemLabelTextShadowColor:"labelTextShadowColor",itemLabelTextShadowHorizontalLength:"labelTextShadowHorizontalLength",itemLabelTextShadowVerticalLength:"labelTextShadowVerticalLength",itemLabelTextShadowBlurRadius:"labelTextShadowBlurRadius",
itemLabelTextShadowOpacity:"labelTextShadowOpacity",itemOpacity:"opacity",itemPaddingLeft:"paddingLeft",itemPaddingTop:"paddingTop",itemPaddingRight:"paddingRight",itemPaddingBottom:"paddingBottom",itemShadow:"shadow",itemThumbnailOpacity:"thumbnailOpacity",itemThumbnailBorderSize:"thumbnailBorderSize",itemThumbnailBorderColor:"thumbnailBorderColor",itemThumbnailShadow:"thumbnailShadow",itemThumbnailShadowHorizontalLength:"thumbnailShadowHorizontalLength",itemThumbnailShadowVerticalLength:"thumbnailShadowVerticalLength",
itemThumbnailShadowBlurRadius:"thumbnailShadowBlurRadius",itemThumbnailShadowSpread:"thumbnailShadowSpread",itemThumbnailShadowColor:"thumbnailShadowColor",itemThumbnailShadowOpacity:"thumbnailShadowOpacity",rollOverItemBackgroundOpacity:"rollOverBackgroundOpacity",rollOverItemBackgroundColor:"rollOverBackgroundColor",rollOverItemBackgroundColorRatios:"rollOverBackgroundColorRatios",rollOverItemBackgroundColorDirection:"rollOverBackgroundColorDirection",rollOverItemBorderRadius:"rollOverBorderRadius",
rollOverItemBorderTopRadius:"rollOverBorderTopRadius",rollOverItemBorderBottomRadius:"rollOverBorderBottomRadius",rollOverItemBorderLeftRadius:"rollOverBorderLeftRadius",rollOverItemBorderRightRadius:"rollOverBorderRightRadius",rollOverItemBorderTopLeftRadius:"rollOverBorderTopLeftRadius",rollOverItemBorderTopRightRadius:"rollOverBorderTopRightRadius",rollOverItemBorderBottomLeftRadius:"rollOverBorderBottomLeftRadius",rollOverItemBorderBottomRightRadius:"rollOverBorderBottomRightRadius",rollOverItemBorderSize:"rollOverBorderSize",
rollOverItemBorderLeftSize:"rollOverBorderLeftSize",rollOverItemBorderTopSize:"rollOverBorderTopSize",rollOverItemBorderRightSize:"rollOverBorderRightSize",rollOverItemBorderBottomSize:"rollOverBorderBottomSize",rollOverItemBorderColor:"rollOverBorderColor",rollOverItemBorderLeftColor:"rollOverBorderLeftColor",rollOverItemBorderTopColor:"rollOverBorderTopColor",rollOverItemBorderRightColor:"rollOverBorderRightColor",rollOverItemBorderBottomColor:"rollOverBorderBottomColor",rollOverItemLabelFontColor:"rollOverLabelFontColor",
rollOverItemLabelFontSize:"rollOverLabelFontSize",rollOverItemLabelFontStyle:"rollOverLabelFontStyle",rollOverItemLabelFontWeight:"rollOverLabelFontWeight",rollOverItemLabelTextDecoration:"rollOverLabelTextDecoration",rollOverItemLabelTextShadowColor:"rollOverLabelTextShadowColor",rollOverItemLabelTextShadowHorizontalLength:"rollOverLabelTextShadowHorizontalLength",rollOverItemLabelTextShadowVerticalLength:"rollOverLabelTextShadowVerticalLength",rollOverItemLabelTextShadowBlurRadius:"rollOverLabelTextShadowBlurRadius",
rollOverItemLabelTextShadowOpacity:"rollOverLabelTextShadowOpacity",rollOverItemOpacity:"rollOverOpacity",rollOverItemPaddingLeft:"rollOverPaddingLeft",rollOverItemPaddingTop:"rollOverPaddingTop",rollOverItemPaddingRight:"rollOverPaddingRight",rollOverItemPaddingBottom:"rollOverPaddingBottom",rollOverItemShadow:"rollOverShadow",rollOverItemThumbnailOpacity:"rollOverThumbnailOpacity",rollOverItemThumbnailBorderSize:"rollOverThumbnailBorderSize",rollOverItemThumbnailBorderColor:"rollOverThumbnailBorderColor",
rollOverItemThumbnailShadow:"rollOverThumbnailShadow",rollOverItemThumbnailShadowHorizontalLength:"rollOverThumbnailShadowHorizontalLength",rollOverItemThumbnailShadowVerticalLength:"rollOverThumbnailShadowVerticalLength",rollOverItemThumbnailShadowBlurRadius:"rollOverThumbnailShadowBlurRadius",rollOverItemThumbnailShadowSpread:"rollOverThumbnailShadowSpread",rollOverItemThumbnailShadowColor:"rollOverThumbnailShadowColor",rollOverItemThumbnailShadowOpacity:"rollOverThumbnailShadowOpacity",selectedItemBackgroundOpacity:"selectedBackgroundOpacity",
selectedItemBackgroundColor:"selectedBackgroundColor",selectedItemBackgroundColorRatios:"selectedBackgroundColorRatios",selectedItemBackgroundColorDirection:"selectedBackgroundColorDirection",selectedItemBorderRadius:"selectedBorderRadius",selectedItemBorderTopRadius:"selectedBorderTopRadius",selectedItemBorderBottomRadius:"selectedBorderBottomRadius",selectedItemBorderLeftRadius:"selectedBorderLeftRadius",selectedItemBorderRightRadius:"selectedBorderRightRadius",selectedItemBorderTopLeftRadius:"selectedBorderTopLeftRadius",
selectedItemBorderTopRightRadius:"selectedBorderTopRightRadius",selectedItemBorderBottomLeftRadius:"selectedBorderBottomLeftRadius",selectedItemBorderBottomRightRadius:"selectedBorderBottomRightRadius",selectedItemBorderSize:"selectedBorderSize",selectedItemBorderLeftSize:"selectedBorderLeftSize",selectedItemBorderTopSize:"selectedBorderTopSize",selectedItemBorderRightSize:"selectedBorderRightSize",selectedItemBorderBottomSize:"selectedBorderBottomSize",selectedItemBorderColor:"selectedBorderColor",
selectedItemBorderLeftColor:"selectedBorderLeftColor",selectedItemBorderTopColor:"selectedBorderTopColor",selectedItemBorderRightColor:"selectedBorderRightColor",selectedItemBorderBottomColor:"selectedBorderBottomColor",selectedItemLabelFontColor:"selectedLabelFontColor",selectedItemLabelFontSize:"selectedLabelFontSize",selectedItemLabelFontStyle:"selectedLabelFontStyle",selectedItemLabelFontWeight:"selectedLabelFontWeight",selectedItemLabelTextDecoration:"selectedLabelTextDecoration",selectedItemLabelTextShadowColor:"selectedLabelTextShadowColor",
selectedItemLabelTextShadowHorizontalLength:"selectedLabelTextShadowHorizontalLength",selectedItemLabelTextShadowVerticalLength:"selectedLabelTextShadowVerticalLength",selectedItemLabelTextShadowBlurRadius:"selectedLabelTextShadowBlurRadius",selectedItemLabelTextShadowOpacity:"selectedLabelTextShadowOpacity",selectedItemOpacity:"selectedOpacity",selectedItemPaddingLeft:"selectedPaddingLeft",selectedItemPaddingTop:"selectedPaddingTop",selectedItemPaddingRight:"selectedPaddingRight",selectedItemPaddingBottom:"selectedPaddingBottom",
selectedItemShadow:"selectedShadow",selectedItemThumbnailOpacity:"selectedThumbnailOpacity",selectedItemThumbnailBorderSize:"selectedThumbnailBorderSize",selectedItemThumbnailBorderColor:"selectedThumbnailBorderColor",selectedItemThumbnailShadow:"selectedThumbnailShadow",selectedItemThumbnailShadowHorizontalLength:"selectedThumbnailShadowHorizontalLength",selectedItemThumbnailShadowVerticalLength:"selectedThumbnailShadowVerticalLength",selectedItemThumbnailShadowBlurRadius:"selectedThumbnailShadowBlurRadius",
selectedItemThumbnailShadowSpread:"selectedThumbnailShadowSpread",selectedItemThumbnailShadowColor:"selectedThumbnailShadowColor",selectedItemThumbnailShadowOpacity:"selectedThumbnailShadowOpacity",toolTipBackgroundColor:"toolTipBackgroundColor",toolTipBackgroundOpacity:"toolTipBackgroundOpacity",toolTipBorderRadius:"toolTipBorderRadius",toolTipBorderColor:"toolTipBorderColor",toolTipBorderSize:"toolTipBorderSize",toolTipDisplayTime:"toolTipDisplayTime",toolTipFontFamily:"toolTipFontFamily",toolTipFontSize:"toolTipFontSize",
toolTipFontColor:"toolTipFontColor",toolTipFontWeight:"toolTipFontWeight",toolTipFontStyle:"toolTipFontStyle",toolTipPaddingBottom:"toolTipPaddingBottom",toolTipPaddingLeft:"toolTipPaddingLeft",toolTipPaddingTop:"toolTipPaddingTop",toolTipPaddingRight:"toolTipPaddingRight",toolTipShadowBlurRadius:"toolTipShadowBlurRadius",toolTipShadowColor:"toolTipShadowColor",toolTipShadowHorizontalLength:"toolTipShadowHorizontalLength",toolTipShadowOpacity:"toolTipShadowOpacity",toolTipShadowSpread:"toolTipShadowSpread",
toolTipShadowVerticalLength:"toolTipShadowVerticalLength",toolTipOpacity:"toolTipOpacity",toolTipTextShadowBlurRadius:"toolTipTextShadowBlurRadius",toolTipTextShadowColor:"toolTipTextShadowColor",toolTipTextShadowHorizontalLength:"toolTipTextShadowHorizontalLength",toolTipTextShadowOpacity:"toolTipTextShadowOpacity",toolTipTextShadowVerticalLength:"toolTipTextShadowVerticalLength"};j.rA=a(j.wt).keys();j.sA=a(j.xt).keys();return j});
define("fI","fg,ll,D,dW,jT,dm,by,do".split(","),function(a,b,c,d,f,e,g){a=a.extend(c,function(){c.call(this);this.Wb=r;this.set("itemMode","normal");this.ol=y;this.KA=new f(this,"buttonScrollDown",e.Wc);this.KA.bind(b.U,this.dea,this);this.LA=new f(this,"buttonScrollLeft",e.Wc);this.LA.bind(b.U,this.scrollLeft,this);this.MA=new f(this,"buttonScrollRight",e.Wc);this.MA.bind(b.U,this.eea,this);this.NA=new f(this,"buttonScrollUp",e.Wc);this.NA.bind(b.U,this.fea,this);this.bind(b.aa,this.qoa,this)});
d.A("ThumbnailList",a).B("UIComponent").K({buttonScrollDown:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonScrollLeft:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonScrollRight:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonScrollUp:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",contentOpaque:"bool",gap:"number",hideScrollButtons:"bool",horizontalAlign:"enum[center, left, right]",itemMode:"enum[normal, thumbnail-only, label-only]",
itemBackgroundColor:"or[array[color], color]",itemBackgroundColorDirection:"enum[horizontal, vertical]",itemBackgroundColorRatios:"array[number]",itemBackgroundOpacity:"number",itemBorderBottomColor:"color",itemBorderBottomLeftRadius:"number",itemBorderBottomRadius:"number",itemBorderBottomRightRadius:"number",itemBorderBottomSize:"number",itemBorderColor:"color",itemBorderLeftColor:"color",itemBorderLeftRadius:"number",itemBorderLeftSize:"number",itemBorderRadius:"number",itemBorderRightColor:"color",
itemBorderRightRadius:"number",itemBorderRightSize:"number",itemBorderSize:"number",itemBorderTopColor:"color",itemBorderTopLeftRadius:"number",itemBorderTopRadius:"number",itemBorderTopRightRadius:"number",itemBorderTopSize:"number",itemHorizontalAlign:"enum[center, left, right]",itemLabelFontColor:"color",itemLabelFontFamily:"string",itemLabelFontSize:"or[number, size]",itemLabelFontStyle:"enum[italic, normal]",itemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",
itemLabelGap:"number",itemLabelHorizontalAlign:"enum[center, left, right]",itemLabelPosition:"enum[left, top, right, bottom]",itemLabelTextDecoration:"enum[underline, overline, line-through, none]",itemLabelTextShadowBlurRadius:"number",itemLabelTextShadowColor:"color",itemLabelTextShadowHorizontalLength:"number",itemLabelTextShadowOpacity:"number",itemLabelTextShadowVerticalLength:"number",itemOpacity:"number",itemPaddingBottom:"number",itemPaddingLeft:"number",itemPaddingTop:"number",itemPaddingRight:"number",
itemShadow:"bool",itemThumbnailBorderColor:"color",itemThumbnailBorderRadius:"number",itemThumbnailBorderSize:"number",itemThumbnailScaleMode:"enum[none, fill, fit_inside, fit_outside, fit_to_width, fit_to_height]",itemThumbnailHeight:"number",itemThumbnailWidth:"number",itemThumbnailMaxHeight:"number",itemThumbnailMaxWidth:"number",itemThumbnailOpacity:"number",itemThumbnailShadow:"bool",itemThumbnailShadowBlurRadius:"number",itemThumbnailShadowColor:"color",itemThumbnailShadowHorizontalLength:"number",
itemThumbnailShadowOpacity:"number",itemThumbnailShadowSpread:"number",itemThumbnailShadowVerticalLength:"number",itemVerticalAlign:"enum[bottom, middle, top]",layout:"enum[vertical, horizontal]",playList:"PlayList",rollOverItemBackgroundColor:"or[array[color], color]",rollOverItemBackgroundColorDirection:"enum[horizontal, vertical]",rollOverItemBackgroundColorRatios:"array[number]",rollOverItemBackgroundOpacity:"number",rollOverItemBorderBottomColor:"color",rollOverItemBorderBottomLeftRadius:"number",
rollOverItemBorderBottomRadius:"number",rollOverItemBorderBottomRightRadius:"number",rollOverItemBorderBottomSize:"number",rollOverItemBorderColor:"color",rollOverItemBorderLeftColor:"color",rollOverItemBorderLeftRadius:"number",rollOverItemBorderLeftSize:"number",rollOverItemBorderRadius:"number",rollOverItemBorderRightColor:"color",rollOverItemBorderRightRadius:"number",rollOverItemBorderRightSize:"number",rollOverItemBorderSize:"number",rollOverItemBorderTopColor:"color",rollOverItemBorderTopLeftRadius:"number",
rollOverItemBorderTopRadius:"number",rollOverItemBorderTopRightRadius:"number",rollOverItemBorderTopSize:"number",rollOverItemLabelFontColor:"color",rollOverItemLabelFontSize:"or[number, size]",rollOverItemLabelFontStyle:"enum[italic, normal]",rollOverItemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",rollOverItemLabelTextDecoration:"enum[underline, overline, line-through, none]",rollOverItemLabelTextShadowBlurRadius:"number",rollOverItemLabelTextShadowColor:"color",
rollOverItemLabelTextShadowHorizontalLength:"number",rollOverItemLabelTextShadowOpacity:"number",rollOverItemLabelTextShadowVerticalLength:"number",rollOverItemOpacity:"number",rollOverItemPaddingBottom:"number",rollOverItemPaddingLeft:"number",rollOverItemPaddingRight:"number",rollOverItemPaddingTop:"number",rollOverItemShadow:"bool",rollOverItemThumbnailBorderColor:"color",rollOverItemThumbnailBorderSize:"number",rollOverItemThumbnailOpacity:"number",rollOverItemThumbnailShadow:"bool",rollOverItemThumbnailShadowBlurRadius:"number",
rollOverItemThumbnailShadowColor:"color",rollOverItemThumbnailShadowHorizontalLength:"number",rollOverItemThumbnailShadowOpacity:"number",rollOverItemThumbnailShadowSpread:"number",rollOverItemThumbnailShadowVerticalLength:"number",scrollBarColor:"color",scrollBarWidth:"number",scrollBarMargin:"number",scrollBarHorizontalMargin:"number",scrollBarVerticalMargin:"number",scrollBarOpacity:"number",scrollBarVisible:"enum[rollOver, always]",selectedItemBackgroundColor:"or[array[color], color]",selectedItemBackgroundColorDirection:"enum[horizontal, vertical]",
selectedItemBackgroundColorRatios:"array[number]",selectedItemBackgroundOpacity:"number",selectedItemBorderBottomColor:"color",selectedItemBorderBottomLeftRadius:"number",selectedItemBorderBottomRadius:"number",selectedItemBorderBottomRightRadius:"number",selectedItemBorderBottomSize:"number",selectedItemBorderColor:"color",selectedItemBorderLeftColor:"color",selectedItemBorderLeftRadius:"number",selectedItemBorderLeftSize:"number",selectedItemBorderRadius:"number",selectedItemBorderRightRadius:"number",
selectedItemBorderRightSize:"number",selectedItemBorderSize:"number",selectedItemBorderTopLeftRadius:"number",selectedItemBorderTopRadius:"number",selectedItemBorderTopRightRadius:"number",selectedItemBorderTopSize:"number",selectedItemBorderTopColor:"color",selectedItemBorderRightColor:"color",selectedItemLabelFontColor:"color",selectedItemLabelFontSize:"or[number, size]",selectedItemLabelFontStyle:"enum[italic, normal]",selectedItemLabelFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",
selectedItemLabelTextDecoration:"enum[underline, overline, line-through, none]",selectedItemLabelTextShadowBlurRadius:"number",selectedItemLabelTextShadowColor:"color",selectedItemLabelTextShadowHorizontalLength:"number",selectedItemLabelTextShadowOpacity:"number",selectedItemLabelTextShadowVerticalLength:"number",selectedItemOpacity:"number",selectedItemPaddingBottom:"number",selectedItemPaddingLeft:"number",selectedItemPaddingTop:"number",selectedItemPaddingRight:"number",selectedItemShadow:"bool",
selectedItemThumbnailBorderSize:"number",selectedItemThumbnailBorderColor:"color",selectedItemThumbnailOpacity:"number",selectedItemThumbnailShadow:"bool",selectedItemThumbnailShadowBlurRadius:"number",selectedItemThumbnailShadowColor:"color",selectedItemThumbnailShadowHorizontalLength:"number",selectedItemThumbnailShadowOpacity:"number",selectedItemThumbnailShadowSpread:"number",selectedItemThumbnailShadowVerticalLength:"number",verticalAlign:"enum[bottom, middle, top]",itemLabelFunction:"*"}).aq(["itemLabelFontSize",
"rollOverItemLabelFontSize","selectedItemLabelFontSize"]).Vb([b.aa]);a.prototype.Bi=function(){c.prototype.Bi.call(this);this.sv()};a.prototype.yp=function(){c.prototype.yp.call(this);this.sv()};a.prototype.sv=function(){this.KA.set("visible",!this.ol||this.lH());this.NA.set("visible",!this.ol||this.oH());this.LA.set("visible",!this.ol||this.mH());this.MA.set("visible",!this.ol||this.nH())};a.prototype.set=function(a,b){if(a=="itemMode")switch(b){case "thumbnail-only":this.set("itemLabelFunction",
this.Lo);this.set("itemThumbnailUrlFunction",this.OB);this.set("itemTooltipFunction",this.qu);this.set("itemSourceProperties",["label","media.label","media.thumbnailUrl","media.flipImageHorizontally"]);break;case "label-only":this.set("itemLabelFunction",this.qu);this.set("itemThumbnailUrlFunction",this.Lo);this.set("itemTooltipFunction",this.Lo);this.set("itemSourceProperties",["label","media.label"]);break;default:this.set("itemLabelFunction",this.qu);this.set("itemThumbnailUrlFunction",this.OB);
this.set("itemTooltipFunction",this.Lo);this.set("itemSourceProperties",["label","media.label","media.thumbnailUrl","media.flipImageHorizontally"])}else if(a=="playList"){this.Wb&&this.Wb.unbind("change",this.$o,this);if(this.Wb=b){this.set("items",this.Wb.get("items"));this.Wb.bind("change",this.$o,this)}else this.set("items",[])}else if(a=="hideScrollButtons"){this.ol=b;this.sv()}else c.prototype.set.call(this,a,b)};a.prototype.get=function(a,b){switch(a){case "playList":return this.Wb;default:return c.prototype.get.call(this,
a,b)}};a.prototype.$o=function(){this.set("items",this.Wb.get("items"));this.set("selectedIndex",this.Wb.get("selectedIndex"))};a.prototype.qoa=function(){this.Wb&&this.Wb.set("selectedIndex",this.get("selectedIndex"))};a.prototype.Lo=C();a.prototype.qu=function(a){return a.get("label")||a.get("media").get("label")};a.prototype.OB=function(a){var a=a.get("media"),b=a.get("thumbnailUrl");a.get("flipImageHorizontally")&&(b=g.bba(b));return b};return a});
define("bG",["fg","ll","d","dW"],function(a,b,c,d){a=a.extend(c,function(){c.call(this)});d.A("UIComponent",a).B("Object").K({actualHeight:"number",actualWidth:"number",backgroundColor:"or[array[color], color]",backgroundColorDirection:"enum[horizontal, vertical]",backgroundColorRatios:"array[number]",backgroundImageUrl:"string",backgroundOpacity:"number",borderBottomColor:"color",borderBottomLeftRadius:"number",borderBottomRadius:"number",borderBottomRightRadius:"number",borderBottomSize:"number",
borderColor:"color",borderLeftColor:"color",borderLeftRadius:"number",borderLeftSize:"number",borderRadius:"number",borderRightColor:"color",borderRightRadius:"number",borderRightSize:"number",borderSize:"number",borderTopColor:"color",borderTopLeftRadius:"number",borderTopRadius:"number",borderTopRightRadius:"number",borderTopSize:"number",bottom:"or[number, percent]",centerX:"number",centerY:"number",cursor:"enum[default, hand]",height:"or[number, percent]",hideEffect:"Effect",includeInLayout:"bool",
interactionEnabled:"bool",inView:"bool",left:"or[number, percent]",maxHeight:"number",maxWidth:"number",minHeight:"number",minWidth:"number",opacity:"number",paddingBottom:"number",paddingLeft:"number",paddingTop:"number",paddingRight:"number",propagateClick:"bool",right:"or[number, percent]",rollOverOpacity:"number",showEffect:"Effect",shadow:"bool",shadowBlurRadius:"number",shadowColor:"color",shadowHorizontalLength:"number",shadowOpacity:"number",shadowSpread:"number",shadowVerticalLength:"number",
toolTip:"string",toolTipBackgroundColor:"or[color, enum[transparent]]",toolTipBackgroundOpacity:"number",toolTipBorderRadius:"number",toolTipBorderColor:"color",toolTipBorderSize:"number",toolTipDisplayTime:"number",toolTipFontFamily:"string",toolTipFontSize:"or[number, size]",toolTipFontColor:"color",toolTipFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",toolTipFontStyle:"enum[italic, normal]",toolTipHorizontalAlign:"enum[left, center, right]",toolTipPaddingBottom:"number",
toolTipPaddingLeft:"number",toolTipPaddingTop:"number",toolTipPaddingRight:"number",toolTipShadowBlurRadius:"number",toolTipShadowColor:"color",toolTipShadowHorizontalLength:"number",toolTipShadowOpacity:"number",toolTipShadowSpread:"number",toolTipShadowVerticalLength:"number",toolTipOpacity:"number",toolTipTextShadowBlurRadius:"number",toolTipTextShadowColor:"color",toolTipTextShadowHorizontalLength:"number",toolTipTextShadowOpacity:"number",toolTipTextShadowVerticalLength:"number",top:"or[number, percent]",
visible:"bool",width:"or[number, percent]"}).aq(["toolTipFontSize"]).fh(["backgroundImageUrl"]).Cf([b.zd,b.od]).Vb([b.INIT,b.U,b.Jh,b.Ff,b.vb,b.wc,b.Mb,b.V0,b.fP]);return a});define("ew",["require","fg","jd","ll","dW"],function(a){var b=a("fg"),c=a("jd"),d=a("ll"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("VideoCue",b).B("Object").K({startTime:"number",endTime:"number"}).Vb([d.Pk,d.Ba]);return b});
define("v","require,fg,ll,dW,jY,jn,du,ew".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("dW"),f=a("jY"),e=a("jn"),g=a("du");a("ew");a=b.extend(g,function(){g.call(this);this.Y=m;this.set("autoplay",n);this.set("blending",0);this.set("mute",y);this.set("scaleMode",e.Se);this.set("horizontalAlign",f.Mc);this.set("verticalAlign",f.tc)});d.A("Video",a).B("Media").K({autoplay:"bool",blending:"number",chromaColor:"color",chromaThreshold:"number",chromaSmoothing:"number",cues:"array[VideoCue]",currentTime:"number",
duration:"number",state:"enum[playing, paused, stopped]",height:"number",horizontalAlign:"enum[center, left, right]",mute:"bool",loop:"bool",scaleMode:"enum[none, fit_inside, fit_outside, fit_to_width, fit_to_height]",verticalAlign:"enum[bottom, middle, top]",video:"VideoResource",width:"number"}).Vb([c.Ba,c.Ef]);a.prototype.En=function(){this.get("video");return[]};return a});
define("ft",["require","fg","ll","dW","gC"],function(a){var b=a("fg"),c=a("ll"),d=a("dW"),f=a("gC"),a=b.extend(f,function(){f.call(this);this.set("autoplay",n)});d.A("VideoPanorama",a).B("Panorama").K({cues:"array[VideoCue]",loop:"bool",autoplay:"bool"}).Vb([c.Ba,c.Ef]);return a});
define("hm",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this);this.set("hasAudio",n)});a.A("Video360Resource",b).B("Video360ResourceLevel").K({gain:"number",hasAudio:"bool",levels:"array[Video360ResourceLevel]",subtitlesURL:"string"}).fh(["subtitlesURL"]);b.prototype.get=function(a,b){if(b===m)switch(a){case "gain":b=1}switch(a){case "levels":b=[this];break;case "subtitlesURL":case "gain":for(var e=c.prototype.get.call(this,a),g=this.get("levels"),
k=0;g&&k<g.length&&e===m;k++){var i=g[k];i!=this&&(e=i.get(a))}return e!==m?e:b}return c.prototype.get.call(this,a,b)};return b});
define("cP","require,fg,do,dW,jz,ft,hm".split(","),function(a){var b=a("fg"),c=a("do"),d=a("dW"),f=a("jz"),e=a("ft"),g=a("hm"),a=b.extend(e,function(){e.call(this);this.nk=this.Zy=this.Ea=m});d.A("Video360",a).B("VideoPanorama").K({video:"or[Video360Resource, array[Video360Resource]]",videoStereo:"or[Video360Resource, array[Video360Resource]]"});a.prototype.set=function(a,b){a=="video"?this.Dha(b):a=="videoStereo"?this.Eha(b):e.prototype.set.call(this,a,b)};a.prototype.get=function(a,b){return a==
"video"?this.Ea!==m?this.Ea:b:a=="videoStereo"?this.Zy!==m?this.Zy:b:e.prototype.get.call(this,a,b)};a.prototype.Dha=function(a){if(this.Ea!=a){this.Ea=a;a=e.prototype.get.call(this,"frames")||[];if(this.Ea){a.length==0&&a.push(new f);a[0].set("sphere",this.v6(this.Ea))}e.prototype.set.call(this,"frames",a.slice())}};a.prototype.Eha=function(a){if(this.Zy!=a){this.Zy=a;a=e.prototype.get.call(this,"frames")||[];if(this.Zy){a.length==0&&a.push(new f);a[0].set("stereoSphere",this.v6(this.Zy))}e.prototype.set.call(this,
"frames",a.slice())}};a.prototype.v6=function(a){if(c.isArray(a)){var b=[];c(a).each(function(a){b=b.concat(a.get("levels")||[a])});a=new g;a.set("levels",b)}return a};return a});define("bx",["require","fg","dW","kZ"],function(a){var b=a("fg"),c=a("dW"),d=a("kZ"),a=b.extend(d,function(){d.call(this)});c.A("Video360Player",a).B("PanoramaPlayer");return a});
define("hH",["fg","dW","cu","dl"],function(a,b,c,d){a=a.extend(d,function(){d.call(this)});b.A("Video360PlayListItem",a).B("PlayListItem").K({media:"Video360",camera:"RotationalCamera",player:"PanoramaPlayer",startTime:"number"});a.prototype.start=function(){d.prototype.start.call(this);var a=this.get("player");a&&(a.bind(c.le,this.gj,this),a.set("video",this.get("media")),a.set("camera",this.get("camera")),a.set("startTime",this.get("startTime")))};a.prototype.stop=function(){var a=this.get("player");
a&&(a.unbind(c.le,this.gj,this),a.get("video")==this.get("media")&&a.set("video",r));d.prototype.stop.call(this)};a.prototype.gj=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(c.le,this.gj,this),this.get("player").bind(c.dg,this.Dl,this),this.Ev())};a.prototype.Dl=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(c.dg,this.Dl,this),this.end())};return a});
define("le",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("Video360ResourceLevel",b).B("VideoResourceLevel");return b});
define("bM","require,fg,jd,ll,fu,bZ,dW,hW".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("ll"),f=a("fu"),e=a("bZ"),g=a("dW"),k=a("hW"),a=b.extend(c,function(){c.call(this);this.Ob=m;this.set("enabled",n);this.set("interactionEnabled",n);this.set("state",f.I);this.set("enabledInCardboard",n);this.set("enabledInStandard",n);this.set("blending",0);this.set("opacity",1);this.set("fadeInDuration",200);this.set("fadeOutDuration",200)});a.prototype.play=function(){this.set("state",f.O)};a.prototype.pause=
function(){this.set("state",f.uc)};a.prototype.stop=function(){this.set("state",f.I)};g.A("VideoPanoramaOverlay",a).B("PanoramaOverlay").K({autoplay:"bool",blending:"number",chromaColor:"color",chromaThreshold:"number",chromaSmoothing:"number",cues:"array[VideoCue]",distance:"number",displayTooltipInTouchScreens:"bool",enabled:"bool",enabledInCardboard:"bool",enabledInVR:"bool",enabledInStandard:"bool",fadeInDuration:"number",fadeOutDuration:"number",interactionEnabled:"bool",videoVisibleOnStop:"bool",
hfov:"number",vfov:"number",scaleMode:"enum[fill, fit_inside, fit_outside, fit_to_width, fit_to_height, none]",image:"ImageResource",loop:"bool",opacity:"number",pitch:"number",rotationX:"number",rotationY:"number",roll:"number",state:"enum[stopped, playing, paused]",toolTip:"string",useHandCursor:"bool",video:"VideoResource",yaw:"number",playbackPositions:"array[PanoramaOverlayPlaybackPosition]"}).Vb([d.Ba,d.zd,d.Jh,d.Ff,d.wc,d.Mb,d.od,d.Ji,d.Ef,d.xc]).Cf([d.U]).Ag({pause:a.prototype.pause,play:a.prototype.play,
stop:a.prototype.stop});a.prototype.set=function(a,b){var g=y;switch(a){case "state":var k=this.get("state")||f.I;k==f.I&&b==f.O&&this.trigger(d.Ji);k!=b&&this.trigger(new e(d.xc,{oldState:k,state:b}));break;case "enabledInCardboard":this.set("enabledInVR",b);break;case "distance":case "hfov":case "opacity":case "pitch":case "rotationX":case "rotationY":case "roll":case "vfov":case "yaw":case "playbackPositions":this.Ob=m;g=n}c.prototype.set.call(this,a,b);g&&a!="playbackPositions"&&this.trigger(d.D("playbackPositions"))};
a.prototype.get=function(a,b){switch(a){case "playbackPositions":if(this.Ob===m)this.Ob=k.DY(this);return this.Ob}return c.prototype.get.call(this,a,b)};return a});
define("cG","require,do,fg,ll,bZ,eO,fu".split(","),function(a){function b(a,b,c){this.time=a;this.cue=b;this.action=c}var c=a("do"),d=a("fg"),f=a("ll"),e=a("bZ"),g=a("eO"),k=a("fu"),a=d.extend(g,function(a){g.call(this);this.g=a;this.Fb=r;this.pg=y;this.hg=[];this.Ti=m;this.Oc=[]});a.prototype.clear=function(){this.g=r;this.Ot();this.hg=[];this.Oc=[]};a.prototype.start=function(a){this.end();this.JV(a);this.PQ();this.iW();this.xv()};a.prototype.JV=function(a){this.Ot();this.Fb=a;this.Fb.bind(f.D("currentTime"),
this.xv,this,n);this.Fb.bind(f.D("state"),this.iW,this,n);this.Fb.bind(f.Ba,this.yE,this,n)};a.prototype.Ot=function(){if(this.Fb){this.Fb.unbind(f.D("currentTime"),this.xv,this);this.Fb.unbind(f.D("state"),this.iW,this);this.Fb.unbind(f.Ba,this.yE,this);this.Fb=r}};a.prototype.end=function(){this.PA();this.Ot();this.pg=y};a.prototype.iW=function(a){a=a!=k.I;if(this.pg!=a)(this.pg=a)?this.gL():this.PA()};a.prototype.yE=function(){this.xv()};a.prototype.gL=function(){this.Ti=this.rx=0};a.prototype.xv=
function(){if(this.Fb&&this.pg){var a=this.Oc.slice(),b=this.Fb.get("currentTime",0),d=b-this.rx;if(d<0){this.Oc=[];this.Ti=0}d=d>=0&&d<2;this.rx=b;var g;for(g=this.Ti;g<this.hg.length;g++)if(this.hg[g].time>b)break;for(;this.Ti<g;this.Ti++){b=this.hg[this.Ti];if(b.action=="start"){this.Oc=c(this.Oc).union([b.cue]);d&&b.cue.trigger(new e(f.Pk))}else{this.Oc=c(this.Oc).difference([b.cue]);d&&b.cue.trigger(new e(f.Ba))}}(a.length!=this.Oc.length||c(a).intersection(this.Oc).length!=this.Oc.length)&&
this.bE()}};a.prototype.PA=function(){if(this.Oc.length>0){this.Oc=[];this.bE()}};a.prototype.bE=function(){this.Fb.trigger(new e(f.Ef,{activeCues:this.Oc.slice()}))};a.prototype.PQ=function(){this.hg=[];var a=this.Fb.get("cues",[]);c(a).each(function(a){this.hg.push(new b(a.get("startTime",0),a,"start"));this.hg.push(new b(a.get("endTime",Number.POSITIVE_INFINITY),a,"end"))},this);this.hg.sort(function(a,b){return a.time==b.time?a.action==b.start?0:a.action=="start"?-1:1:a.time-b.time})};return a});
define("kB","require,fg,V,bZ,eO,ll,jn".split(","),function(a){var b=a("fg"),c=a("V"),d=a("bZ"),f=a("eO");a("ll");a("jn");var e=b.extend(f,function(a,b){f.call(this);this.C=a;this.g=b;this.Qu=[];this.S=e.lf;this.Jf=r;this.qR=m;this.kg=r;this.ue=this.Me=m});e.prototype.display=function(a,b){this.yQ();if(this.kg!=a||this.S!=e.lf){this.Qu.push({video:a,startTime:b});this.B7()}};e.prototype.hide=function(){this.yQ();this.Qu.push({video:r,startTime:m});this.B7()};e.prototype.clear=function(){this.S=e.lf;
this.yQ();this.qpa();this.V8();this.g=r};e.prototype.wi=function(a){if(this.S!=e.lf&&(this.S==e.Uj||this.S==e.vq||this.S==e.yt)){this.ue=this.ue+a;a=Math.min(1,this.ue/this.Me);if(this.S==e.Uj)this.Jf.set("opacity",a);else if(this.S==e.yt){this.Jf.set("opacity",Math.min(1,a*2));this.kg.set("opacity",Math.min(1,(1-a)*2))}else this.kg.set("opacity",1-a);this.ue<this.Me?this.ea():this.Wq()}};e.prototype.B7=function(){this.Qu.length>0&&this.S==e.lf&&this.el()};e.prototype.el=function(){this.kg&&this.trigger(new d(e.lt,
{video:this.kg}));if(this.C.get("transitionMode","blending")=="fade_out_fade_in"&&this.kg)this.Aq();else{var a=this.Qu.shift();this.Jf=a.video;this.qR=a.startTime;this.Jf?this.Jf.get("chromaColor")&&this.kg?this.$P():this.EA():this.kg&&this.Aq()}};e.prototype.EA=function(){this.V1();this.ue=0;this.Me=this.C.get("transitionDuration");this.S=e.Uj;this.ea()};e.prototype.$P=function(){this.V1();this.ue=0;this.Me=this.C.get("transitionDuration")*2;this.S=e.yt;this.ea()};e.prototype.Aq=function(){this.Jf=
r;this.ue=0;this.Me=this.C.get("transitionDuration");this.S=e.vq;this.ea()};e.prototype.Wq=function(){this.V8();this.kg=this.Jf;this.Jf=r;this.S=e.lf;this.kg?this.trigger(new d(e.mt,{video:this.kg})):this.Qu.length==0&&this.trigger(new d(e.I_));this.Qu.length!=0&&this.el()};e.prototype.ea=function(){c.La(this.wi,this)};e.prototype.yQ=function(){this.Qu=[]};e.prototype.V1=function(){if(this.Jf){this.Jf.set("opacity",0);this.Jf.set("zIndex",1);this.kg&&this.kg.set("zIndex",0);this.Jf.set("currentTime",
this.qR||0);this.g.Sta(this.Jf);this.trigger(new d(e.GO,{video:this.Jf,startTime:this.qR}))}};e.prototype.V8=function(){if(this.kg){this.g.Pda(this.kg);this.trigger(new d(e.oG,{video:this.kg}));this.kg=r}};e.prototype.qpa=function(){if(this.Jf){this.g.Pda(this.Jf);this.trigger(new d(e.oG,{video:this.Jf}));this.Jf=r}};e.lf="stopped";e.Uj="blending";e.yt="double blending";e.vq="disolving";e.Ja="request frame";e.GO="video added";e.oG="video removed";e.mt="video show";e.lt="video hide";e.I_="all pending videos hidden";
return e});
define("ha","require,fg,ll,bZ,eO,fu".split(","),function(a){var b=a("fg"),c=a("ll"),d=a("bZ"),f=a("eO"),e=a("fu"),g=b.extend(f,function(){f.call(this);this.Fb=r;this.rd=y;this.Vt=e.I});g.prototype.start=function(a){this.end();this.JV(a)};g.prototype.end=function(){this.stop();this.Ot()};g.prototype.clear=function(){this.Ot()};g.prototype.play=function(){this.Fb&&this.Fb.set("state",e.O)};g.prototype.pause=function(){this.Fb&&this.Fb.set("state",e.uc)};g.prototype.stop=function(){this.Fb&&this.Fb.set("state",
e.I)};g.prototype.Jd=function(a){this.rd=a;this.Fb&&this.Fb.set("muted",this.rd)};g.prototype.setTime=function(a){this.Fb&&this.Fb.set("currentTime",a)};g.prototype.getTime=function(){if(this.Fb)return this.Fb.get("currentTime")};g.prototype.JV=function(a){this.Ot();this.Fb=a;this.Fb.set("mute",this.rd);this.Fb.bind(c.D("state"),this.pp,this,n);this.Fb.bind(c.D("currentTime"),this.yv,this,n);this.Fb.bind(c.Ba,this.yE,this,n)};g.prototype.Ot=function(){if(this.Fb){this.Fb.unbind(c.D("state"),this.pp,
this);this.Fb.unbind(c.D("currentTime"),this.yv,this);this.Fb.unbind(c.Ba,this.yE,this);this.Fb=r}};g.prototype.yv=function(){this.trigger(new d(g.nt,{video:this.Fb,time:this.Fb.get("currentTime"),duration:this.Fb.get("duration")}))};g.prototype.yE=function(){this.trigger(new d(g.hA,{video:this.Fb}))};g.prototype.pp=function(){var a=this.Fb.get("state");if(this.Vt!=a){this.Vt=a;this.trigger(new d(g.sb,{state:this.Vt}))}};g.sb="playback state change";g.hA="video end";g.nt="video time change";return g});
define("kM","fg,fu,bZ,eO,cG,kB,ha".split(","),function(a,b,c,d,f,e,g){var k=a.extend(d,function(a,b){d.call(this);this.C=a;this.g=b;this.g.set("visible",y);this.ga=new e(this.C,this.g);this.ca=new g(this.g);this.kl=new f(this.g);this.ga.bind(e.lt,this.Dl,this,n);this.ga.bind(e.mt,this.gj,this,n);this.ga.bind(e.GO,this.V7,this,n);this.ga.bind(e.oG,this.W7,this,n);this.ga.bind(e.I_,this.qna,this,n);this.ca.bind(g.sb,this.gd,this,n);this.ca.bind(g.hA,this.Jr,this,n);this.ca.bind(g.nt,this.NC,this,n)});
k.prototype.clear=function(){this.ga.clear();this.ca.clear();this.kl.clear();this.ga.unbind(e.lt,this.Dl,this);this.ga.unbind(e.mt,this.gj,this);this.ga.unbind(e.GO,this.V7,this);this.ga.unbind(e.oG,this.W7,this);this.ca.unbind(g.sb,this.gd,this);this.ca.unbind(g.hA,this.Jr,this);this.ca.unbind(g.nt,this.NC,this);this.C=this.g=this.kl=this.ca=this.ga=r};k.prototype.$ya=function(a,b){this.g.set("visible",n);this.ga.display(a,b)};k.prototype.Xp=function(){this.ga.hide();this.ca.end();this.kl.end()};
k.prototype.play=function(){this.ca.play()};k.prototype.stop=function(){this.ca.stop()};k.prototype.pause=function(){this.ca.pause()};k.prototype.Jd=function(a){this.ca.Jd(a)};k.prototype.setTime=function(a){this.ca.setTime(a)};k.prototype.getTime=function(){return this.ca.getTime()};k.prototype.V7=function(a){var b=a.data.video;this.ca.start(b,a.data.startTime);this.kl.start(b)};k.prototype.W7=C();k.prototype.gj=function(a){a=a.data.video;a.get("autoplay")&&a.get("state")!=b.O&&a.set("state",b.O);
this.trigger(new c(k.mt,{video:a}))};k.prototype.Dl=function(a){this.trigger(new c(k.lt,{video:a.data.video}))};k.prototype.qna=function(){this.g.set("visible",y)};k.prototype.Jr=function(a){this.trigger(new c(k.hA,{video:a.data.video}))};k.prototype.NC=function(a){this.trigger(new c(k.nt,{video:a.data.video,time:a.data.time,duration:a.data.duration}))};k.prototype.gd=function(a){this.trigger(new c(k.sb,{state:a.data.state}))};k.mt="videoShow";k.lt="videoHide";k.hA="videoEnd";k.nt="videoTimeChange";
k.sb="playbackStateChange";return k});
define("iE","require,fg,ll,bZ,dW,cu,dk,fu,kM,jr".split(","),function(a){var b=a("fg"),c=a("ll");a("bZ");var d=a("dW"),f=a("cu"),e=a("dk"),g=a("fu"),k=a("kM"),i=a("jr"),a=b.extend(e,function(){e.call(this,"video");this.set("clickAction","none");this.set("displayPlayOverlay",y);this.ll=this.kv=this.yv=this.yf=y;this.o=this.g=r;this.pb=this.rc=0;this.Bc=b.jm(this.Ne,this)});d.A("VideoPlayer",a).B("Object").K({buttonPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonPlay:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",
buttonPlayPause:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonStop:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",buttonRestart:"or[array[or[BaseButton, IconButton]], or[BaseButton, IconButton]]",clickAction:"enum[play_pause, none]",displayPlayOverlay:"bool",displayPlaybackBar:"bool",currentTime:"number",state:"enum[stopped, playing, paused]",video:"Video",viewerArea:"ViewerArea"}).Ag({seek:function(a){this.bs(a)},play:function(){this.Ku()},pause:function(){this.Ju()},
stop:function(){this.Hr()},restart:function(){this.Gr()}}).Vb([f.le,f.dg,c.xc]);a.prototype.set=function(a,b){if(this.get(a)!=b){switch(a){case "startTime":this.kv=n;this.Bc();break;case "video":this.yv=n;this.Bc();break;case "viewerArea":this.yf=n;this.Bc();break;case "displayPlaybackBar":this.ll=n;this.Bc()}e.prototype.set.call(this,a,b)}};a.prototype.get=function(a,b){switch(a){case "currentTime":return this.o&&this.o.getTime()||0}return e.prototype.get.call(this,a,b)};a.prototype.Ne=function(){if(this.yf){this.yf=
y;this.vo();this.get("viewerArea")&&this.ro();this.CD(this.get("viewerArea"));this.yv=n}var a=y;if(this.g&&(this.yv||this.kv)){var b=this.get("video"),c=this.get("startTime")||0;if(b&&!this.g.Ra()){this.Bc();return}this.kv=this.yv=y;this.pb=this.rc=0;a=n;if(b){this.oD();this.o.$ya(b,c)}else this.o.Xp()}if(this.ll){this.ll=y;a=n}a&&this.ms()};a.prototype.My=function(){this.set("video",r)};a.prototype.ro=function(){var a=this.get("application"),b=this.get("viewerArea");this.g=new i(a,b,this);this.g.M({left:0,
top:0,bottom:0,right:0});b.la(this.g);b.bind(c.U,this.OC,this,n);this.o=new k(b,this.g);this.o.bind(k.mt,this.gj,this);this.o.bind(k.lt,this.Dl,this);this.o.bind(k.nt,this.NC,this,n);this.o.bind(k.sb,this.gd,this);a.bind(c.D("mute"),this.yC,this);this.o.Jd(a.get("mute",y));this.ds(n)};a.prototype.vo=function(){if(this.g){this.o.unbind(k.mt,this.gj,this);this.o.unbind(k.lt,this.Dl,this);this.o.unbind(k.nt,this.NC,this);this.o.unbind(k.sb,this.gd,this);this.o.clear();this.get("application").unbind(c.D("mute"),
this.yC,this);var a=this.g.getParent();a.removeChild(this.g);a.unbind(c.U,this.OC,this,n);this.g=r;this.ds(y)}};a.prototype.yC=function(){this.g&&this.o.Jd(this.get("application").get("mute",y))};a.prototype.gd=function(a){a=a.data.state;this.g&&this.g.pw(this.get("displayPlayOverlay")&&a!=g.O,this.rc<0.5);this.Xb(a)};a.prototype.gj=function(a){var b=this.get("viewerArea");(this.Nb=b&&b.Nb)&&this.Nb.bind(c.U,this.PC,this,n);this.Ru=y;this.dC(a.data.video)};a.prototype.Dl=function(a){this.Nb&&this.Nb.unbind(c.U,
this.PC,this,n);this.Nb=r;this.cC(a.data.video)};a.prototype.NC=function(a){this.rc=a.data.time;this.pb=a.data.duration;this.ms()};a.prototype.OC=function(){if(this.Ru)this.Ru=y;else switch(this.get("clickAction")){case "play_pause":this.get("state")!=g.O?this.o.play():this.o.pause()}};a.prototype.PC=function(){this.Ru=n};a.prototype.$C=function(a){this.bs(a.data.position)};a.prototype.Pg=function(){this.o.play()};a.prototype.sj=function(){this.o.stop()};a.prototype.pk=function(){this.o.pause()};
a.prototype.bs=function(a){this.o&&this.o.setTime(a)};a.prototype.ms=function(){if(this.g){var a=this.g.getParent();this.pb>0&&this.get("displayPlaybackBar")?a.M({playbackBarPosition:this.rc,playbackBarDuration:this.pb,playbackBarVisible:n}):a.set("playbackBarVisible",y)}};return a});
define("e",["fg","dW","cu","dl"],function(a,b,c,d){a=a.extend(d,function(){d.call(this)});b.A("VideoPlayListItem",a).B("PlayListItem").K({media:"Video",player:"VideoPlayer",startTime:"number"});a.prototype.start=function(){d.prototype.start.call(this);var a=this.get("player");a&&(a.bind(c.le,this.gj,this),a.set("video",this.get("media")),a.set("startTime",this.get("startTime")))};a.prototype.stop=function(){var a=this.get("player");a&&(a.unbind(c.le,this.gj,this),a.get("video")==this.get("media")&&
a.set("video",r));d.prototype.stop.call(this)};a.prototype.gj=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(c.le,this.gj,this),this.get("player").bind(c.dg,this.Dl,this),this.Ev())};a.prototype.Dl=function(a){a.data.media==this.get("media")&&(this.get("player").unbind(c.dg,this.Dl,this),this.end())};return a});
define("fM",["require","fg","jd","dW"],function(a){var b=a("fg"),c=a("jd"),a=a("dW"),b=b.extend(c,function(){c.call(this)});a.A("VideoResourceLevel",b).B("Object").K({bitrate:"number",framerate:"number",height:"number",posterURL:"string",type:"string",url:"string",width:"number"}).fh(["posterURL","url"]);return b});
define("dz","require,fg,jd,dW,iX,fM".split(","),function(a){var b=a("fg"),c=a("jd"),d=a("dW"),f=a("iX"),e=a("fM"),a=b.extend(c,function(){c.call(this);this.UT=new e;this.UT.set("type","video/mp4");this.XT=new e;this.XT.set("type","video/ogg");this.DX=new e;this.DX.set("type","video/webm");this.set("gain",1);this.set("hasAudio",n)});d.A("VideoResource",a).B("Object").K({gain:"number",hasAudio:"bool",height:"number",levels:"array[VideoResourceLevel]",mp4Url:"string",oggUrl:"string",subtitlesURL:"string",
webmUrl:"string",width:"number"}).fh(["mp4Url","oggUrl","subtitlesURL","webmUrl"]);a.prototype.get=function(a,b){switch(a){case "levels":var b=[],d=this.get("mp4Url");if(d){this.UT.set("url",d);b.push(this.UT)}if(d=this.get("oggUrl")){this.XT.set("url",d);b.push(this.XT)}if(d=this.get("webmUrl")){this.DX.set("url",d);b.push(this.DX)}b.forEach(function(a){a.set("width",this.get("width"));a.set("height",this.get("height"))}.bind(this))}return c.prototype.get.call(this,a,b)};a.prototype.Bj=function(){var a=
this.get("webmUrl"),b=this.get("oggUrl"),c=this.get("mp4Url");return c&&f.OM?c:a&&f.LY?a:b&&f.KY?b:c||a||b};return a});
define("cZ","require,jquery.mod,fg,ll,r,jt,d,fe".split(","),function(a){var b=a("jquery.mod"),c=a("fg"),d=a("ll"),f=a("r"),e=a("jt"),g=a("d"),k=a("fe"),a=c.extend(g,function(){g.call(this);this.Uc("WebFrame");this.VB=this.$t=this.ob=this.sc=r;this.fU=this.fU.bind(this);this.CJ=this.CJ.bind(this);this.bind(d.od,this.xoa,this,n);this.bind(d.zd,this.woa,this,n)});a.prototype.za=function(){g.prototype.za.call(this);this.f("url");this.f("backgroundColor","#ffffff");this.f("insetBorder",y);this.f("scrollEnabled",
n)};a.prototype.xoa=function(){this.gv("url")};a.prototype.woa=function(){this.gv("url")};a.prototype.Fa=function(){g.prototype.Fa.call(this);if(!this.sc){this.sc=b("<div></div>");this.sc.css({position:"absolute",left:0,top:0,width:"100%",height:"100%"});this.Pa().append(this.sc)}if(!this.ob){this.ob=b("<iframe></iframe>");this.ob.css({position:"absolute",left:0,top:0});this.ob.attr("allowfullscreen","true");this.ob.attr("allow","fullscreen; accelerometer; gyroscope; magnetometer; vr; autoplay; camera; microphone");
this.sc.append(this.ob)}if(!this.$t){this.$t=b("<div></div>");this.$t.css({"text-shadow":"0 0 5px rgba(255,255,255,0.5)",display:"none",color:"#000000","font-weight":"300","font-family":"Tahoma, Geneva, sans-serif","font-size":f.Xa()?"5vmin":"20px",position:"absolute",top:"50%",left:"50%","text-align":"center",transform:"translate(-50%, -50%)",width:"90%"});this.sc.append(this.$t)}};a.prototype.ja=function(){if(this.n("url")){var a=this.k("url");a&&this.pr?this.I9(a):this.I9("");this.q("url")}if(this.n("insetBorder")){this.k("insetBorder")?
this.ob.attr("frameborder","1"):this.ob.attr("frameborder","0");this.q("insetBorder")}if(this.n("scrollEnabled")){if(this.k("scrollEnabled")){this.ob.attr("scrolling","auto");this.sc.css({overflow:"auto","-webkit-overflow-scrolling":"touch"})}else{this.ob.attr("scrolling","no");this.sc.css({overflow:"hidden","-webkit-overflow-scrolling":"auto"})}this.q("scrollEnabled")}g.prototype.ja.call(this)};a.prototype.Re=function(){this.ob&&k.css(this.ob.get(0),{width:this.X+"px",height:this.ha+"px"});g.prototype.Re.call(this)};
a.prototype.refresh=function(){if(this.k("url")&&this.pr){this.MS();this.Iq();this.LW();this.ob.attr("src","");setTimeout(function(){this.n$();this.s2();this.ob.attr("src",this.k("url"))}.bind(this),30)}};a.prototype.I9=function(a){if(this.ob.attr("src")!=a){this.MS();if(a){this.n$();this.s2()}else{this.Iq();this.LW()}this.ob.attr("src",a)}};a.prototype.fU=function(){this.VB=r;this.Kma()&&this.jra()};a.prototype.CJ=function(){this.MS();this.Iq();this.LW()};a.prototype.s2=function(){this.ob.on("load",
this.CJ)};a.prototype.LW=function(){this.ob.off("load",this.CJ)};a.prototype.Iq=function(){if(this.VB){clearTimeout(this.VB);this.VB=r}};a.prototype.n$=function(){this.Iq();this.VB=setTimeout(this.fU.bind(this),3E3)};a.prototype.Kma=function(){if(window.location.protocol=="https:"){var a=this.ob.attr("src");if(e.parse(a).protocol!="https:")return n}return y};a.prototype.jra=function(){this.$t.text("A secure web page served over HTTPS can not display insecure content served over HTTP.");this.$t.show()};
a.prototype.MS=function(){this.$t.hide()};return a});define("bP",["fg","cZ","dW"],function(a,b,c){a=a.extend(b,function(){b.call(this)});c.A("WebFrame",a).B("UIComponent").K({url:"string",insetBorder:"bool",scrollEnabled:"bool"}).fh(["url"]).Ag({refresh:function(){b.prototype.refresh.call(this)}});return a});define("eZ",["do","fg","kS","c"],function(a,b,c,d){var f=b.extend(c,function(){c.call(this)});f.nb={layout:d.Be};a.defaults(f.nb,c.nb);f.prototype.za=function(){this.$j(f.nb)};return f});
define("jD","do,fg,ll,bZ,jY,c,kS,eZ,fG,eF,d,ks,kF,gP".split(","),function(a,b,c,d,f,e,g,k,i,p,j,l,q,o){var t=b.extend(i,function(){i.call(this);this.Uc("Window");this.Cq=this.lx=this.YD=this.Uh=r;this.eQ=new g;this.Gx=r;this.IS=this.HS=0;this.c$=this.d$=y;this.EX=this.FX=m;for(var a in t.pAa)this.gv(a);this.bind(c.vb,this.Bta,this);this.bind(c.ot,this.zta,this);this.bind(c.Mw,this.Cta,this);this.bind(c.U,this.yta,this);this.KL=0;this.vd=new g;this.vd.M({visible:y,includeInLayout:y,layout:"absolute",
height:"100%",width:"100%",backgroundOpacity:0,contentOpaque:y});this.vd.bind(c.vb,this.Naa,this);this.vd.bind(c.Mw,this.tta,this);this.vd.bind(c.ot,this.Maa,this);this.vd.bind(c.ot,this.Maa,this);this.vd.bind(c.U,this.sta,this);this.vd.la(this)});t.prototype.set=function(a,b){switch(a){case "maxWidth":this.FX=b;this.BL();break;case "maxHeight":this.EX=b;this.BL();break;case "children":this.eQ.set(a,b);break;case "shadow":this.d$=b;this.Jaa();break;default:i.prototype.set.call(this,a,b)}};t.prototype.show=
function(b,c){this.BL(b);this.set("visible",y);this.vd.set("visible",y);this.Cha();c&&this.dua();var d=b.get("children");b.set("children",d.concat([this.vd]));var e=this;a.defer(function(){e.vd.set("visible",n)})};t.prototype.Cha=function(){var a=this.k("modal"),b=this.k("veilShowEffect"),c=this.k("veilHideEffect");a&&b?this.vd.set("showEffect",b):this.vd.set("showEffect",r);a&&c?this.vd.set("hideEffect",c):this.vd.set("hideEffect",r)};t.prototype.hide=function(){this.get("visible")&&this.trigger(c.u_);
this.KL=0;this.WK(y);this.set("visible",y)};t.prototype.dua=function(){this.set("centerX",0);this.set("centerY",0)};t.prototype.get=function(a,b){return a=="children"?this.eQ.get(a,b):i.prototype.get.call(this,a,b)};t.u1={headerBackgroundOpacity:"backgroundOpacity",headerBackgroundColor:"backgroundColor",headerBackgroundColorRatios:"backgroundColorRatios",headerBackgroundColorDirection:"backgroundColorDirection",headerBorderSize:"borderSize",headerBorderLeftSize:"borderLeftSize",headerBorderTopSize:"borderTopSize",
headerBorderRightSize:"borderRightSize",headerBorderBottomSize:"borderBottomSize",headerBorderColor:"borderColor",headerBorderLeftColor:"borderLeftColor",headerBorderTopColor:"borderTopColor",headerBorderRightColor:"borderRightColor",headerBorderBottomColor:"borderBottomColor",headerHeight:"height",headerPaddingLeft:"paddingLeft",headerPaddingTop:"paddingTop",headerPaddingRight:"paddingRight",headerPaddingBottom:"paddingBottom",headerVerticalAlign:"verticalAlign"};t.t1=a(t.u1).keys();t.qP={borderRadius:"borderTopRadius",
borderTopRadius:"borderTopRadius",borderLeftRadius:"borderTopLeftRadius",borderRightRadius:"borderTopRightRadius",borderTopLeftRadius:"borderTopLeftRadius",borderTopRightRadius:"borderTopRightRadius"};t.pP=["borderLeftRadius","borderRightRadius","borderTopLeftRadius","borderTopRightRadius","borderTopRadius","borderRadius"];t.M1={title:"text",titleFontFamily:"fontFamily",titleFontSize:"fontSize",titleFontColor:"fontColor",titleFontWeight:"fontWeight",titleFontStyle:"fontStyle",titleHorizontalAlign:"horizontalAlign",
titlePaddingLeft:"paddingLeft",titlePaddingTop:"paddingTop",titlePaddingRight:"paddingRight",titlePaddingBottom:"paddingBottom",titleTextDecoration:"textDecoration",titleTextShadowColor:"textShadowColor",titleTextShadowHorizontalLength:"textShadowHorizontalLength",titleTextShadowVerticalLength:"textShadowVerticalLength",titleTextShadowBlurRadius:"textShadowBlurRadius",titleTextShadowOpacity:"textShadowOpacity"};t.L1=a(t.M1).keys();t.o1={closeButtonBackgroundColor:"backgroundColor",closeButtonBackgroundColorDirection:"backgroundColorDirection",
closeButtonBackgroundColorRatios:"backgroundColorRatios",closeButtonBackgroundOpacity:"backgroundOpacity",closeButtonBorderColor:"borderColor",closeButtonBorderRadius:"borderRadius",closeButtonBorderSize:"borderSize",closeButtonHeight:"height",closeButtonIconColor:"iconColor",closeButtonIconHeight:"iconHeight",closeButtonIconLineWidth:"iconLineWidth",closeButtonIconWidth:"iconWidth",closeButtonOpacity:"opacity",closeButtonWidth:"width",closeButtonPaddingBottom:"paddingBottom",closeButtonPaddingLeft:"paddingLeft",
closeButtonPaddingRight:"paddingRight",closeButtonPaddingTop:"paddingTop",closeButtonRollOverBackgroundColor:"rollOverBackgroundColor",closeButtonRollOverBackgroundColorDirection:"rollOverBackgroundColorDirection",closeButtonRollOverBackgroundColorRatios:"rollOverBackgroundColorRatios",closeButtonRollOverBackgroundOpacity:"rollOverBackgroundOpacity",closeButtonRollOverBorderColor:"rollOverBorderColor",closeButtonRollOverBorderSize:"rollOverBorderSize",closeButtonRollOverIconColor:"rollOverIconColor",
closeButtonRollOverIconLineWidth:"rollOverIconLineWidth",closeButtonRollOverOpacity:"rollOverOpacity",closeButtonPressedBackgroundColor:"pressedBackgroundColor",closeButtonPressedBackgroundColorDirection:"pressedBackgroundColorDirection",closeButtonPressedBackgroundColorRatios:"pressedBackgroundColorRatios",closeButtonPressedBackgroundOpacity:"pressedBackgroundOpacity",closeButtonPressedBorderColor:"pressedBorderColor",closeButtonPressedBorderSize:"pressedBorderSize",closeButtonPressedIconColor:"pressedIconColor",
closeButtonPressedIconLineWidth:"pressedIconLineWidth",closeButtonPressedOpacity:"pressedOpacity"};t.n1=a(t.o1).keys();t.q1={footerBackgroundOpacity:"backgroundOpacity",footerBackgroundColor:"backgroundColor",footerBackgroundColorRatios:"backgroundColorRatios",footerBackgroundColorDirection:"backgroundColorDirection",footerBorderSize:"borderSize",footerBorderLeftSize:"borderLeftSize",footerBorderTopSize:"borderTopSize",footerBorderRightSize:"borderRightSize",footerBorderBottomSize:"borderBottomSize",
footerBorderColor:"borderColor",footerBorderLeftColor:"borderLeftColor",footerBorderTopColor:"borderTopColor",footerBorderRightColor:"borderRightColor",footerBorderBottomColor:"borderBottomColor",footerHeight:"height"};t.p1=a(t.q1).keys();t.s1={borderRadius:"borderBottomRadius",borderBottomRadius:"borderBottomRadius",borderLeftRadius:"borderBottomLeftRadius",borderRightRadius:"borderBottomRightRadius",borderBottomLeftRadius:"borderBottomLeftRadius",borderBottomRightRadius:"borderBottomRightRadius"};
t.r1=["borderLeftRadius","borderRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderBottomRadius","borderRadius"];t.k1={bodyBackgroundOpacity:"backgroundOpacity",bodyBackgroundColor:"backgroundColor",bodyBackgroundColorRatios:"backgroundColorRatios",bodyBackgroundColorDirection:"backgroundColorDirection",bodyBorderSize:"borderSize",bodyBorderLeftSize:"borderLeftSize",bodyBorderTopSize:"borderTopSize",bodyBorderRightSize:"borderRightSize",bodyBorderBottomSize:"borderBottomSize",
bodyBorderColor:"borderColor",bodyBorderLeftColor:"borderLeftColor",bodyBorderTopColor:"borderTopColor",bodyBorderRightColor:"borderRightColor",bodyBorderBottomColor:"borderBottomColor",bodyPaddingLeft:"paddingLeft",bodyPaddingTop:"paddingTop",bodyPaddingRight:"paddingRight",bodyPaddingBottom:"paddingBottom",overflow:"overflow",scrollBarColor:"scrollBarColor",scrollBarWidth:"scrollBarWidth",scrollBarMargin:"scrollBarMargin",scrollBarHorizontalMargin:"scrollBarHorizontalMargin",scrollBarVerticalMargin:"scrollBarVerticalMargin",
scrollBarOpacity:"scrollBarOpacity",gap:"gap"};t.j1=a(t.k1).keys();t.l1={layout:"layout",horizontalAlign:"horizontalAlign",verticalAlign:"verticalAlign"};t.sga=a(t.l1).keys();t.O1={veilOpacity:"backgroundOpacity",veilColor:"backgroundColor",veilColorRatios:"backgroundColorRatios",veilColorDirection:"backgroundColorDirection"};t.N1=a(t.O1).keys();t.nb=function(){var b={modal:y,visible:y,centerX:0,centerY:0,veilShowEffect:m,veilHideEffect:m};a.defaults(b,g.nb);for(var c=[].concat(t.t1,t.L1,t.n1,t.j1,
t.p1,t.N1),d=0;d<c.length;d++)b[c[d]]=m;return b}();t.prototype.za=function(){this.$j(t.nb)};t.prototype.Fa=function(){i.prototype.Fa.call(this);if(this.Uh==r){this.Uh=new k;this.Uh.set("width","100%");this.Uh.bind(c.Eb,this.cma,this);this.la(this.Uh)}if(this.YD==r){this.YD=new o;this.YD.set("width","100%");this.Uh.la(this.YD)}if(this.lx==r){this.lx=new p;this.lx.M({horizontalAlign:f.Mc,verticalAlign:f.tc});this.lx.bind(c.U,this.Nia,this);this.Uh.la(this.lx)}if(this.Cq==r){this.Cq=this.eQ;this.Cq.M({width:"100%",
height:"100%"});this.la(this.Cq)}if(this.Gx==r){this.Gx=new g;this.Gx.set("width","100%");this.la(this.Gx)}};t.prototype.sta=function(){this.KL++;setTimeout(function(){this.KL>0&&this.hide()}.bind(this),100)};t.prototype.yta=function(){this.KL--};t.prototype.Nia=function(){this.hide()};t.prototype.cma=function(a){this.HS=a.pageX;this.IS=a.pageY;this.Ra().bind(c.Nc,this.Yaa,this,n);this.Ra().bind(c.ec,this.Zaa,this,n)};t.prototype.Yaa=function(a){this.set("centerX",this.get("centerX")+(a.pageX-this.HS));
this.set("centerY",this.get("centerY")+(a.pageY-this.IS));this.HS=a.pageX;this.IS=a.pageY;this.Iaa()};t.prototype.Zaa=function(){this.Ra().unbind(c.Nc,this.Yaa,this);this.Ra().unbind(c.ec,this.Zaa,this)};t.prototype.Naa=function(){this.BL()};t.prototype.tta=function(){this.set("visible",n)};t.prototype.Maa=function(){this.vd.unbind(c.vb,this.Naa,this);var a=this.vd.getParent();a&&a.removeChild(this.vd);this.trigger(new d(c.Xs))};t.prototype.Bta=function(){this.Iaa()};t.prototype.Cta=function(){this.WK(n)};
t.prototype.zta=function(){this.vd.set("visible",y)};t.prototype.WK=function(a){this.c$=a;this.Jaa()};t.prototype.Jaa=function(){i.prototype.set.call(this,"shadow",this.c$&&this.d$)};t.prototype.BL=function(a){a||(a=this.Q);this.FX!==m?i.prototype.set.call(this,"maxWidth",this.FX):a?i.prototype.set.call(this,"maxWidth",a.Aa()):i.prototype.set.call(this,"maxWidth",m);this.EX!==m?i.prototype.set.call(this,"maxHeight",this.EX):a?i.prototype.set.call(this,"maxHeight",a.eb()):i.prototype.set.call(this,
"maxHeight",m)};t.prototype.Iaa=function(){var a=this.vd.Aa(),b=this.Aa(),c=this.get("centerX"),b=a*0.5+c-b*0.5,d=this.Uh.ti(),e=this.Uh.Aa(),f=Math.min(e,30),a=a-d-f,d=-(d+e-f);b<d?this.set("centerX",c+(d-b)):b>a&&this.set("centerX",c-(b-a));a=this.vd.eb();b=this.eb();c=this.get("centerY");b=a*0.5+c-b*0.5;d=this.Uh.yn();e=this.Uh.eb();f=Math.min(e,5);a=a-d-f;d=-(d+e-f);b<d?this.set("centerY",c+(d-b)):b>a&&this.set("centerY",c-(b-a))};t.prototype.ja=function(){this.hb(t.t1,t.u1,[this.Uh],n,n);this.hb(t.pP,
t.qP,[this.Uh],n,y);this.get("headerHeight")===0?this.hb(t.pP,t.qP,[this.Cq],n,y):this.hb(t.pP,t.qP,[this.Uh],n,y);this.hb(t.L1,t.M1,[this.YD],n,n);this.hb(t.n1,t.o1,[this.lx],n,n);this.hb(t.j1,t.k1,[this.Cq],n,n);this.hb(t.sga,t.l1,[this.Cq],n,y);this.hb(t.p1,t.q1,[this.Gx],n,n);this.get("footerHeight")===0?this.hb(t.r1,t.s1,[this.Cq],n,y):this.hb(t.r1,t.s1,[this.Gx],n,y);if(this.k("modal")){this.hb(t.N1,t.O1,[this.vd],n,n);this.vd.set("contentOpaque",n)}else{this.vd.set("backgroundOpacity",0);this.vd.set("contentOpaque",
y)}this.M({layout:e.kf,horizontalAlign:f.Mc,verticalAlign:f.tc});i.prototype.ja.call(this);this.hk.xN(0)};return t});
define("dp",["do","fg","jD","dW","ll"],function(a,b,c,d,f){a=b.extend(c,function(){c.call(this)});d.A("Window",a).B("Container").K({modal:"bool",headerBackgroundOpacity:"number",headerBackgroundColor:"or[array[color], color]",headerBackgroundColorRatios:"array[number]",headerBackgroundColorDirection:"enum[horizontal, vertical]",headerBorderSize:"number",headerBorderLeftSize:"number",headerBorderTopSize:"number",headerBorderRightSize:"number",headerBorderBottomSize:"number",headerBorderColor:"color",
headerBorderLeftColor:"color",headerBorderTopColor:"color",headerBorderRightColor:"color",headerBorderBottomColor:"color",headerHeight:"number",headerPaddingLeft:"number",headerPaddingTop:"number",headerPaddingRight:"number",headerPaddingBottom:"number",headerVerticalAlign:"enum[bottom, middle, top]",title:"string",titleFontFamily:"string",titleFontSize:"or[number, size]",titleFontColor:"color",titleFontWeight:"enum[bold, bolder, lighter, 100, 200, 300, 400, 500, 600, 700, 800, 900, normal]",titleFontStyle:"enum[italic, normal]",
titleHorizontalAlign:"enum[left, center, right]",titlePaddingLeft:"number",titlePaddingTop:"number",titlePaddingRight:"number",titlePaddingBottom:"number",titleTextDecoration:"enum[underline, overline, line-through, none]",titleTextShadowBlurRadius:"number",titleTextShadowColor:"color",titleTextShadowHorizontalLength:"number",titleTextShadowOpacity:"number",titleTextShadowVerticalLength:"number",closeButtonBackgroundColor:"or[array[color], color]",closeButtonBackgroundColorDirection:"enum[horizontal, vertical]",
closeButtonBackgroundColorRatios:"array[number]",closeButtonBackgroundOpacity:"number",closeButtonBorderColor:"color",closeButtonBorderRadius:"number",closeButtonBorderSize:"number",closeButtonHeight:"number",closeButtonIconColor:"color",closeButtonIconHeight:"number",closeButtonIconLineWidth:"number",closeButtonIconWidth:"number",closeButtonOpacity:"number",closeButtonWidth:"number",closeButtonPaddingBottom:"number",closeButtonPaddingLeft:"number",closeButtonPaddingRight:"number",closeButtonPaddingTop:"number",
closeButtonRollOverBackgroundColor:"or[array[color], color]",closeButtonRollOverBackgroundColorDirection:"enum[horizontal, vertical]",closeButtonRollOverBackgroundColorRatios:"array[number]",closeButtonRollOverBackgroundOpacity:"number",closeButtonRollOverBorderColor:"color",closeButtonRollOverBorderSize:"number",closeButtonRollOverIconColor:"color",closeButtonRollOverIconLineWidth:"number",closeButtonRollOverOpacity:"number",closeButtonPressedBackgroundColor:"or[array[color], color]",closeButtonPressedBackgroundColorDirection:"enum[horizontal, vertical]",
closeButtonPressedBackgroundColorRatios:"array[number]",closeButtonPressedBackgroundOpacity:"number",closeButtonPressedBorderColor:"color",closeButtonPressedBorderSize:"number",closeButtonPressedIconColor:"color",closeButtonPressedIconLineWidth:"number",closeButtonPressedOpacity:"number",footerBackgroundOpacity:"number",footerBackgroundColor:"or[array[color], color]",footerBackgroundColorRatios:"array[number]",footerBackgroundColorDirection:"enum[horizontal, vertical]",footerBorderSize:"number",footerBorderLeftSize:"number",
footerBorderTopSize:"number",footerBorderRightSize:"number",footerBorderBottomSize:"number",footerBorderColor:"color",footerBorderLeftColor:"color",footerBorderTopColor:"color",footerBorderRightColor:"color",footerBorderBottomColor:"color",footerHeight:"number",bodyBackgroundOpacity:"number",bodyBackgroundColor:"or[array[color], color]",bodyBackgroundColorRatios:"array[number]",bodyBackgroundColorDirection:"enum[horizontal, vertical]",bodyBorderSize:"number",bodyBorderLeftSize:"number",bodyBorderTopSize:"number",
bodyBorderRightSize:"number",bodyBorderBottomSize:"number",bodyBorderColor:"color",bodyBorderLeftColor:"color",bodyBorderTopColor:"color",bodyBorderRightColor:"color",bodyBorderBottomColor:"color",bodyPaddingLeft:"number",bodyPaddingTop:"number",bodyPaddingRight:"number",bodyPaddingBottom:"number",veilOpacity:"number",veilColor:"or[array[color], color]",veilColorRatios:"array[number]",veilColorDirection:"enum[horizontal, vertical]",veilHideEffect:"Effect",veilShowEffect:"Effect"}).aq(["titleFontSize"]).Ag({show:a.prototype.show,
hide:a.prototype.hide}).Vb([f.u_,f.Xs]);return a});
define("kb","require,jquery.mod,do,ih,ll,ge,bZ,eO,V,kX,bq,id,jn,r,fg".split(","),function(a){function b(a){this.source=a;this.width=this.source.get("width");this.height=this.source.get("height");this.url=this.source.get("url");this.uz=this.source.get("grayscale");this.Op=new q(g.Sj)}var c=a("jquery.mod"),d=a("do"),f=a("ih"),e=a("ll"),g=a("ge"),k=a("bZ"),i=a("eO"),p=a("V"),j=a("kX"),l=a("bq"),q=a("id"),o=a("jn"),t=a("r"),s=a("fg"),u=s.extend(i,function(){i.call(this);this.BJ=this.BJ.bind(this);this.De=
r;this.kr=[];this.bj=[];this.Ya=this.Na=this.fc=this.bc=100;this.sd=1;this.Hq=this.Gq=0.5;this.pc=1;this.Eg=this.ng=r;this.cK=y;this.UQ={};this.qx={};this.qx.low={};this.qx.hight={};if(t.bz()==t.cA){this.qx.low.transform="translateZ(0)";this.qx.hight.transform=""}this.W=y;this.of="inherit";this.J=c("<div/>").css({position:"absolute",left:0,top:0,right:0,bottom:0,overflow:"hidden"});this.BB=r;this.ed=s.jm(this.L,this)});u.prototype.Cb=Q("J");u.prototype.Qs=function(a){if(this.Ed!=a){this.Ed=a;this.TP(1);
this.ed()}};u.prototype.Rxa=function(a){if(this.of!=a){this.of=a;this.Eg&&this.Eg.css("cursor",this.of);this.ng&&this.ng.css("cursor",this.of)}};u.prototype.dya=function(a){if(this.kr!=a){this.kr&&f.$b(this.kr,["levels.url"],this.BJ,n);(this.kr=a)&&f.Rb(this.kr,["levels.url"],this.BJ,n)}};u.prototype.BJ=function(){this.vQ();this.De=r;if(this.ng){this.ng.detach();this.ng=r}if(this.Eg){this.Eg.detach();this.Eg=r}if(this.Ee)this.Ee=r;this.vQ();this.cK=y;d(this.bj).each(function(a){a.Op.cancel();a.Op.unbind(e.T,
this.S5,this)},this);var a=(this.kr&&this.kr.get("levels")||[]).filter(function(a){return a.get("url")});this.bj=d(a).map(function(a){a=new b(a);a.Op.bind(e.T,this.S5,this);return a},this);if(a=this.ola()){this.Na=a.width;this.Ya=a.height}else this.Ya=this.Na=100;this.Hq=this.Gq=0.5;this.TP(1);this.ed()};u.prototype.mw=function(a,b){if(this.bc!=a||this.fc!=b){this.bc=a;this.fc=b;this.ed()}};u.prototype.Sxa=function(a,b){if(this.G3!=a||this.F3!=b){this.G3=a;this.F3=b;this.ed()}};u.prototype.nd=function(a){if(this.W!=
a){this.W=a;this.ed()}};u.prototype.move=function(a,b){var c=this.sd*this.pc;this.Gq=this.Gq+a/(this.Na*c);this.Hq=this.Hq+b/(this.Ya*c);this.yK()};u.prototype.Tv=Q("pc");u.prototype.setScale=function(a){this.TP(Math.max(1,Math.min(1/this.sd,a)));this.De&&this.De.width<this.pc*this.sd*this.Na&&this.De.width<this.Na?this.L():this.yK()};u.prototype.$ca=function(a){if(!this.ng)return y;var b=this.ng.offset(),c=a.pageX-b.left,a=a.pageY-b.top;return c>=0&&a>=0&&c<this.ng.width()&&a<this.ng.height()};u.prototype.L=
function(){if(this.W){this.ita();var a=this.sla();if(a&&a.Op.Mp()){if(a!=this.De){if(!this.De){this.ed();this.cK=n}this.Nja(a);this.De=a}this.O9(r)}else this.O9(a);this.yK()}};u.prototype.ita=function(){var a;switch(this.Ed){case o.Wk:a=this.bc/this.Na;break;case o.ih:a=this.fc/this.Ya;break;case o.tm:a=this.Na*this.fc>this.Ya*this.bc?this.fc/this.Ya:this.bc/this.Na;break;case o.hfa:a=Math.min(this.G3/this.Na,this.F3/this.Ya);break;default:a=this.Na*this.fc>this.Ya*this.bc?this.bc/this.Na:this.fc/
this.Ya}this.zha(a)};u.prototype.S5=function(){this.ed()};u.prototype.Nja=function(a){if(this.Eg){this.KV(this.Eg,1);this.ng&&this.ng.detach();this.ng=this.Eg}this.Eg=this.nja(a);this.KV(this.Eg,0);this.J.append(this.Eg);this.Ee=this.hja();this.UQ={}};u.prototype.sla=function(){return this.De?this.Mka(this.pc*this.sd*this.Na):this.Lla()};u.prototype.O9=function(a){d(this.bj).each(function(b){b==a?b.Op.Bj()!=b.url&&b.Op.load(b.url):b.Op.Mp()||b.Op.cancel()})};u.prototype.ola=function(){return d(this.bj).reduce(function(a,
b){a||(a=b);if(b.width>a.width||b.width==a.width&&!b.uz&&a.uz)a=b;return a},r)};u.prototype.Lla=function(){return d(this.bj).reduce(function(a,b){a||(a=b);if(b.width<a.width||b.width==a.width&&b.uz&&!a.uz)a=b;return a},r)};u.prototype.Mka=function(a){return d(this.bj).reduce(function(b,c){b||(b=c);if(c.width>=a&&b.width<a||c.width>=a&&c.width<b.width||c.width<a&&c.width>b.width||!c.uz&&b.uz)b=c;return b},r)};u.prototype.nja=function(a){a=c(a.Op.ve(n));a.css({position:"absolute",cursor:this.of,"pointer-events":"none"});
return a};u.prototype.hja=function(){return new j("linear",[new l("alpha",0,1)],200)};u.prototype.yK=function(){p.La(function(a){this.uK(a,"low")},this)};u.prototype.uY=function(){return this.Na*this.pc*this.sd};u.prototype.tY=function(){return this.Ya*this.pc*this.sd};u.prototype.Pba=function(){var a=this.uY();return a>this.bc?Math.max(this.bc-a,Math.min(0,this.bc*0.5-a*this.Gq)):(this.bc-a)*0.5};u.prototype.Qba=function(){var a=this.tY();return a>this.fc?Math.max(this.fc-a,Math.min(0,this.fc*0.5-
a*this.Hq)):(this.fc-a)*0.5};u.prototype.uK=function(a,b){var b=b||"low",c=this.uY(),d=this.Pba(),f=this.tY(),g=this.Qba();this.Gq=(this.bc*0.5-d)/c;this.Hq=(this.fc*0.5-g)/f;var c={left:Math.round(d)+"px",top:Math.round(g)+"px",width:Math.round(c)+"px",height:Math.round(f)+"px",display:"block"},i;for(i in this.qx[b])c[i]=this.qx[b][i];if(this.UQ!=c){this.ng&&this.ng.css(c);this.Eg&&this.Eg.css(c);this.UQ=c}this.vQ();if(this.Ee){this.Ee.fb(a);this.KV(this.Eg,this.Ee.Bb("alpha"));if(this.Ee.Qe()){this.Ee=
r;this.ng&&this.ng.detach();this.ng=this.Eg;this.Eg=r}this.yK()}else b=="low"&&this.tra();if(!this.Ee&&this.cK){this.cK=y;this.trigger(new k(e.T))}};u.prototype.KV=function(a,b){a.css({opacity:b,filter:"alpha(opacity="+Math.round(b*100)+")","-ms-filter":"alpha(opacity="+Math.round(b*100)+")"})};u.prototype.vQ=function(){if(this.BB!=r){clearTimeout(this.BB);this.BB=r}};u.prototype.tra=function(){var a=this;this.BB=setTimeout(function(){a.BB=r;a.uK(50,"hight")},50)};u.prototype.TP=function(a){if(this.pc!=
a){this.pc=a;this.rsa()}};u.prototype.zha=function(a){if(this.sd!=a)this.sd=a};u.prototype.rsa=function(){this.trigger(new k(u.gA,{scale:this.pc}))};u.gA="scaleChange";return u});
define("hV","require,jquery.mod,ll,bZ,kb,fg,d,J".split(","),function(a){a("jquery.mod");var b=a("ll"),c=a("bZ"),d=a("kb"),f=a("fg"),e=a("d"),g=a("J"),k=f.extend(e,function(){e.call(this);this.Uc("ZoomImage");this.fp=this.mj=m;this.ji=y;this.y8=m;this.y5=this.pc;this.wE=r;this.g=new d;this.g.bind(b.T,this.doa,this);this.g.bind(d.gA,this.eoa,this);this.Pa().append(this.g.Cb());this.bind(b.vb,this.jb,this,n);this.bind(b.od,this.th,this,n);this.bind(b.zd,this.qh,this,n);this.bind(b.Eb,this.mc,this,n);
this.bind(b.Nc,this.Lg,this,n);this.bind(b.ec,this.Mg,this,n);this.bind(b.nq,this.Au,this,n);this.bind(b.Ew,this.gu,this,n)});k.prototype.set=function(a,b){switch(a){case "scale":this.g.setScale(b);b=this.g.Tv();break;case "imageLeft":case "imageTop":case "imageWidth":case "imageHeight":return}e.prototype.set.call(this,a,b)};k.prototype.get=function(a,b){switch(a){case "scale":return this.g.Tv();case "imageLeft":return this.g.Pba();case "imageTop":return this.g.Qba();case "imageWidth":return this.g.uY();
case "imageHeight":return this.g.tY()}return e.prototype.get.call(this,a,b)};k.prototype.za=function(){e.prototype.za.call(this);this.f("image");this.f("scaleMode");this.f("customHeight");this.f("customWidth");this.f("imageCursor");this.f("imageLeft");this.f("imageTop");this.f("imageWidth");this.f("imageHeight")};k.prototype.ja=function(){if(this.n("scaleMode")){this.g.Qs(this.k("scaleMode"));this.q("scaleMode")}if(this.n("image")){this.g.dya(this.k("image"));this.q("image");this.y5=this.pc}if(this.n("customHeight")||
this.n("customWidth")){this.q("customHeight");this.q("customWidth");this.jb()}if(this.n("imageCursor")){this.q("imageCursor");this.g.Rxa(this.ra.iR.Jba(this.get("imageCursor")))}e.prototype.ja.call(this)};k.prototype.jb=function(){var a=this.Aa(),b=this.eb(),c=this.get("customWidth","100%"),d=g.Lk(c),c=d!==m?a*d/100:c,d=this.get("customHeight","100%"),e=g.Lk(d);this.g.Sxa(c,e!==m?b*e/100:d);this.g.mw(a,b)};k.prototype.th=function(){this.g.nd(n)};k.prototype.qh=function(){this.g.nd(y)};k.prototype.mc=
function(a){this.mj=a.x;this.fp=a.y;this.ji=n;this.y8=this.g.$ca(a)};k.prototype.Lg=function(a){if(this.ji){this.qX();this.g.move(-(a.x-this.mj),-(a.y-this.fp));this.mj=a.x;this.fp=a.y}};k.prototype.Mg=function(a){this.ji=y;!this.y8&&!this.g.$ca(a)&&this.trigger(new c(k.J_))};k.prototype.Au=function(a){this.qX();this.g.setScale((1+a.Dp/20)*this.g.Tv())};k.prototype.gu=function(a){this.qX();this.g.setScale(a.scale/this.y5)};k.prototype.doa=function(){this.trigger(new c(b.T))};k.prototype.eoa=function(){e.prototype.set.call(this,
"scale",this.g.Tv());this.trigger(new c(k.gA))};k.prototype.qX=function(){if(this.wE){clearTimeout(this.wE);this.wE=r}else this.trigger(new c(k.Ae));this.wE=setTimeout(function(){this.wE=r;this.trigger(new c(k.ze))}.bind(this),300)};k.J_="backgroundClick";k.gA="scaleChange";k.Ae="userInteractionStart";k.ze="userInteractionEnd";return k});
define("kH",["fg","ll","hV","dW"],function(a,b,c,d){a=a.extend(c,function(){c.call(this)});d.A("ZoomImage",a).B("UIComponent").K({scaleMode:"enum[fit_inside, fit_outside, fit_to_width, fit_to_height, custom]",customHeight:"or[number,percent]",customWidth:"or[number,percent]",image:"ImageResource",imageCursor:"enum[default, hand]",imageHeight:"number",imageLeft:"number",imageTop:"number",imageWidth:"number",scale:"number"}).Vb([c.J_,c.gA,c.Ae,c.ze,b.T]);return Image});
define("gV","gH,dw,dN,kU,hq,ey,gb,hc,hM,jc,la,fB,gh,fo,es,cH,bm,kC,ht,jG,en,n,gZ,df,gy,jU,hx,kl,gs,jh,fy,F,cj,q,iW,eM,P,hR,bk,Z,kk,kR,dY,jj,gX,bu,kV,kh,ix,I,lG,du,gN,bE,he,lA,hA,gA,m,if,gd,jC,gC,lE,fE,ir,bf,cf,bw,iR,gz,ly,eN,kZ,cb,cc,iO,ex,hl,gp,hP,fd,iV,kr,fX,hY,im,eG,gE,bQ,dM,dl,K,lm,cY,br,gK,el,cX,hX,dP,jI,jo,ec,fj,iz,bO,gu,kI,jz,kL,T,fa,cF,jV,gc,hj,hN,fI,bG,v,cP,bx,hH,hm,le,ew,ft,bM,iE,e,dz,fM,bl,bP,dp,kH".split(","),R(n));
define("eU","require,do,jquery.mod,fg,dW,bF,gV,jt".split(","),function(a){function b(a,b){this.type=a;this.stack=b}function c(){}var d=a("do"),f=a("jquery.mod"),e=a("fg"),g=a("dW"),k=a("bF");a("gV");a("jt");c.prototype.Wwa=function(a,b,c,d){this.MR=[];this.Yr=this.vy(a);this.nr=m;if(this.Yr.Cp.Tba()){k.Fza(a);this.nr=this.u4(this.Yr,i.Tj);this.qja(this.nr,this.Yr,b,c,d);this.uha(this.Yr);this.sha(this.Yr,this.nr);this.vha(this.nr,this.Yr);this.Kha(this.nr,this.Yr)}else this.Zk("Invalid root class",
[]);return this.MR.length==0};c.prototype.Ra=function(){return this.Yr.Id};c.prototype.vy=function(a,b){b=b||[];return d(a).isArray()?this.fpa(a,b):f.isPlainObject(a)&&a["class"]?this.ipa(a,b):f.isPlainObject(a)?this.gpa(a,b):d(a).isFunction()?this.hpa(a,b):this.jpa(a,b)};c.prototype.fpa=function(a,b){for(var c=[],d=0;d<a.length;d++){b.push("Item["+d+"]");c.push(this.vy(a[d],b));b.pop()}return new p(b.slice(),c)};c.prototype.ipa=function(a,b){var c=a["class"],d=g.wn(a["class"]);if(d){var e,c={},f=
{},j;for(j in a){b.push(j);var k=a[j];switch(j){case "class":break;case "scripts":e=this.vy(k,b);break;default:d.hasAttribute(j)?c[j]=this.vy(k,b):d.sca(j)||d.tca(j)?f[j]=this.vy(k,b):this.Zk(d.nz()+" object doesn't have any attribute named "+j,b)}b.pop()}return new i(b.slice(),d,a.id,c,f,e)}this.Zk("Undefined class name: "+c,b.slice());return new q(b.slice(),r)};c.prototype.gpa=function(a,b){var c={},d;for(d in a){b.push(d);c[d]=this.vy(a[d],b);b.pop()}return new j(b.slice(),c)};c.prototype.hpa=
function(a,b){return new l(b.slice(),a)};c.prototype.jpa=function(a,b){return new q(b.slice(),a)};c.prototype.u4=function(a,b){for(var c=!b||a.type==b?[a]:[],d=0,e=a.Oa();d<e.length;d++)c=c.concat(this.u4(e[d],b));return c};c.prototype.qja=function(a,b,c,d,e){b.Id=b.Cp.vs(r,d,e,[c]);b.Id.set("application",b.Id);for(c=0;c<a.length;c++){var f=a[c];if(f!=b)f.Id=f.Cp.vs(b.Id,d,e)}};c.prototype.uha=function(a){if(a.scripts)if(a.scripts.type==j.Tj)for(var b in a.scripts.value)this.tha(a,b);else this.Zk("Invalid content.",
a.scripts.stack)};c.prototype.tha=function(a,b){var c=a.Id,e=a.scripts.value[b];d(c[b]).isUndefined()?e&&e.type==l.Tj?c[b]=function(){return e.Hn().apply(c,arguments)}:this.Zk("Invalid content.",e.stack):this.Zk("Identifier: "+b+" is already in use",e.stack)};c.prototype.sha=function(a,b){for(var c=a.Id,e=0;e<b.length;e++){var f=b[e],g=f.id;if(g)d(c[g]).isUndefined()?c[g]=f.Id:this.Zk("Identifier: "+g+" is arleady in use",f.stack)}};c.prototype.vha=function(a,b){for(var c=0;c<a.length;c++){var d=
a[c],e=d.attributes,f;for(f in e)this.rha(d,f,b)}};c.prototype.rha=function(a,b,c){var d=a.Cp;if(d.hasAttribute(b)){var e=a.attributes[b].Hn();try{e=d.mY(b)(e,c.Id);a.Id.set(b,e)}catch(f){this.Zk("Invalid value for property "+b+" of "+d.nz()+" instance",a.stack)}}else this.Zk(d.nz()+" object doesn't have any property named "+b,a.stack)};c.prototype.Kha=function(a,b){for(var c=0;c<a.length;c++){var d=a[c],e;for(e in d.Jv)this.Jha(d,e,b)}};c.prototype.Jha=function(a,b,c){var e=a.Cp,f=a.Id,g=e.sca(b),
i=e.tca(b);if(g||i){var a=a.Jv[b],j=a.Hn();d(j).isFunction()?f.bind(b,j,c.Id,i,j):typeof j=="string"?f.bind(b,function(){try{eval("var event = arguments[0];"+j)}catch(a){h(a)}},c.Id,i,j):this.Zk("Invalid value.",a.stack)}else this.Zk(e.nz()+" object doesn't have any event named "+b,a.stack)};c.prototype.Zk=function(a,b){this.MR.push("In "+b.join(" >> ")+": "+a)};b.prototype.Oa=function(){return[]};b.prototype.Hn=C();var i=e.extend(b,function(a,c,d,e,f,g){b.call(this,i.Tj,a);this.Cp=c;this.id=d;this.attributes=
e;this.Jv=f;this.scripts=g;this.Id=r});i.prototype.Oa=function(){var a=this.Cp.aca(),b=[],c=d(this.attributes).clone();if(a)for(var e=0;e<a.length;e++){var f=a[e];if(c[f]!=m){b.push(c[f]);delete c[f]}}return b=b.concat(d(c).values())};i.prototype.Hn=Q("Id");i.Tj="instance";var p=e.extend(b,function(a,c){b.call(this,p.Tj,a);this.Ik=c});p.prototype.Oa=function(){return this.Ik.slice()};p.prototype.Hn=function(){for(var a=[],b=0;b<this.Ik.length;b++)a.push(this.Ik[b].Hn());return a};p.Tj="array";var j=
e.extend(b,function(a,c){b.call(this,j.Tj,a);this.value=c});j.prototype.Oa=function(){return d(this.value).values()};j.prototype.Hn=function(){var a={},b;for(b in this.value)a[b]=this.value[b].Hn();return a};j.Tj="dict";var l=e.extend(b,function(a,c){b.call(this,l.Tj,a);this.value=c});l.prototype.Hn=Q("value");l.Tj="function";var q=e.extend(b,function(a,c){b.call(this,q.Tj,a);this.value=c});q.prototype.Hn=Q("value");q.Tj="simple";return c});
define("jW","require,do,ll,bZ,dW,eU,r,dO,jt,bi,fK,kd,lk,ke,fg".split(","),function(a){function b(a,b){g.Xa()&&!g.we()&&o.Yd();var c=l.name,d=[];c&&d.push(c);l.oF>0?d.push("v:"+l.oF+"."+l.sF):d.push("v:"+l.sF);t.log(d.join(" "));this.Nk=b;if(i.mwa()||[g.zw,g.iq].indexOf(g.browser())>=0){this.vh=new e;if(c=this.Nk.get(TDV.PlayerSettings.BASE_DIR_URL)){c=i.Ss(c);c[c.length-1]!="/"&&(c=c+"/")}else c=i.getDirectory(this.Nk.get(TDV.PlayerSettings.SELECTED_SCRIPT_URL));this.Ida=this.Nk.get(TDV.PlayerSettings.QUERY_STRING_PARAMETERS);
k.ixa(c,function(b){this.eba=b;this.Goa(a)}.bind(this))}else window.alert(q("web-server-required"))}var c=a("do"),d=a("ll");a("bZ");var f=a("dW"),e=a("eU"),g=a("r"),k=a("dO"),i=a("jt"),p=a("bi"),j=a("fK"),l=a("kd"),q=a("lk"),o=a("ke"),t=a("fg");b.prototype.Goa=function(a){a.trigger(new TDV.FG(d.Zfa,{},[],m));c.defer(function(){if(!this.vh.Wwa(this.Nk.get(TDV.PlayerSettings.SCRIPT_DATA),this.Nk.get(TDV.PlayerSettings.CONTAINER),this.eba,this.Ida)){if(l.iza!="false"){window.alert(this.Z4());return}t.log(this.Z4())}this.Iha(a);
this.nha(this.Nk);this.xha();p.im(function(){this.tsa()}.bind(this))}.bind(this))};b.prototype.clear=function(){if(this.vh){this.vh.nr.forEach(function(a){a.Id.Sea();a.Cp.$E().forEach(function(b){switch(b){case "VideoPlayer":a.Id.stop();case "MapPlayer":case "PanoramaPlayer":case "PhotoAlbumPlayer":case "VideoPlayer":a.Id.set("viewerArea",r);break;case "ZoomImage":a.Id.set("image",r);break;case "Audio":a.Id.stop();break;case "Effect":a.Id.end();break;case "Media":a.Id.vxa()}})});j.bxa();this.vh.Ra().clear();
s={};this.Nk=this.vh=r}};b.prototype.Cva=function(a){return this.vh.Ra()[a]};b.prototype.eca=function(a){if(a in s)return s[a].slice();var b=[];this.vh&&this.vh.nr.forEach(function(d){var e=d.Cp.$E();c(e).contains(a)&&b.push(d.Id)});s[a]=b;return b.slice()};var s={};b.prototype.vs=function(a){var b=f.wn(a);b||h("Invalid className: "+a);s={};return b.vs(this.vh.Ra(),this.eba,this.Ida)};b.prototype.Z4=function(){for(var a=this.vh.MR,b=["Errors parsing script file:"],c=0;c<a.length;c++)b.push(a[c]);
return b.join("\n")};b.prototype.Iha=function(a){this.vh.nr.forEach(function(b){var d=b.Cp,e=b.Id,f=b.id,g=d.$E();c.union(d.qY(),d.vY()).forEach(function(b){e.bind(b,function(c){a.trigger(new TDV.FG(b,c,g,f))},this,n)})});var b=this.vh.Ra().EH;b.bind(d.Cw,function(){b.zza(d.Cw);a.cookiesEnabled=a.mua=n;a.trigger(new TDV.FG(d.Cw,{},[],m))},this,n)};b.prototype.nha=function(a){this.vh.Ra().set("settings",a)};b.prototype.xha=function(){var a=this.vh.Ra(),b=this;a.getByClassName=a.wn=function(){return b.eca.apply(b,
arguments)};a.createInstance=a.vs=function(){return b.vs.apply(b,arguments)};a.isInstanceOfClass=a.qb=function(){return f.qb.apply(f,arguments)}};b.prototype.tsa=function(){this.vh.Ra().start()};b.yza=function(a){a.trigger(new TDV.FG(d.Ffa,{},[],m))};return b});define("main",["require","jquery.mod","jW"],function(a){var b=a("jquery.mod"),c=a("jW");b(document).ready(function(){TDV.Da.Jya(c)})});
(function(t,e){e(t.THREE=t.THREE||{})})(this,function(t){"use strict";const e="135",n=100,i=300,r=301,s=302,a=303,o=304,l=306,c=307,h=1e3,u=1001,d=1002,p=1003,m=1004,f=1005,g=1006,v=1007,y=1008,x=1009,_=1012,M=1014,b=1015,w=1016,S=1020,T=1022,E=1023,A=1026,L=1027,R=33776,C=33777,P=33778,D=33779,I=35840,N=35841,z=35842,B=35843,F=37492,O=37496,U=2300,H=2301,G=2302,k=2400,V=2401,W=2402,j=2500,q=2501,X=3e3,J=3001,Y=3007,Z=3002,Q=3004,K=3005,$=3006,tt=7680,et=35044,nt=35048,it="300 es";class rt{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const n=this._listeners[t];if(void 0!==n){const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const e=this._listeners[t.type];if(void 0!==e){t.target=this;const n=e.slice(0);for(let e=0,i=n.length;e<i;e++)n[e].call(this,t);t.target=null}}}const st=[];for(let t=0;t<256;t++)st[t]=(t<16?"0":"")+t.toString(16);let at=1234567;const ot=Math.PI/180,lt=180/Math.PI;function ct(){const t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(st[255&t]+st[t>>8&255]+st[t>>16&255]+st[t>>24&255]+"-"+st[255&e]+st[e>>8&255]+"-"+st[e>>16&15|64]+st[e>>24&255]+"-"+st[63&n|128]+st[n>>8&255]+"-"+st[n>>16&255]+st[n>>24&255]+st[255&i]+st[i>>8&255]+st[i>>16&255]+st[i>>24&255]).toUpperCase()}function ht(t,e,n){return Math.max(e,Math.min(n,t))}function ut(t,e){return(t%e+e)%e}function dt(t,e,n){return(1-n)*t+n*e}function pt(t){return 0==(t&t-1)&&0!==t}function mt(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function ft(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}var gt=Object.freeze({__proto__:null,DEG2RAD:ot,RAD2DEG:lt,generateUUID:ct,clamp:ht,euclideanModulo:ut,mapLinear:function(t,e,n,i,r){return i+(t-e)*(r-i)/(n-e)},inverseLerp:function(t,e,n){return t!==e?(n-t)/(e-t):0},lerp:dt,damp:function(t,e,n,i){return dt(t,e,1-Math.exp(-n*i))},pingpong:function(t,e=1){return e-Math.abs(ut(t,2*e)-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())},seededRandom:function(t){return void 0!==t&&(at=t%2147483647),at=16807*at%2147483647,(at-1)/2147483646},degToRad:function(t){return t*ot},radToDeg:function(t){return t*lt},isPowerOfTwo:pt,ceilPowerOfTwo:mt,floorPowerOfTwo:ft,setQuaternionFromProperEuler:function(t,e,n,i,r){const s=Math.cos,a=Math.sin,o=s(n/2),l=a(n/2),c=s((e+i)/2),h=a((e+i)/2),u=s((e-i)/2),d=a((e-i)/2),p=s((i-e)/2),m=a((i-e)/2);switch(r){case"XYX":t.set(o*h,l*u,l*d,o*c);break;case"YZY":t.set(l*d,o*h,l*u,o*c);break;case"ZXZ":t.set(l*u,l*d,o*h,o*c);break;case"XZX":t.set(o*h,l*m,l*p,o*c);break;case"YXY":t.set(l*p,o*h,l*m,o*c);break;case"ZYZ":t.set(l*m,l*p,o*h,o*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r);}}});class vt{constructor(t=0,e=0){this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t);}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t);}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(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(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(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(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const 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(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(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(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){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(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(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(t,e){const n=Math.cos(e),i=Math.sin(e),r=this.x-t.x,s=this.y-t.y;return this.x=r*n-s*i+t.x,this.y=r*i+s*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}vt.prototype.isVector2=!0;class yt{constructor(){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.")}set(t,e,n,i,r,s,a,o,l){const c=this.elements;return c[0]=t,c[1]=i,c[2]=a,c[3]=e,c[4]=r,c[5]=o,c[6]=n,c[7]=s,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const 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}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const 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}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,s=n[0],a=n[3],o=n[6],l=n[1],c=n[4],h=n[7],u=n[2],d=n[5],p=n[8],m=i[0],f=i[3],g=i[6],v=i[1],y=i[4],x=i[7],_=i[2],M=i[5],b=i[8];return r[0]=s*m+a*v+o*_,r[3]=s*f+a*y+o*M,r[6]=s*g+a*x+o*b,r[1]=l*m+c*v+h*_,r[4]=l*f+c*y+h*M,r[7]=l*g+c*x+h*b,r[2]=u*m+d*v+p*_,r[5]=u*f+d*y+p*M,r[8]=u*g+d*x+p*b,this}multiplyScalar(t){const 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(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8];return e*s*c-e*a*l-n*r*c+n*a*o+i*r*l-i*s*o}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8],h=c*s-a*l,u=a*o-c*r,d=l*r-s*o,p=e*h+n*u+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const m=1/p;return t[0]=h*m,t[1]=(i*l-c*n)*m,t[2]=(a*n-i*s)*m,t[3]=u*m,t[4]=(c*e-i*o)*m,t[5]=(i*r-a*e)*m,t[6]=d*m,t[7]=(n*o-l*e)*m,t[8]=(s*e-n*r)*m,this}transpose(){let t;const 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(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const 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(t,e,n,i,r,s,a){const o=Math.cos(r),l=Math.sin(r);return this.set(n*o,n*l,-n*(o*s+l*a)+s+t,-i*l,i*o,-i*(-l*s+o*a)+a+e,0,0,1),this}scale(t,e){const n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this}rotate(t){const e=Math.cos(t),n=Math.sin(t),i=this.elements,r=i[0],s=i[3],a=i[6],o=i[1],l=i[4],c=i[7];return i[0]=e*r+n*o,i[3]=e*s+n*l,i[6]=e*a+n*c,i[1]=-n*r+e*o,i[4]=-n*s+e*l,i[7]=-n*a+e*c,this}translate(t,e){const 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(t){const e=this.elements,n=t.elements;for(let t=0;t<9;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const 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}clone(){return new this.constructor().fromArray(this.elements)}}function xt(t){if(0===t.length)return-1/0;let e=t[0];for(let n=1,i=t.length;n<i;++n)t[n]>e&&(e=t[n]);return e}yt.prototype.isMatrix3=!0;const _t={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function Mt(t,e){return new _t[t](e)}function bt(t){return document.createElementNS("http://www.w3.org/1999/xhtml",t)}function wt(t,e=0){let n=3735928559^e,i=1103547991^e;for(let e,r=0;r<t.length;r++)e=t.charCodeAt(r),n=Math.imul(n^e,2654435761),i=Math.imul(i^e,1597334677);return n=Math.imul(n^n>>>16,2246822507)^Math.imul(i^i>>>13,3266489909),i=Math.imul(i^i>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),4294967296*(2097151&i)+(n>>>0)}let St;class Tt{static getDataURL(t){if(/^data:/i.test(t.src))return t.src;if("undefined"==typeof HTMLCanvasElement)return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===St&&(St=bt("canvas")),St.width=t.width,St.height=t.height;const n=St.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=St}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}}let Et=0;class At extends rt{constructor(t=At.DEFAULT_IMAGE,e=At.DEFAULT_MAPPING,n=1001,i=1001,r=1006,s=1008,a=1023,o=1009,l=1,c=3e3){super(),Object.defineProperty(this,"id",{value:Et++}),this.uuid=ct(),this.name="",this.image=t,this.mipmaps=[],this.mapping=e,this.wrapS=n,this.wrapT=i,this.magFilter=r,this.minFilter=s,this.anisotropy=l,this.format=a,this.internalFormat=null,this.type=o,this.offset=new vt(0,0),this.repeat=new vt(1,1),this.center=new vt(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new yt,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=c,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return new this.constructor().copy(this)}copy(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.internalFormat=t.internalFormat,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.userData=JSON.parse(JSON.stringify(t.userData)),this}toJSON(t){const e=void 0===t||"string"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];const 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,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){const i=this.image;if(void 0===i.uuid&&(i.uuid=ct()),!e&&void 0===t.images[i.uuid]){let e;if(Array.isArray(i)){e=[];for(let t=0,n=i.length;t<n;t++)i[t].isDataTexture?e.push(Lt(i[t].image)):e.push(Lt(i[t]))}else e=Lt(i);t.images[i.uuid]={uuid:i.uuid,url:e}}n.image=i.uuid}return"{}"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(t){if(this.mapping!==i)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case h:t.x=t.x-Math.floor(t.x);break;case u:t.x=t.x<0?0:1;break;case d: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 h:t.y=t.y-Math.floor(t.y);break;case u:t.y=t.y<0?0:1;break;case d: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}set needsUpdate(t){!0===t&&this.version++}}function Lt(t){return"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?Tt.getDataURL(t):t.data?{data:Array.prototype.slice.call(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}At.DEFAULT_IMAGE=void 0,At.DEFAULT_MAPPING=i,At.prototype.isTexture=!0;class Rt{constructor(t=0,e=0,n=0,i=1){this.x=t,this.y=e,this.z=n,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(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 new Error("index is out of range: "+t);}return this}getComponent(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 new Error("index is out of range: "+t);}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(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(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(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(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(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(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(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(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}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=this.w,s=t.elements;return this.x=s[0]*e+s[4]*n+s[8]*i+s[12]*r,this.y=s[1]*e+s[5]*n+s[9]*i+s[13]*r,this.z=s[2]*e+s[6]*n+s[10]*i+s[14]*r,this.w=s[3]*e+s[7]*n+s[11]*i+s[15]*r,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const 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(t){let e,n,i,r;const s=.01,a=.1,o=t.elements,l=o[0],c=o[4],h=o[8],u=o[1],d=o[5],p=o[9],m=o[2],f=o[6],g=o[10];if(Math.abs(c-u)<s&&Math.abs(h-m)<s&&Math.abs(p-f)<s){if(Math.abs(c+u)<a&&Math.abs(h+m)<a&&Math.abs(p+f)<a&&Math.abs(l+d+g-3)<a)return this.set(1,0,0,0),this;e=Math.PI;const t=(l+1)/2,o=(d+1)/2,v=(g+1)/2,y=(c+u)/4,x=(h+m)/4,_=(p+f)/4;return t>o&&t>v?t<s?(n=0,i=.707106781,r=.707106781):(n=Math.sqrt(t),i=y/n,r=x/n):o>v?o<s?(n=.707106781,i=0,r=.707106781):(i=Math.sqrt(o),n=y/i,r=_/i):v<s?(n=.707106781,i=.707106781,r=0):(r=Math.sqrt(v),n=x/r,i=_/r),this.set(n,i,r,e),this}let v=Math.sqrt((f-p)*(f-p)+(h-m)*(h-m)+(u-c)*(u-c));return Math.abs(v)<.001&&(v=1),this.x=(f-p)/v,this.y=(h-m)/v,this.z=(u-c)/v,this.w=Math.acos((l+d+g-1)/2),this}min(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(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(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(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){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(){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(){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(){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(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(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(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this.w=t.w+(e.w-t.w)*n,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(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}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}Rt.prototype.isVector4=!0;class Ct extends rt{constructor(t,e,n={}){super(),this.width=t,this.height=e,this.depth=1,this.scissor=new Rt(0,0,t,e),this.scissorTest=!1,this.viewport=new Rt(0,0,t,e),this.texture=new At(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.isRenderTargetTexture=!0,this.texture.image={width:t,height:e,depth:1},this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps,this.texture.internalFormat=void 0!==n.internalFormat?n.internalFormat:null,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:g,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}setTexture(t){t.image={width:this.width,height:this.height,depth:this.depth},this.texture=t}setSize(t,e,n=1){this.width===t&&this.height===e&&this.depth===n||(this.width=t,this.height=e,this.depth=n,this.texture.image.width=t,this.texture.image.height=e,this.texture.image.depth=n,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}clone(){return new this.constructor().copy(this)}copy(t){return this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.texture.image={...this.texture.image},this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this}dispose(){this.dispatchEvent({type:"dispose"})}}Ct.prototype.isWebGLRenderTarget=!0;class Pt extends Ct{constructor(t,e,n){super(t,e);const i=this.texture;this.texture=[];for(let t=0;t<n;t++)this.texture[t]=i.clone()}setSize(t,e,n=1){if(this.width!==t||this.height!==e||this.depth!==n){this.width=t,this.height=e,this.depth=n;for(let i=0,r=this.texture.length;i<r;i++)this.texture[i].image.width=t,this.texture[i].image.height=e,this.texture[i].image.depth=n;this.dispose()}return this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e),this}copy(t){this.dispose(),this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.set(0,0,this.width,this.height),this.scissor.set(0,0,this.width,this.height),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this.texture.length=0;for(let e=0,n=t.texture.length;e<n;e++)this.texture[e]=t.texture[e].clone();return this}}Pt.prototype.isWebGLMultipleRenderTargets=!0;class Dt extends Ct{constructor(t,e,n={}){super(t,e,n),this.samples=4,this.ignoreDepthForMultisampleCopy=void 0===n.ignoreDepth||n.ignoreDepth,this.useRenderToTexture=void 0!==n.useRenderToTexture&&n.useRenderToTexture,this.useRenderbuffer=!1===this.useRenderToTexture}copy(t){return super.copy.call(this,t),this.samples=t.samples,this.useRenderToTexture=t.useRenderToTexture,this.useRenderbuffer=t.useRenderbuffer,this}}Dt.prototype.isWebGLMultisampleRenderTarget=!0;class It{constructor(t=0,e=0,n=0,i=1){this._x=t,this._y=e,this._z=n,this._w=i}static slerp(t,e,n,i){return console.warn("THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead."),n.slerpQuaternions(t,e,i)}static slerpFlat(t,e,n,i,r,s,a){let o=n[i+0],l=n[i+1],c=n[i+2],h=n[i+3];const u=r[s+0],d=r[s+1],p=r[s+2],m=r[s+3];if(0===a)return t[e+0]=o,t[e+1]=l,t[e+2]=c,void(t[e+3]=h);if(1===a)return t[e+0]=u,t[e+1]=d,t[e+2]=p,void(t[e+3]=m);if(h!==m||o!==u||l!==d||c!==p){let t=1-a;const e=o*u+l*d+c*p+h*m,n=e>=0?1:-1,i=1-e*e;if(i>Number.EPSILON){const r=Math.sqrt(i),s=Math.atan2(r,e*n);t=Math.sin(t*s)/r,a=Math.sin(a*s)/r}const r=a*n;if(o=o*t+u*r,l=l*t+d*r,c=c*t+p*r,h=h*t+m*r,t===1-a){const t=1/Math.sqrt(o*o+l*l+c*c+h*h);o*=t,l*=t,c*=t,h*=t}}t[e]=o,t[e+1]=l,t[e+2]=c,t[e+3]=h}static multiplyQuaternionsFlat(t,e,n,i,r,s){const a=n[i],o=n[i+1],l=n[i+2],c=n[i+3],h=r[s],u=r[s+1],d=r[s+2],p=r[s+3];return t[e]=a*p+c*h+o*d-l*u,t[e+1]=o*p+c*u+l*h-a*d,t[e+2]=l*p+c*d+a*u-o*h,t[e+3]=c*p-a*h-o*u-l*d,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");const n=t._x,i=t._y,r=t._z,s=t._order,a=Math.cos,o=Math.sin,l=a(n/2),c=a(i/2),h=a(r/2),u=o(n/2),d=o(i/2),p=o(r/2);switch(s){case"XYZ":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case"YXZ":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case"ZXY":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case"ZYX":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case"YZX":this._x=u*c*h+l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h-u*d*p;break;case"XZY":this._x=u*c*h-l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h+u*d*p;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+s);}return!1!==e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const 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(t){const e=t.elements,n=e[0],i=e[4],r=e[8],s=e[1],a=e[5],o=e[9],l=e[2],c=e[6],h=e[10],u=n+a+h;if(u>0){const t=.5/Math.sqrt(u+1);this._w=.25/t,this._x=(c-o)*t,this._y=(r-l)*t,this._z=(s-i)*t}else if(n>a&&n>h){const t=2*Math.sqrt(1+n-a-h);this._w=(c-o)/t,this._x=.25*t,this._y=(i+s)/t,this._z=(r+l)/t}else if(a>h){const t=2*Math.sqrt(1+a-n-h);this._w=(r-l)/t,this._x=(i+s)/t,this._y=.25*t,this._z=(o+c)/t}else{const t=2*Math.sqrt(1+h-n-a);this._w=(s-i)/t,this._x=(r+l)/t,this._y=(o+c)/t,this._z=.25*t}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return n<Number.EPSILON?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(ht(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(0===n)return this;const i=Math.min(1,e/n);return this.slerp(t,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let 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(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(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,i=t._y,r=t._z,s=t._w,a=e._x,o=e._y,l=e._z,c=e._w;return this._x=n*c+s*a+i*l-r*o,this._y=i*c+s*o+r*a-n*l,this._z=r*c+s*l+n*o-i*a,this._w=s*c-n*a-i*o-r*l,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const n=this._x,i=this._y,r=this._z,s=this._w;let a=s*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=s,this._x=n,this._y=i,this._z=r,this;const o=1-a*a;if(o<=Number.EPSILON){const t=1-e;return this._w=t*s+e*this._w,this._x=t*n+e*this._x,this._y=t*i+e*this._y,this._z=t*r+e*this._z,this.normalize(),this._onChangeCallback(),this}const l=Math.sqrt(o),c=Math.atan2(l,a),h=Math.sin((1-e)*c)/l,u=Math.sin(e*c)/l;return this._w=s*h+this._w*u,this._x=n*h+this._x*u,this._y=i*h+this._y*u,this._z=r*h+this._z*u,this._onChangeCallback(),this}slerpQuaternions(t,e,n){this.copy(t).slerp(e,n)}random(){const t=Math.random(),e=Math.sqrt(1-t),n=Math.sqrt(t),i=2*Math.PI*Math.random(),r=2*Math.PI*Math.random();return this.set(e*Math.cos(i),n*Math.sin(r),n*Math.cos(r),e*Math.sin(i))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}It.prototype.isQuaternion=!0;class Nt{constructor(t=0,e=0,n=0){this.x=t,this.y=e,this.z=n}set(t,e,n){return void 0===n&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t);}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t);}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(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(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(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(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(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(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return t&&t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(Bt.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Bt.setFromAxisAngle(t,e))}applyMatrix3(t){const 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}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=t.elements,s=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])*s,this.y=(r[1]*e+r[5]*n+r[9]*i+r[13])*s,this.z=(r[2]*e+r[6]*n+r[10]*i+r[14])*s,this}applyQuaternion(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,a=t.z,o=t.w,l=o*e+s*i-a*n,c=o*n+a*e-r*i,h=o*i+r*n-s*e,u=-r*e-s*n-a*i;return this.x=l*o+u*-r+c*-a-h*-s,this.y=c*o+u*-s+h*-r-l*-a,this.z=h*o+u*-a+l*-s-c*-r,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const 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(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(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(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(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(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){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(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(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(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this}cross(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(t,e){const n=t.x,i=t.y,r=t.z,s=e.x,a=e.y,o=e.z;return this.x=i*o-r*a,this.y=r*s-n*o,this.z=n*a-i*s,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return zt.copy(this).projectOnVector(t),this.sub(zt)}reflect(t){return this.sub(zt.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(ht(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const 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(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const 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(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(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}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,n=Math.sqrt(1-t**2);return this.x=n*Math.cos(e),this.y=n*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}Nt.prototype.isVector3=!0;const zt=new Nt,Bt=new It;class Ft{constructor(t=new Nt(1/0,1/0,1/0),e=new Nt(-1/0,-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,a=-1/0;for(let o=0,l=t.length;o<l;o+=3){const l=t[o],c=t[o+1],h=t[o+2];l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>r&&(r=l),c>s&&(s=c),h>a&&(a=h)}return this.min.set(e,n,i),this.max.set(r,s,a),this}setFromBufferAttribute(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,a=-1/0;for(let o=0,l=t.count;o<l;o++){const l=t.getX(o),c=t.getY(o),h=t.getZ(o);l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>r&&(r=l),c>s&&(s=c),h>a&&(a=h)}return this.min.set(e,n,i),this.max.set(r,s,a),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=Ut.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}setFromObject(t){return this.makeEmpty(),this.expandByObject(t)}clone(){return new this.constructor().copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){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(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(t){return this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}expandByObject(t){t.updateWorldMatrix(!1,!1);const e=t.geometry;void 0!==e&&(null===e.boundingBox&&e.computeBoundingBox(),Ht.copy(e.boundingBox),Ht.applyMatrix4(t.matrixWorld),this.union(Ht));const n=t.children;for(let t=0,e=n.length;t<e;t++)this.expandByObject(n[t]);return this}containsPoint(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(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(t,e){return 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(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(t){return this.clampPoint(t.center,Ut),Ut.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let 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(t){if(this.isEmpty())return!1;this.getCenter(Xt),Jt.subVectors(this.max,Xt),Gt.subVectors(t.a,Xt),kt.subVectors(t.b,Xt),Vt.subVectors(t.c,Xt),Wt.subVectors(kt,Gt),jt.subVectors(Vt,kt),qt.subVectors(Gt,Vt);let e=[0,-Wt.z,Wt.y,0,-jt.z,jt.y,0,-qt.z,qt.y,Wt.z,0,-Wt.x,jt.z,0,-jt.x,qt.z,0,-qt.x,-Wt.y,Wt.x,0,-jt.y,jt.x,0,-qt.y,qt.x,0];return!!Qt(e,Gt,kt,Vt,Jt)&&(e=[1,0,0,0,1,0,0,0,1],!!Qt(e,Gt,kt,Vt,Jt)&&(Yt.crossVectors(Wt,jt),e=[Yt.x,Yt.y,Yt.z],Qt(e,Gt,kt,Vt,Jt)))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return Ut.copy(t).clamp(this.min,this.max).sub(t).length()}getBoundingSphere(t){return this.getCenter(t.center),t.radius=.5*this.getSize(Ut).length(),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(Ot[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Ot[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Ot[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Ot[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Ot[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Ot[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Ot[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Ot[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Ot)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}Ft.prototype.isBox3=!0;const Ot=[new Nt,new Nt,new Nt,new Nt,new Nt,new Nt,new Nt,new Nt],Ut=new Nt,Ht=new Ft,Gt=new Nt,kt=new Nt,Vt=new Nt,Wt=new Nt,jt=new Nt,qt=new Nt,Xt=new Nt,Jt=new Nt,Yt=new Nt,Zt=new Nt;function Qt(t,e,n,i,r){for(let s=0,a=t.length-3;s<=a;s+=3){Zt.fromArray(t,s);const a=r.x*Math.abs(Zt.x)+r.y*Math.abs(Zt.y)+r.z*Math.abs(Zt.z),o=e.dot(Zt),l=n.dot(Zt),c=i.dot(Zt);if(Math.max(-Math.max(o,l,c),Math.min(o,l,c))>a)return!1}return!0}const Kt=new Ft,$t=new Nt,te=new Nt,ee=new Nt;class ne{constructor(t=new Nt,e=-1){this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;void 0!==e?n.copy(e):Kt.setFromPoints(t).getCenter(n);let i=0;for(let e=0,r=t.length;e<r;e++)i=Math.max(i,n.distanceToSquared(t[e]));return this.radius=Math.sqrt(i),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){const e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}clampPoint(t,e){const n=this.center.distanceToSquared(t);return e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){ee.subVectors(t,this.center);const e=ee.lengthSq();if(e>this.radius*this.radius){const t=Math.sqrt(e),n=.5*(t-this.radius);this.center.add(ee.multiplyScalar(n/t)),this.radius+=n}return this}union(t){return te.subVectors(t.center,this.center).normalize().multiplyScalar(t.radius),this.expandByPoint($t.copy(t.center).add(te)),this.expandByPoint($t.copy(t.center).sub(te)),this}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}}const ie=new Nt,re=new Nt,se=new Nt,ae=new Nt,oe=new Nt,le=new Nt,ce=new Nt;class he{constructor(t=new Nt,e=new Nt(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.direction).multiplyScalar(t).add(this.origin)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,ie)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=ie.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(ie.copy(this.direction).multiplyScalar(e).add(this.origin),ie.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){re.copy(t).add(e).multiplyScalar(.5),se.copy(e).sub(t).normalize(),ae.copy(this.origin).sub(re);const r=.5*t.distanceTo(e),s=-this.direction.dot(se),a=ae.dot(this.direction),o=-ae.dot(se),l=ae.lengthSq(),c=Math.abs(1-s*s);let h,u,d,p;if(c>0){if(h=s*o-a,u=s*a-o,p=r*c,h>=0){if(u>=-p){if(u<=p){const t=1/c;h*=t,u*=t,d=h*(h+s*u+2*a)+u*(s*h+u+2*o)+l}else u=r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;}else u=-r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;}else u<=-p?(h=Math.max(0,-(-s*r+a)),u=h>0?-r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l):u<=p?(h=0,u=Math.min(Math.max(-r,-o),r),d=u*(u+2*o)+l):(h=Math.max(0,-(s*r+a)),u=h>0?r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l);}else u=s>0?-r:r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;return n&&n.copy(this.direction).multiplyScalar(h).add(this.origin),i&&i.copy(se).multiplyScalar(u).add(re),d}intersectSphere(t,e){ie.subVectors(t.center,this.origin);const n=ie.dot(this.direction),i=ie.dot(ie)-n*n,r=t.radius*t.radius;if(i>r)return null;const s=Math.sqrt(r-i),a=n-s,o=n+s;return a<0&&o<0?null:a<0?this.at(o,e):this.at(a,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return null===n?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);if(0===e)return!0;return t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,i,r,s,a,o;const l=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,u=this.origin;return l>=0?(n=(t.min.x-u.x)*l,i=(t.max.x-u.x)*l):(n=(t.max.x-u.x)*l,i=(t.min.x-u.x)*l),c>=0?(r=(t.min.y-u.y)*c,s=(t.max.y-u.y)*c):(r=(t.max.y-u.y)*c,s=(t.min.y-u.y)*c),n>s||r>i?null:((r>n||n!=n)&&(n=r),(s<i||i!=i)&&(i=s),h>=0?(a=(t.min.z-u.z)*h,o=(t.max.z-u.z)*h):(a=(t.max.z-u.z)*h,o=(t.min.z-u.z)*h),n>o||a>i?null:((a>n||n!=n)&&(n=a),(o<i||i!=i)&&(i=o),i<0?null:this.at(n>=0?n:i,e)))}intersectsBox(t){return null!==this.intersectBox(t,ie)}intersectTriangle(t,e,n,i,r){oe.subVectors(e,t),le.subVectors(n,t),ce.crossVectors(oe,le);let s,a=this.direction.dot(ce);if(a>0){if(i)return null;s=1}else{if(!(a<0))return null;s=-1,a=-a}ae.subVectors(this.origin,t);const o=s*this.direction.dot(le.crossVectors(ae,le));if(o<0)return null;const l=s*this.direction.dot(oe.cross(ae));if(l<0)return null;if(o+l>a)return null;const c=-s*ae.dot(ce);return c<0?null:this.at(c/a,r)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class ue{constructor(){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.")}set(t,e,n,i,r,s,a,o,l,c,h,u,d,p,m,f){const g=this.elements;return g[0]=t,g[4]=e,g[8]=n,g[12]=i,g[1]=r,g[5]=s,g[9]=a,g[13]=o,g[2]=l,g[6]=c,g[10]=h,g[14]=u,g[3]=d,g[7]=p,g[11]=m,g[15]=f,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new ue().fromArray(this.elements)}copy(t){const 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(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(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(t){const e=this.elements,n=t.elements,i=1/de.setFromMatrixColumn(t,0).length(),r=1/de.setFromMatrixColumn(t,1).length(),s=1/de.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]*s,e[9]=n[9]*s,e[10]=n[10]*s,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){t&&t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");const e=this.elements,n=t.x,i=t.y,r=t.z,s=Math.cos(n),a=Math.sin(n),o=Math.cos(i),l=Math.sin(i),c=Math.cos(r),h=Math.sin(r);if("XYZ"===t.order){const t=s*c,n=s*h,i=a*c,r=a*h;e[0]=o*c,e[4]=-o*h,e[8]=l,e[1]=n+i*l,e[5]=t-r*l,e[9]=-a*o,e[2]=r-t*l,e[6]=i+n*l,e[10]=s*o}else if("YXZ"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t+r*a,e[4]=i*a-n,e[8]=s*l,e[1]=s*h,e[5]=s*c,e[9]=-a,e[2]=n*a-i,e[6]=r+t*a,e[10]=s*o}else if("ZXY"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t-r*a,e[4]=-s*h,e[8]=i+n*a,e[1]=n+i*a,e[5]=s*c,e[9]=r-t*a,e[2]=-s*l,e[6]=a,e[10]=s*o}else if("ZYX"===t.order){const t=s*c,n=s*h,i=a*c,r=a*h;e[0]=o*c,e[4]=i*l-n,e[8]=t*l+r,e[1]=o*h,e[5]=r*l+t,e[9]=n*l-i,e[2]=-l,e[6]=a*o,e[10]=s*o}else if("YZX"===t.order){const t=s*o,n=s*l,i=a*o,r=a*l;e[0]=o*c,e[4]=r-t*h,e[8]=i*h+n,e[1]=h,e[5]=s*c,e[9]=-a*c,e[2]=-l*c,e[6]=n*h+i,e[10]=t-r*h}else if("XZY"===t.order){const t=s*o,n=s*l,i=a*o,r=a*l;e[0]=o*c,e[4]=-h,e[8]=l*c,e[1]=t*h+r,e[5]=s*c,e[9]=n*h-i,e[2]=i*h-n,e[6]=a*c,e[10]=r*h+t}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(me,t,fe)}lookAt(t,e,n){const i=this.elements;return ye.subVectors(t,e),0===ye.lengthSq()&&(ye.z=1),ye.normalize(),ge.crossVectors(n,ye),0===ge.lengthSq()&&(1===Math.abs(n.z)?ye.x+=1e-4:ye.z+=1e-4,ye.normalize(),ge.crossVectors(n,ye)),ge.normalize(),ve.crossVectors(ye,ge),i[0]=ge.x,i[4]=ve.x,i[8]=ye.x,i[1]=ge.y,i[5]=ve.y,i[9]=ye.y,i[2]=ge.z,i[6]=ve.z,i[10]=ye.z,this}multiply(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(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,s=n[0],a=n[4],o=n[8],l=n[12],c=n[1],h=n[5],u=n[9],d=n[13],p=n[2],m=n[6],f=n[10],g=n[14],v=n[3],y=n[7],x=n[11],_=n[15],M=i[0],b=i[4],w=i[8],S=i[12],T=i[1],E=i[5],A=i[9],L=i[13],R=i[2],C=i[6],P=i[10],D=i[14],I=i[3],N=i[7],z=i[11],B=i[15];return r[0]=s*M+a*T+o*R+l*I,r[4]=s*b+a*E+o*C+l*N,r[8]=s*w+a*A+o*P+l*z,r[12]=s*S+a*L+o*D+l*B,r[1]=c*M+h*T+u*R+d*I,r[5]=c*b+h*E+u*C+d*N,r[9]=c*w+h*A+u*P+d*z,r[13]=c*S+h*L+u*D+d*B,r[2]=p*M+m*T+f*R+g*I,r[6]=p*b+m*E+f*C+g*N,r[10]=p*w+m*A+f*P+g*z,r[14]=p*S+m*L+f*D+g*B,r[3]=v*M+y*T+x*R+_*I,r[7]=v*b+y*E+x*C+_*N,r[11]=v*w+y*A+x*P+_*z,r[15]=v*S+y*L+x*D+_*B,this}multiplyScalar(t){const 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}determinant(){const t=this.elements,e=t[0],n=t[4],i=t[8],r=t[12],s=t[1],a=t[5],o=t[9],l=t[13],c=t[2],h=t[6],u=t[10],d=t[14];return t[3]*(+r*o*h-i*l*h-r*a*u+n*l*u+i*a*d-n*o*d)+t[7]*(+e*o*d-e*l*u+r*s*u-i*s*d+i*l*c-r*o*c)+t[11]*(+e*l*h-e*a*d-r*s*h+n*s*d+r*a*c-n*l*c)+t[15]*(-i*a*c-e*o*h+e*a*u+i*s*h-n*s*u+n*o*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11],p=t[12],m=t[13],f=t[14],g=t[15],v=h*f*l-m*u*l+m*o*d-a*f*d-h*o*g+a*u*g,y=p*u*l-c*f*l-p*o*d+s*f*d+c*o*g-s*u*g,x=c*m*l-p*h*l+p*a*d-s*m*d-c*a*g+s*h*g,_=p*h*o-c*m*o-p*a*u+s*m*u+c*a*f-s*h*f,M=e*v+n*y+i*x+r*_;if(0===M)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const b=1/M;return t[0]=v*b,t[1]=(m*u*r-h*f*r-m*i*d+n*f*d+h*i*g-n*u*g)*b,t[2]=(a*f*r-m*o*r+m*i*l-n*f*l-a*i*g+n*o*g)*b,t[3]=(h*o*r-a*u*r-h*i*l+n*u*l+a*i*d-n*o*d)*b,t[4]=y*b,t[5]=(c*f*r-p*u*r+p*i*d-e*f*d-c*i*g+e*u*g)*b,t[6]=(p*o*r-s*f*r-p*i*l+e*f*l+s*i*g-e*o*g)*b,t[7]=(s*u*r-c*o*r+c*i*l-e*u*l-s*i*d+e*o*d)*b,t[8]=x*b,t[9]=(p*h*r-c*m*r-p*n*d+e*m*d+c*n*g-e*h*g)*b,t[10]=(s*m*r-p*a*r+p*n*l-e*m*l-s*n*g+e*a*g)*b,t[11]=(c*a*r-s*h*r-c*n*l+e*h*l+s*n*d-e*a*d)*b,t[12]=_*b,t[13]=(c*m*i-p*h*i+p*n*u-e*m*u-c*n*f+e*h*f)*b,t[14]=(p*a*i-s*m*i-p*n*o+e*m*o+s*n*f-e*a*f)*b,t[15]=(s*h*i-c*a*i+c*n*o-e*h*o-s*n*u+e*a*u)*b,this}scale(t){const 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(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))}makeTranslation(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const 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(t){const 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(t){const 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(t,e){const n=Math.cos(e),i=Math.sin(e),r=1-n,s=t.x,a=t.y,o=t.z,l=r*s,c=r*a;return this.set(l*s+n,l*a-i*o,l*o+i*a,0,l*a+i*o,c*a+n,c*o-i*s,0,l*o-i*a,c*o+i*s,r*o*o+n,0,0,0,0,1),this}makeScale(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this}makeShear(t,e,n,i,r,s){return this.set(1,n,r,0,t,1,s,0,e,i,1,0,0,0,0,1),this}compose(t,e,n){const i=this.elements,r=e._x,s=e._y,a=e._z,o=e._w,l=r+r,c=s+s,h=a+a,u=r*l,d=r*c,p=r*h,m=s*c,f=s*h,g=a*h,v=o*l,y=o*c,x=o*h,_=n.x,M=n.y,b=n.z;return i[0]=(1-(m+g))*_,i[1]=(d+x)*_,i[2]=(p-y)*_,i[3]=0,i[4]=(d-x)*M,i[5]=(1-(u+g))*M,i[6]=(f+v)*M,i[7]=0,i[8]=(p+y)*b,i[9]=(f-v)*b,i[10]=(1-(u+m))*b,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){const i=this.elements;let r=de.set(i[0],i[1],i[2]).length();const s=de.set(i[4],i[5],i[6]).length(),a=de.set(i[8],i[9],i[10]).length();this.determinant()<0&&(r=-r),t.x=i[12],t.y=i[13],t.z=i[14],pe.copy(this);const o=1/r,l=1/s,c=1/a;return pe.elements[0]*=o,pe.elements[1]*=o,pe.elements[2]*=o,pe.elements[4]*=l,pe.elements[5]*=l,pe.elements[6]*=l,pe.elements[8]*=c,pe.elements[9]*=c,pe.elements[10]*=c,e.setFromRotationMatrix(pe),n.x=r,n.y=s,n.z=a,this}makePerspective(t,e,n,i,r,s){void 0===s&&console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");const a=this.elements,o=2*r/(e-t),l=2*r/(n-i),c=(e+t)/(e-t),h=(n+i)/(n-i),u=-(s+r)/(s-r),d=-2*s*r/(s-r);return a[0]=o,a[4]=0,a[8]=c,a[12]=0,a[1]=0,a[5]=l,a[9]=h,a[13]=0,a[2]=0,a[6]=0,a[10]=u,a[14]=d,a[3]=0,a[7]=0,a[11]=-1,a[15]=0,this}makeOrthographic(t,e,n,i,r,s){const a=this.elements,o=1/(e-t),l=1/(n-i),c=1/(s-r),h=(e+t)*o,u=(n+i)*l,d=(s+r)*c;return a[0]=2*o,a[4]=0,a[8]=0,a[12]=-h,a[1]=0,a[5]=2*l,a[9]=0,a[13]=-u,a[2]=0,a[6]=0,a[10]=-2*c,a[14]=-d,a[3]=0,a[7]=0,a[11]=0,a[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<16;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const 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}}ue.prototype.isMatrix4=!0;const de=new Nt,pe=new ue,me=new Nt(0,0,0),fe=new Nt(1,1,1),ge=new Nt,ve=new Nt,ye=new Nt,xe=new ue,_e=new It;class Me{constructor(t=0,e=0,n=0,i=Me.DefaultOrder){this._x=t,this._y=e,this._z=n,this._order=i}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,i=this._order){return this._x=t,this._y=e,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const i=t.elements,r=i[0],s=i[4],a=i[8],o=i[1],l=i[5],c=i[9],h=i[2],u=i[6],d=i[10];switch(e){case"XYZ":this._y=Math.asin(ht(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-c,d),this._z=Math.atan2(-s,r)):(this._x=Math.atan2(u,l),this._z=0);break;case"YXZ":this._x=Math.asin(-ht(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(a,d),this._z=Math.atan2(o,l)):(this._y=Math.atan2(-h,r),this._z=0);break;case"ZXY":this._x=Math.asin(ht(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(-h,d),this._z=Math.atan2(-s,l)):(this._y=0,this._z=Math.atan2(o,r));break;case"ZYX":this._y=Math.asin(-ht(h,-1,1)),Math.abs(h)<.9999999?(this._x=Math.atan2(u,d),this._z=Math.atan2(o,r)):(this._x=0,this._z=Math.atan2(-s,l));break;case"YZX":this._z=Math.asin(ht(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-c,l),this._y=Math.atan2(-h,r)):(this._x=0,this._y=Math.atan2(a,d));break;case"XZY":this._z=Math.asin(-ht(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(u,l),this._y=Math.atan2(a,r)):(this._x=Math.atan2(-c,d),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+e);}return this._order=e,!0===n&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return xe.makeRotationFromQuaternion(t),this.setFromRotationMatrix(xe,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return _e.setFromEuler(this),this.setFromQuaternion(_e,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(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(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}toVector3(t){return t?t.set(this._x,this._y,this._z):new Nt(this._x,this._y,this._z)}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}Me.prototype.isEuler=!0,Me.DefaultOrder="XYZ",Me.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"];class be{constructor(){this.mask=1}set(t){this.mask=(1<<t|0)>>>0}enable(t){this.mask|=1<<t|0}enableAll(){this.mask=-1}toggle(t){this.mask^=1<<t|0}disable(t){this.mask&=~(1<<t|0)}disableAll(){this.mask=0}test(t){return 0!=(this.mask&t.mask)}isEnabled(t){return 0!=(this.mask&(1<<t|0))}}let we=0;const Se=new Nt,Te=new It,Ee=new ue,Ae=new Nt,Le=new Nt,Re=new Nt,Ce=new It,Pe=new Nt(1,0,0),De=new Nt(0,1,0),Ie=new Nt(0,0,1),Ne={type:"added"},ze={type:"removed"};class Be extends rt{constructor(){super(),Object.defineProperty(this,"id",{value:we++}),this.uuid=ct(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=Be.DefaultUp.clone();const t=new Nt,e=new Me,n=new It,i=new Nt(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 ue},normalMatrix:{value:new yt}}),this.matrix=new ue,this.matrixWorld=new ue,this.matrixAutoUpdate=Be.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new be,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeRender(){}onAfterRender(){}applyMatrix4(t){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(t),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(t){return this.quaternion.premultiply(t),this}setRotationFromAxisAngle(t,e){this.quaternion.setFromAxisAngle(t,e)}setRotationFromEuler(t){this.quaternion.setFromEuler(t,!0)}setRotationFromMatrix(t){this.quaternion.setFromRotationMatrix(t)}setRotationFromQuaternion(t){this.quaternion.copy(t)}rotateOnAxis(t,e){return Te.setFromAxisAngle(t,e),this.quaternion.multiply(Te),this}rotateOnWorldAxis(t,e){return Te.setFromAxisAngle(t,e),this.quaternion.premultiply(Te),this}rotateX(t){return this.rotateOnAxis(Pe,t)}rotateY(t){return this.rotateOnAxis(De,t)}rotateZ(t){return this.rotateOnAxis(Ie,t)}translateOnAxis(t,e){return Se.copy(t).applyQuaternion(this.quaternion),this.position.add(Se.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(Pe,t)}translateY(t){return this.translateOnAxis(De,t)}translateZ(t){return this.translateOnAxis(Ie,t)}localToWorld(t){return t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return t.applyMatrix4(Ee.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?Ae.copy(t):Ae.set(t,e,n);const i=this.parent;this.updateWorldMatrix(!0,!1),Le.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Ee.lookAt(Le,Ae,this.up):Ee.lookAt(Ae,Le,this.up),this.quaternion.setFromRotationMatrix(Ee),i&&(Ee.extractRotation(i.matrixWorld),Te.setFromRotationMatrix(Ee),this.quaternion.premultiply(Te.invert()))}add(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.add(arguments[t]);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,this.children.push(t),t.dispatchEvent(Ne)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",t),this)}remove(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.remove(arguments[t]);return this}const e=this.children.indexOf(t);return-1!==e&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(ze)),this}removeFromParent(){const t=this.parent;return null!==t&&t.remove(this),this}clear(){for(let t=0;t<this.children.length;t++){const e=this.children[t];e.parent=null,e.dispatchEvent(ze)}return this.children.length=0,this}attach(t){return this.updateWorldMatrix(!0,!1),Ee.copy(this.matrixWorld).invert(),null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),Ee.multiply(t.parent.matrixWorld)),t.applyMatrix4(Ee),this.add(t),t.updateWorldMatrix(!1,!0),this}getObjectById(t){return this.getObjectByProperty("id",t)}getObjectByName(t){return this.getObjectByProperty("name",t)}getObjectByProperty(t,e){if(this[t]===e)return this;for(let n=0,i=this.children.length;n<i;n++){const i=this.children[n].getObjectByProperty(t,e);if(void 0!==i)return i}}getWorldPosition(t){return this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Le,t,Re),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Le,Ce,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverse(t)}traverseVisible(t){if(!1===this.visible)return;t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}traverseAncestors(t){const e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(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);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].updateMatrixWorld(t)}updateWorldMatrix(t,e){const 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){const t=this.children;for(let e=0,n=t.length;e<n;e++)t[e].updateWorldMatrix(!1,!0)}}toJSON(t){const e=void 0===t||"string"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{}},n.metadata={version:4.5,type:"Object",generator:"Object3D.toJSON"});const 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.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(i.instanceColor=this.instanceColor.toJSON())),this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(t).uuid)),this.environment&&this.environment.isTexture&&(i.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=r(t.geometries,this.geometry);const e=this.geometry.parameters;if(void 0!==e&&void 0!==e.shapes){const n=e.shapes;if(Array.isArray(n))for(let e=0,i=n.length;e<i;e++){const i=n[e];r(t.shapes,i)}else r(t.shapes,n)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(r(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const e=[];for(let n=0,i=this.material.length;n<i;n++)e.push(r(t.materials,this.material[n]));i.material=e}else i.material=r(t.materials,this.material);if(this.children.length>0){i.children=[];for(let e=0;e<this.children.length;e++)i.children.push(this.children[e].toJSON(t).object)}if(this.animations.length>0){i.animations=[];for(let e=0;e<this.animations.length;e++){const n=this.animations[e];i.animations.push(r(t.animations,n))}}if(e){const e=s(t.geometries),i=s(t.materials),r=s(t.textures),a=s(t.images),o=s(t.shapes),l=s(t.skeletons),c=s(t.animations);e.length>0&&(n.geometries=e),i.length>0&&(n.materials=i),r.length>0&&(n.textures=r),a.length>0&&(n.images=a),o.length>0&&(n.shapes=o),l.length>0&&(n.skeletons=l),c.length>0&&(n.animations=c)}return n.object=i,n;function s(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}}clone(t){return new this.constructor().copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,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(let e=0;e<t.children.length;e++){const n=t.children[e];this.add(n.clone())}return this}}Be.DefaultUp=new Nt(0,1,0),Be.DefaultMatrixAutoUpdate=!0,Be.prototype.isObject3D=!0;const Fe=new Nt,Oe=new Nt,Ue=new Nt,He=new Nt,Ge=new Nt,ke=new Nt,Ve=new Nt,We=new Nt,je=new Nt,qe=new Nt;class Xe{constructor(t=new Nt,e=new Nt,n=new Nt){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){i.subVectors(n,e),Fe.subVectors(t,e),i.cross(Fe);const r=i.lengthSq();return r>0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(t,e,n,i,r){Fe.subVectors(i,e),Oe.subVectors(n,e),Ue.subVectors(t,e);const s=Fe.dot(Fe),a=Fe.dot(Oe),o=Fe.dot(Ue),l=Oe.dot(Oe),c=Oe.dot(Ue),h=s*l-a*a;if(0===h)return r.set(-2,-1,-1);const u=1/h,d=(l*o-a*c)*u,p=(s*c-a*o)*u;return r.set(1-d-p,p,d)}static containsPoint(t,e,n,i){return this.getBarycoord(t,e,n,i,He),He.x>=0&&He.y>=0&&He.x+He.y<=1}static getUV(t,e,n,i,r,s,a,o){return this.getBarycoord(t,e,n,i,He),o.set(0,0),o.addScaledVector(r,He.x),o.addScaledVector(s,He.y),o.addScaledVector(a,He.z),o}static isFrontFacing(t,e,n,i){return Fe.subVectors(n,e),Oe.subVectors(t,e),Fe.cross(Oe).dot(i)<0}set(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this}setFromPointsAndIndices(t,e,n,i){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[i]),this}setFromAttributeAndIndices(t,e,n,i){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,n),this.c.fromBufferAttribute(t,i),this}clone(){return new this.constructor().copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Fe.subVectors(this.c,this.b),Oe.subVectors(this.a,this.b),.5*Fe.cross(Oe).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return Xe.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return Xe.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,r){return Xe.getUV(t,this.a,this.b,this.c,e,n,i,r)}containsPoint(t){return Xe.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return Xe.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,i=this.b,r=this.c;let s,a;Ge.subVectors(i,n),ke.subVectors(r,n),We.subVectors(t,n);const o=Ge.dot(We),l=ke.dot(We);if(o<=0&&l<=0)return e.copy(n);je.subVectors(t,i);const c=Ge.dot(je),h=ke.dot(je);if(c>=0&&h<=c)return e.copy(i);const u=o*h-c*l;if(u<=0&&o>=0&&c<=0)return s=o/(o-c),e.copy(n).addScaledVector(Ge,s);qe.subVectors(t,r);const d=Ge.dot(qe),p=ke.dot(qe);if(p>=0&&d<=p)return e.copy(r);const m=d*l-o*p;if(m<=0&&l>=0&&p<=0)return a=l/(l-p),e.copy(n).addScaledVector(ke,a);const f=c*p-d*h;if(f<=0&&h-c>=0&&d-p>=0)return Ve.subVectors(r,i),a=(h-c)/(h-c+(d-p)),e.copy(i).addScaledVector(Ve,a);const g=1/(f+m+u);return s=m*g,a=u*g,e.copy(n).addScaledVector(Ge,s).addScaledVector(ke,a)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}let Je=0;class Ye extends rt{constructor(){super(),Object.defineProperty(this,"id",{value:Je++}),this.uuid=ct(),this.name="",this.type="Material",this.fog=!0,this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.format=E,this.transparent=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=n,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=tt,this.stencilZFail=tt,this.stencilZPass=tt,this.stencilWrite=!1,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.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(t){this._alphaTest>0!=t>0&&this.version++,this._alphaTest=t}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const n=t[e];if(void 0===n){console.warn("THREE.Material: '"+e+"' parameter is undefined.");continue}if("shading"===e){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=1===n;continue}const 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.")}}toJSON(t){const e=void 0===t||"string"==typeof t;e&&(t={textures:{},images:{}});const n={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};function i(t){const e=[];for(const n in t){const 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),void 0!==this.sheen&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.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.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.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,n.lightMapIntensity=this.lightMapIntensity),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.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(n.combine=this.combine)),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&(n.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(n.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(n.size=this.size),null!==this.shadowSide&&(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(n.blending=this.blending),0!==this.side&&(n.side=this.side),this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.format!==E&&(n.format=this.format),!0===this.transparent&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation&&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),this.linewidth&&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.alphaToCoverage&&(n.alphaToCoverage=this.alphaToCoverage),!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.flatShading&&(n.flatShading=this.flatShading),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),"{}"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){const e=i(t.textures),r=i(t.images);e.length>0&&(n.textures=e),r.length>0&&(n.images=r)}return n}clone(){return new this.constructor().copy(this)}copy(t){this.name=t.name,this.fog=t.fog,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.format=t.format,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.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(null!==e){const t=e.length;n=new Array(t);for(let i=0;i!==t;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,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.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){!0===t&&this.version++}}Ye.prototype.isMaterial=!0;const Ze={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},Qe={h:0,s:0,l:0},Ke={h:0,s:0,l:0};function $e(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}function tn(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function en(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}class nn{constructor(t,e,n){return void 0===e&&void 0===n?this.set(t):this.setRGB(t,e,n)}set(t){return t&&t.isColor?this.copy(t):"number"==typeof t?this.setHex(t):"string"==typeof t&&this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(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(t,e,n){return this.r=t,this.g=e,this.b=n,this}setHSL(t,e,n){if(t=ut(t,1),e=ht(e,0,1),n=ht(n,0,1),0===e)this.r=this.g=this.b=n;else{const i=n<=.5?n*(1+e):n+e-n*e,r=2*n-i;this.r=$e(r,i,t+1/3),this.g=$e(r,i,t),this.b=$e(r,i,t-1/3)}return this}setStyle(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let n;if(n=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(t)){let t;const i=n[1],r=n[2];switch(i){case"rgb":case"rgba":if(t=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r))return this.r=Math.min(255,parseInt(t[1],10))/255,this.g=Math.min(255,parseInt(t[2],10))/255,this.b=Math.min(255,parseInt(t[3],10))/255,e(t[4]),this;if(t=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r))return this.r=Math.min(100,parseInt(t[1],10))/100,this.g=Math.min(100,parseInt(t[2],10))/100,this.b=Math.min(100,parseInt(t[3],10))/100,e(t[4]),this;break;case"hsl":case"hsla":if(t=/^\s*(\d*\.?\d+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r)){const n=parseFloat(t[1])/360,i=parseInt(t[2],10)/100,r=parseInt(t[3],10)/100;return e(t[4]),this.setHSL(n,i,r)}}}else if(n=/^\#([A-Fa-f\d]+)$/.exec(t)){const t=n[1],e=t.length;if(3===e)return this.r=parseInt(t.charAt(0)+t.charAt(0),16)/255,this.g=parseInt(t.charAt(1)+t.charAt(1),16)/255,this.b=parseInt(t.charAt(2)+t.charAt(2),16)/255,this;if(6===e)return this.r=parseInt(t.charAt(0)+t.charAt(1),16)/255,this.g=parseInt(t.charAt(2)+t.charAt(3),16)/255,this.b=parseInt(t.charAt(4)+t.charAt(5),16)/255,this}return t&&t.length>0?this.setColorName(t):this}setColorName(t){const e=Ze[t.toLowerCase()];return void 0!==e?this.setHex(e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copyGammaToLinear(t,e=2){return this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this}copyLinearToGamma(t,e=2){const 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(t){return this.copyGammaToLinear(this,t),this}convertLinearToGamma(t){return this.copyLinearToGamma(this,t),this}copySRGBToLinear(t){return this.r=tn(t.r),this.g=tn(t.g),this.b=tn(t.b),this}copyLinearToSRGB(t){return this.r=en(t.r),this.g=en(t.g),this.b=en(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0}getHexString(){return("000000"+this.getHex().toString(16)).slice(-6)}getHSL(t){const e=this.r,n=this.g,i=this.b,r=Math.max(e,n,i),s=Math.min(e,n,i);let a,o;const l=(s+r)/2;if(s===r)a=0,o=0;else{const t=r-s;switch(o=l<=.5?t/(r+s):t/(2-r-s),r){case e:a=(n-i)/t+(n<i?6:0);break;case n:a=(i-e)/t+2;break;case i:a=(e-n)/t+4;}a/=6}return t.h=a,t.s=o,t.l=l,t}getStyle(){return"rgb("+(255*this.r|0)+","+(255*this.g|0)+","+(255*this.b|0)+")"}offsetHSL(t,e,n){return this.getHSL(Qe),Qe.h+=t,Qe.s+=e,Qe.l+=n,this.setHSL(Qe.h,Qe.s,Qe.l),this}add(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this}addColors(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this}addScalar(t){return this.r+=t,this.g+=t,this.b+=t,this}sub(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(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this}multiplyScalar(t){return this.r*=t,this.g*=t,this.b*=t,this}lerp(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}lerpColors(t,e,n){return this.r=t.r+(e.r-t.r)*n,this.g=t.g+(e.g-t.g)*n,this.b=t.b+(e.b-t.b)*n,this}lerpHSL(t,e){this.getHSL(Qe),t.getHSL(Ke);const n=dt(Qe.h,Ke.h,e),i=dt(Qe.s,Ke.s,e),r=dt(Qe.l,Ke.l,e);return this.setHSL(n,i,r),this}equals(t){return t.r===this.r&&t.g===this.g&&t.b===this.b}fromArray(t,e=0){return this.r=t[e],this.g=t[e+1],this.b=t[e+2],this}toArray(t=[],e=0){return t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t}fromBufferAttribute(t,e){return this.r=t.getX(e),this.g=t.getY(e),this.b=t.getZ(e),!0===t.normalized&&(this.r/=255,this.g/=255,this.b/=255),this}toJSON(){return this.getHex()}}nn.NAMES=Ze,nn.prototype.isColor=!0,nn.prototype.r=1,nn.prototype.g=1,nn.prototype.b=1;class rn extends Ye{constructor(t){super(),this.type="MeshBasicMaterial",this.color=new nn(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=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.setValues(t)}copy(t){return super.copy(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}}rn.prototype.isMeshBasicMaterial=!0;const sn=new Nt,an=new vt;class on{constructor(t,e,n){if(Array.isArray(t))throw new 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.usage=et,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}copy(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.usage=t.usage,this}copyAt(t,e,n){t*=this.itemSize,n*=e.itemSize;for(let i=0,r=this.itemSize;i<r;i++)this.array[t+i]=e.array[n+i];return this}copyArray(t){return this.array.set(t),this}copyColorsArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i<r;i++){let r=t[i];void 0===r&&(console.warn("THREE.BufferAttribute.copyColorsArray(): color is undefined",i),r=new nn),e[n++]=r.r,e[n++]=r.g,e[n++]=r.b}return this}copyVector2sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i<r;i++){let r=t[i];void 0===r&&(console.warn("THREE.BufferAttribute.copyVector2sArray(): vector is undefined",i),r=new vt),e[n++]=r.x,e[n++]=r.y}return this}copyVector3sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i<r;i++){let r=t[i];void 0===r&&(console.warn("THREE.BufferAttribute.copyVector3sArray(): vector is undefined",i),r=new Nt),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z}return this}copyVector4sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i<r;i++){let r=t[i];void 0===r&&(console.warn("THREE.BufferAttribute.copyVector4sArray(): vector is undefined",i),r=new Rt),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z,e[n++]=r.w}return this}applyMatrix3(t){if(2===this.itemSize)for(let e=0,n=this.count;e<n;e++)an.fromBufferAttribute(this,e),an.applyMatrix3(t),this.setXY(e,an.x,an.y);else if(3===this.itemSize)for(let e=0,n=this.count;e<n;e++)sn.fromBufferAttribute(this,e),sn.applyMatrix3(t),this.setXYZ(e,sn.x,sn.y,sn.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e<n;e++)sn.x=this.getX(e),sn.y=this.getY(e),sn.z=this.getZ(e),sn.applyMatrix4(t),this.setXYZ(e,sn.x,sn.y,sn.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)sn.x=this.getX(e),sn.y=this.getY(e),sn.z=this.getZ(e),sn.applyNormalMatrix(t),this.setXYZ(e,sn.x,sn.y,sn.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)sn.x=this.getX(e),sn.y=this.getY(e),sn.z=this.getZ(e),sn.transformDirection(t),this.setXYZ(e,sn.x,sn.y,sn.z);return this}set(t,e=0){return this.array.set(t,e),this}getX(t){return this.array[t*this.itemSize]}setX(t,e){return this.array[t*this.itemSize]=e,this}getY(t){return this.array[t*this.itemSize+1]}setY(t,e){return this.array[t*this.itemSize+1]=e,this}getZ(t){return this.array[t*this.itemSize+2]}setZ(t,e){return this.array[t*this.itemSize+2]=e,this}getW(t){return this.array[t*this.itemSize+3]}setW(t,e){return this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this}setXYZ(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(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(t){return this.onUploadCallback=t,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){const t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized};return""!==this.name&&(t.name=this.name),this.usage!==et&&(t.usage=this.usage),0===this.updateRange.offset&&-1===this.updateRange.count||(t.updateRange=this.updateRange),t}}on.prototype.isBufferAttribute=!0;class ln extends on{constructor(t,e,n){super(new Int8Array(t),e,n)}}class cn extends on{constructor(t,e,n){super(new Uint8Array(t),e,n)}}class hn extends on{constructor(t,e,n){super(new Uint8ClampedArray(t),e,n)}}class un extends on{constructor(t,e,n){super(new Int16Array(t),e,n)}}class dn extends on{constructor(t,e,n){super(new Uint16Array(t),e,n)}}class pn extends on{constructor(t,e,n){super(new Int32Array(t),e,n)}}class mn extends on{constructor(t,e,n){super(new Uint32Array(t),e,n)}}class fn extends on{constructor(t,e,n){super(new Uint16Array(t),e,n)}}fn.prototype.isFloat16BufferAttribute=!0;class gn extends on{constructor(t,e,n){super(new Float32Array(t),e,n)}}class vn extends on{constructor(t,e,n){super(new Float64Array(t),e,n)}}let yn=0;const xn=new ue,_n=new Be,Mn=new Nt,bn=new Ft,wn=new Ft,Sn=new Nt;class Tn extends rt{constructor(){super(),Object.defineProperty(this,"id",{value:yn++}),this.uuid=ct(),this.name="",this.type="BufferGeometry",this.index=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(t){return Array.isArray(t)?this.index=new(xt(t)>65535?mn:dn)(t,1):this.index=t,this}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return void 0!==this.attributes[t]}addGroup(t,e,n=0){this.groups.push({start:t,count:e,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){const e=this.attributes.position;void 0!==e&&(e.applyMatrix4(t),e.needsUpdate=!0);const n=this.attributes.normal;if(void 0!==n){const e=new yt().getNormalMatrix(t);n.applyNormalMatrix(e),n.needsUpdate=!0}const i=this.attributes.tangent;return void 0!==i&&(i.transformDirection(t),i.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this}applyQuaternion(t){return xn.makeRotationFromQuaternion(t),this.applyMatrix4(xn),this}rotateX(t){return xn.makeRotationX(t),this.applyMatrix4(xn),this}rotateY(t){return xn.makeRotationY(t),this.applyMatrix4(xn),this}rotateZ(t){return xn.makeRotationZ(t),this.applyMatrix4(xn),this}translate(t,e,n){return xn.makeTranslation(t,e,n),this.applyMatrix4(xn),this}scale(t,e,n){return xn.makeScale(t,e,n),this.applyMatrix4(xn),this}lookAt(t){return _n.lookAt(t),_n.updateMatrix(),this.applyMatrix4(_n.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(Mn).negate(),this.translate(Mn.x,Mn.y,Mn.z),this}setFromPoints(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n];e.push(i.x,i.y,i.z||0)}return this.setAttribute("position",new gn(e,3)),this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new Ft);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error("THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \"mesh.frustumCulled\" to \"false\".",this),void this.boundingBox.set(new Nt(-1/0,-1/0,-1/0),new Nt(1/0,1/0,1/0));if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];bn.setFromBufferAttribute(n),this.morphTargetsRelative?(Sn.addVectors(this.boundingBox.min,bn.min),this.boundingBox.expandByPoint(Sn),Sn.addVectors(this.boundingBox.max,bn.max),this.boundingBox.expandByPoint(Sn)):(this.boundingBox.expandByPoint(bn.min),this.boundingBox.expandByPoint(bn.max))}}else 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(){null===this.boundingSphere&&(this.boundingSphere=new ne);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error("THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \"mesh.frustumCulled\" to \"false\".",this),void this.boundingSphere.set(new Nt,1/0);if(t){const n=this.boundingSphere.center;if(bn.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];wn.setFromBufferAttribute(n),this.morphTargetsRelative?(Sn.addVectors(bn.min,wn.min),bn.expandByPoint(Sn),Sn.addVectors(bn.max,wn.max),bn.expandByPoint(Sn)):(bn.expandByPoint(wn.min),bn.expandByPoint(wn.max))}bn.getCenter(n);let i=0;for(let e=0,r=t.count;e<r;e++)Sn.fromBufferAttribute(t,e),i=Math.max(i,n.distanceToSquared(Sn));if(e)for(let r=0,s=e.length;r<s;r++){const s=e[r],a=this.morphTargetsRelative;for(let e=0,r=s.count;e<r;e++)Sn.fromBufferAttribute(s,e),a&&(Mn.fromBufferAttribute(t,e),Sn.add(Mn)),i=Math.max(i,n.distanceToSquared(Sn))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&console.error("THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The \"position\" attribute is likely to have NaN values.",this)}}computeTangents(){const t=this.index,e=this.attributes;if(null===t||void 0===e.position||void 0===e.normal||void 0===e.uv)return void console.error("THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");const n=t.array,i=e.position.array,r=e.normal.array,s=e.uv.array,a=i.length/3;void 0===e.tangent&&this.setAttribute("tangent",new on(new Float32Array(4*a),4));const o=e.tangent.array,l=[],c=[];for(let t=0;t<a;t++)l[t]=new Nt,c[t]=new Nt;const h=new Nt,u=new Nt,d=new Nt,p=new vt,m=new vt,f=new vt,g=new Nt,v=new Nt;function y(t,e,n){h.fromArray(i,3*t),u.fromArray(i,3*e),d.fromArray(i,3*n),p.fromArray(s,2*t),m.fromArray(s,2*e),f.fromArray(s,2*n),u.sub(h),d.sub(h),m.sub(p),f.sub(p);const r=1/(m.x*f.y-f.x*m.y);isFinite(r)&&(g.copy(u).multiplyScalar(f.y).addScaledVector(d,-m.y).multiplyScalar(r),v.copy(d).multiplyScalar(m.x).addScaledVector(u,-f.x).multiplyScalar(r),l[t].add(g),l[e].add(g),l[n].add(g),c[t].add(v),c[e].add(v),c[n].add(v))}let x=this.groups;0===x.length&&(x=[{start:0,count:n.length}]);for(let t=0,e=x.length;t<e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t<r;t+=3)y(n[t+0],n[t+1],n[t+2])}const _=new Nt,M=new Nt,b=new Nt,w=new Nt;function S(t){b.fromArray(r,3*t),w.copy(b);const e=l[t];_.copy(e),_.sub(b.multiplyScalar(b.dot(e))).normalize(),M.crossVectors(w,e);const n=M.dot(c[t])<0?-1:1;o[4*t]=_.x,o[4*t+1]=_.y,o[4*t+2]=_.z,o[4*t+3]=n}for(let t=0,e=x.length;t<e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t<r;t+=3)S(n[t+0]),S(n[t+1]),S(n[t+2])}}computeVertexNormals(){const t=this.index,e=this.getAttribute("position");if(void 0!==e){let n=this.getAttribute("normal");if(void 0===n)n=new on(new Float32Array(3*e.count),3),this.setAttribute("normal",n);else for(let t=0,e=n.count;t<e;t++)n.setXYZ(t,0,0,0);const i=new Nt,r=new Nt,s=new Nt,a=new Nt,o=new Nt,l=new Nt,c=new Nt,h=new Nt;if(t)for(let u=0,d=t.count;u<d;u+=3){const d=t.getX(u+0),p=t.getX(u+1),m=t.getX(u+2);i.fromBufferAttribute(e,d),r.fromBufferAttribute(e,p),s.fromBufferAttribute(e,m),c.subVectors(s,r),h.subVectors(i,r),c.cross(h),a.fromBufferAttribute(n,d),o.fromBufferAttribute(n,p),l.fromBufferAttribute(n,m),a.add(c),o.add(c),l.add(c),n.setXYZ(d,a.x,a.y,a.z),n.setXYZ(p,o.x,o.y,o.z),n.setXYZ(m,l.x,l.y,l.z)}else for(let t=0,a=e.count;t<a;t+=3)i.fromBufferAttribute(e,t+0),r.fromBufferAttribute(e,t+1),s.fromBufferAttribute(e,t+2),c.subVectors(s,r),h.subVectors(i,r),c.cross(h),n.setXYZ(t+0,c.x,c.y,c.z),n.setXYZ(t+1,c.x,c.y,c.z),n.setXYZ(t+2,c.x,c.y,c.z);this.normalizeNormals(),n.needsUpdate=!0}}merge(t,e){if(!t||!t.isBufferGeometry)return void console.error("THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.",t);void 0===e&&(e=0,console.warn("THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge."));const n=this.attributes;for(const i in n){if(void 0===t.attributes[i])continue;const r=n[i].array,s=t.attributes[i],a=s.array,o=s.itemSize*e,l=Math.min(a.length,r.length-o);for(let t=0,e=o;t<l;t++,e++)r[e]=a[t]}return this}normalizeNormals(){const t=this.attributes.normal;for(let e=0,n=t.count;e<n;e++)Sn.fromBufferAttribute(t,e),Sn.normalize(),t.setXYZ(e,Sn.x,Sn.y,Sn.z)}toNonIndexed(){function t(t,e){const n=t.array,i=t.itemSize,r=t.normalized,s=new n.constructor(e.length*i);let a=0,o=0;for(let r=0,l=e.length;r<l;r++){a=t.isInterleavedBufferAttribute?e[r]*t.data.stride+t.offset:e[r]*i;for(let t=0;t<i;t++)s[o++]=n[a++]}return new on(s,i,r)}if(null===this.index)return console.warn("THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed."),this;const e=new Tn,n=this.index.array,i=this.attributes;for(const r in i){const s=t(i[r],n);e.setAttribute(r,s)}const r=this.morphAttributes;for(const i in r){const s=[],a=r[i];for(let e=0,i=a.length;e<i;e++){const i=t(a[e],n);s.push(i)}e.morphAttributes[i]=s}e.morphTargetsRelative=this.morphTargetsRelative;const s=this.groups;for(let t=0,n=s.length;t<n;t++){const n=s[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const 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){const e=this.parameters;for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const e in n){const i=n[e];t.data.attributes[e]=i.toJSON(t.data)}const i={};let r=!1;for(const e in this.morphAttributes){const n=this.morphAttributes[e],s=[];for(let e=0,i=n.length;e<i;e++){const i=n[e];s.push(i.toJSON(t.data))}s.length>0&&(i[e]=s,r=!0)}r&&(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);const s=this.groups;s.length>0&&(t.data.groups=JSON.parse(JSON.stringify(s)));const a=this.boundingSphere;return null!==a&&(t.data.boundingSphere={center:a.center.toArray(),radius:a.radius}),t}clone(){return new this.constructor().copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const n=t.index;null!==n&&this.setIndex(n.clone(e));const i=t.attributes;for(const t in i){const n=i[t];this.setAttribute(t,n.clone(e))}const r=t.morphAttributes;for(const t in r){const n=[],i=r[t];for(let t=0,r=i.length;t<r;t++)n.push(i[t].clone(e));this.morphAttributes[t]=n}this.morphTargetsRelative=t.morphTargetsRelative;const s=t.groups;for(let t=0,e=s.length;t<e;t++){const e=s[t];this.addGroup(e.start,e.count,e.materialIndex)}const a=t.boundingBox;null!==a&&(this.boundingBox=a.clone());const o=t.boundingSphere;return null!==o&&(this.boundingSphere=o.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,void 0!==t.parameters&&(this.parameters=Object.assign({},t.parameters)),this}dispose(){this.dispatchEvent({type:"dispose"})}}Tn.prototype.isBufferGeometry=!0;const En=new ue,An=new he,Ln=new ne,Rn=new Nt,Cn=new Nt,Pn=new Nt,Dn=new Nt,In=new Nt,Nn=new Nt,zn=new Nt,Bn=new Nt,Fn=new Nt,On=new vt,Un=new vt,Hn=new vt,Gn=new Nt,kn=new Nt;class Vn extends Be{constructor(t=new Tn,e=new rn){super(),this.type="Mesh",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=t.material,this.geometry=t.geometry,this}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}}raycast(t,e){const n=this.geometry,i=this.material,r=this.matrixWorld;if(void 0===i)return;if(null===n.boundingSphere&&n.computeBoundingSphere(),Ln.copy(n.boundingSphere),Ln.applyMatrix4(r),!1===t.ray.intersectsSphere(Ln))return;if(En.copy(r).invert(),An.copy(t.ray).applyMatrix4(En),null!==n.boundingBox&&!1===An.intersectsBox(n.boundingBox))return;let s;if(n.isBufferGeometry){const r=n.index,a=n.attributes.position,o=n.morphAttributes.position,l=n.morphTargetsRelative,c=n.attributes.uv,h=n.attributes.uv2,u=n.groups,d=n.drawRange;if(null!==r){if(Array.isArray(i))for(let n=0,p=u.length;n<p;n++){const p=u[n],m=i[p.materialIndex];for(let n=Math.max(p.start,d.start),i=Math.min(r.count,Math.min(p.start+p.count,d.start+d.count));n<i;n+=3){const i=r.getX(n),u=r.getX(n+1),d=r.getX(n+2);s=Wn(this,m,t,An,a,o,l,c,h,i,u,d),s&&(s.faceIndex=Math.floor(n/3),s.face.materialIndex=p.materialIndex,e.push(s))}}else{for(let n=Math.max(0,d.start),u=Math.min(r.count,d.start+d.count);n<u;n+=3){const u=r.getX(n),d=r.getX(n+1),p=r.getX(n+2);s=Wn(this,i,t,An,a,o,l,c,h,u,d,p),s&&(s.faceIndex=Math.floor(n/3),e.push(s))}}}else if(void 0!==a)if(Array.isArray(i))for(let n=0,r=u.length;n<r;n++){const r=u[n],p=i[r.materialIndex];for(let n=Math.max(r.start,d.start),i=Math.min(a.count,Math.min(r.start+r.count,d.start+d.count));n<i;n+=3){s=Wn(this,p,t,An,a,o,l,c,h,n,n+1,n+2),s&&(s.faceIndex=Math.floor(n/3),s.face.materialIndex=r.materialIndex,e.push(s))}}else{for(let n=Math.max(0,d.start),r=Math.min(a.count,d.start+d.count);n<r;n+=3){s=Wn(this,i,t,An,a,o,l,c,h,n,n+1,n+2),s&&(s.faceIndex=Math.floor(n/3),e.push(s))}}}else n.isGeometry&&console.error("THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}}function Wn(t,e,n,i,r,s,a,o,l,c,h,u){Rn.fromBufferAttribute(r,c),Cn.fromBufferAttribute(r,h),Pn.fromBufferAttribute(r,u);const d=t.morphTargetInfluences;if(s&&d){zn.set(0,0,0),Bn.set(0,0,0),Fn.set(0,0,0);for(let t=0,e=s.length;t<e;t++){const e=d[t],n=s[t];0!==e&&(Dn.fromBufferAttribute(n,c),In.fromBufferAttribute(n,h),Nn.fromBufferAttribute(n,u),a?(zn.addScaledVector(Dn,e),Bn.addScaledVector(In,e),Fn.addScaledVector(Nn,e)):(zn.addScaledVector(Dn.sub(Rn),e),Bn.addScaledVector(In.sub(Cn),e),Fn.addScaledVector(Nn.sub(Pn),e)))}Rn.add(zn),Cn.add(Bn),Pn.add(Fn)}t.isSkinnedMesh&&(t.boneTransform(c,Rn),t.boneTransform(h,Cn),t.boneTransform(u,Pn));const p=function(t,e,n,i,r,s,a,o){let l;if(l=1===e.side?i.intersectTriangle(a,s,r,!0,o):i.intersectTriangle(r,s,a,2!==e.side,o),null===l)return null;kn.copy(o),kn.applyMatrix4(t.matrixWorld);const c=n.ray.origin.distanceTo(kn);return c<n.near||c>n.far?null:{distance:c,point:kn.clone(),object:t}}(t,e,n,i,Rn,Cn,Pn,Gn);if(p){o&&(On.fromBufferAttribute(o,c),Un.fromBufferAttribute(o,h),Hn.fromBufferAttribute(o,u),p.uv=Xe.getUV(Gn,Rn,Cn,Pn,On,Un,Hn,new vt)),l&&(On.fromBufferAttribute(l,c),Un.fromBufferAttribute(l,h),Hn.fromBufferAttribute(l,u),p.uv2=Xe.getUV(Gn,Rn,Cn,Pn,On,Un,Hn,new vt));const t={a:c,b:h,c:u,normal:new Nt,materialIndex:0};Xe.getNormal(Rn,Cn,Pn,t.normal),p.face=t}return p}Vn.prototype.isMesh=!0;class jn extends Tn{constructor(t=1,e=1,n=1,i=1,r=1,s=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:s};const a=this;i=Math.floor(i),r=Math.floor(r),s=Math.floor(s);const o=[],l=[],c=[],h=[];let u=0,d=0;function p(t,e,n,i,r,s,p,m,f,g,v){const y=s/f,x=p/g,_=s/2,M=p/2,b=m/2,w=f+1,S=g+1;let T=0,E=0;const A=new Nt;for(let s=0;s<S;s++){const a=s*x-M;for(let o=0;o<w;o++){const u=o*y-_;A[t]=u*i,A[e]=a*r,A[n]=b,l.push(A.x,A.y,A.z),A[t]=0,A[e]=0,A[n]=m>0?1:-1,c.push(A.x,A.y,A.z),h.push(o/f),h.push(1-s/g),T+=1}}for(let t=0;t<g;t++)for(let e=0;e<f;e++){const n=u+e+w*t,i=u+e+w*(t+1),r=u+(e+1)+w*(t+1),s=u+(e+1)+w*t;o.push(n,i,s),o.push(i,r,s),E+=6}a.addGroup(d,E,v),d+=E,u+=T}p("z","y","x",-1,-1,n,e,t,s,r,0),p("z","y","x",1,-1,n,e,-t,s,r,1),p("x","z","y",1,1,t,n,e,i,s,2),p("x","z","y",1,-1,t,n,-e,i,s,3),p("x","y","z",1,-1,t,e,n,i,r,4),p("x","y","z",-1,-1,t,e,-n,i,r,5),this.setIndex(o),this.setAttribute("position",new gn(l,3)),this.setAttribute("normal",new gn(c,3)),this.setAttribute("uv",new gn(h,2))}static fromJSON(t){return new jn(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}}function qn(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const r=t[n][i];r&&(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture||r.isQuaternion)?e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}}return e}function Xn(t){const e={};for(let n=0;n<t.length;n++){const i=qn(t[n]);for(const t in i)e[t]=i[t]}return e}const Jn={clone:qn,merge:Xn};class Yn extends Ye{constructor(t){super(),this.type="ShaderMaterial",this.defines={},this.uniforms={},this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",this.fragmentShader="void main() {\n\tgl_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.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,this.glslVersion=null,void 0!==t&&(void 0!==t.attributes&&console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(t))}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=qn(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.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const n in this.uniforms){const i=this.uniforms[n].value;i&&i.isTexture?e.uniforms[n]={type:"t",value:i.toJSON(t).uuid}:i&&i.isColor?e.uniforms[n]={type:"c",value:i.getHex()}:i&&i.isVector2?e.uniforms[n]={type:"v2",value:i.toArray()}:i&&i.isVector3?e.uniforms[n]={type:"v3",value:i.toArray()}:i&&i.isVector4?e.uniforms[n]={type:"v4",value:i.toArray()}:i&&i.isMatrix3?e.uniforms[n]={type:"m3",value:i.toArray()}:i&&i.isMatrix4?e.uniforms[n]={type:"m4",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;const n={};for(const t in this.extensions)!0===this.extensions[t]&&(n[t]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}Yn.prototype.isShaderMaterial=!0;class Zn extends Be{constructor(){super(),this.type="Camera",this.matrixWorldInverse=new ue,this.projectionMatrix=new ue,this.projectionMatrixInverse=new ue}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}Zn.prototype.isCamera=!0;class Qn extends Zn{constructor(t=50,e=1,n=.1,i=2e3){super(),this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(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(t){const e=.5*this.getFilmHeight()/t;this.fov=2*lt*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*ot*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*lt*Math.atan(Math.tan(.5*ot*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(t,e,n,i,r,s){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=s,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*ot*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i;const s=this.view;if(null!==this.view&&this.view.enabled){const t=s.fullWidth,a=s.fullHeight;r+=s.offsetX*i/t,e-=s.offsetY*n/a,i*=s.width/t,n*=s.height/a}const a=this.filmOffset;0!==a&&(r+=t*a/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(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}}Qn.prototype.isPerspectiveCamera=!0;const Kn=90;class $n extends Be{constructor(t,e,n){if(super(),this.type="CubeCamera",!0!==n.isWebGLCubeRenderTarget)return void console.error("THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.");this.renderTarget=n;const i=new Qn(Kn,1,t,e);i.layers=this.layers,i.up.set(0,-1,0),i.lookAt(new Nt(1,0,0)),this.add(i);const r=new Qn(Kn,1,t,e);r.layers=this.layers,r.up.set(0,-1,0),r.lookAt(new Nt(-1,0,0)),this.add(r);const s=new Qn(Kn,1,t,e);s.layers=this.layers,s.up.set(0,0,1),s.lookAt(new Nt(0,1,0)),this.add(s);const a=new Qn(Kn,1,t,e);a.layers=this.layers,a.up.set(0,0,-1),a.lookAt(new Nt(0,-1,0)),this.add(a);const o=new Qn(Kn,1,t,e);o.layers=this.layers,o.up.set(0,-1,0),o.lookAt(new Nt(0,0,1)),this.add(o);const l=new Qn(Kn,1,t,e);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new Nt(0,0,-1)),this.add(l)}update(t,e){null===this.parent&&this.updateMatrixWorld();const n=this.renderTarget,[i,r,s,a,o,l]=this.children,c=t.xr.enabled,h=t.getRenderTarget();t.xr.enabled=!1;const u=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0),t.render(e,i),t.setRenderTarget(n,1),t.render(e,r),t.setRenderTarget(n,2),t.render(e,s),t.setRenderTarget(n,3),t.render(e,a),t.setRenderTarget(n,4),t.render(e,o),n.texture.generateMipmaps=u,t.setRenderTarget(n,5),t.render(e,l),t.setRenderTarget(h),t.xr.enabled=c}}class ti extends At{constructor(t,e,n,i,s,a,o,l,c,h){super(t=void 0!==t?t:[],e=void 0!==e?e:r,n,i,s,a,o,l,c,h),this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}ti.prototype.isCubeTexture=!0;class ei extends Ct{constructor(t,e,n){Number.isInteger(e)&&(console.warn("THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )"),e=n),super(t,t,e),e=e||{},this.texture=new ti(void 0,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.encoding),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:g,this.texture._needsFlipEnvMap=!1}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.format=E,this.texture.encoding=e.encoding,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:"\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\n\t\t\t\t\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n\n\t\t\t\t}\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvWorldDirection = transformDirection( position, modelMatrix );\n\n\t\t\t\t\t#include <begin_vertex>\n\t\t\t\t\t#include <project_vertex>\n\n\t\t\t\t}\n\t\t\t",fragmentShader:"\n\n\t\t\t\tuniform sampler2D tEquirect;\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\t#include <common>\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t\t}\n\t\t\t"},i=new jn(5,5,5),r=new Yn({name:"CubemapFromEquirect",uniforms:qn(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});r.uniforms.tEquirect.value=e;const s=new Vn(i,r),a=e.minFilter;e.minFilter===y&&(e.minFilter=g);return new $n(1,10,this).update(t,s),e.minFilter=a,s.geometry.dispose(),s.material.dispose(),this}clear(t,e,n,i){const r=t.getRenderTarget();for(let r=0;r<6;r++)t.setRenderTarget(this,r),t.clear(e,n,i);t.setRenderTarget(r)}}ei.prototype.isWebGLCubeRenderTarget=!0;const ni=new Nt,ii=new Nt,ri=new yt;class si{constructor(t=new Nt(1,0,0),e=0){this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const i=ni.subVectors(n,e).cross(ii.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}intersectLine(t,e){const n=t.delta(ni),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const r=-(t.start.dot(this.normal)+this.constant)/i;return r<0||r>1?null:e.copy(n).multiplyScalar(r).add(t.start)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||ri.getNormalMatrix(t),i=this.coplanarPoint(ni).applyMatrix4(t),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return new this.constructor().copy(this)}}si.prototype.isPlane=!0;const ai=new ne,oi=new Nt;class li{constructor(t=new si,e=new si,n=new si,i=new si,r=new si,s=new si){this.planes=[t,e,n,i,r,s]}set(t,e,n,i,r,s){const 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(s),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t){const e=this.planes,n=t.elements,i=n[0],r=n[1],s=n[2],a=n[3],o=n[4],l=n[5],c=n[6],h=n[7],u=n[8],d=n[9],p=n[10],m=n[11],f=n[12],g=n[13],v=n[14],y=n[15];return e[0].setComponents(a-i,h-o,m-u,y-f).normalize(),e[1].setComponents(a+i,h+o,m+u,y+f).normalize(),e[2].setComponents(a+r,h+l,m+d,y+g).normalize(),e[3].setComponents(a-r,h-l,m-d,y-g).normalize(),e[4].setComponents(a-s,h-c,m-p,y-v).normalize(),e[5].setComponents(a+s,h+c,m+p,y+v).normalize(),this}intersectsObject(t){const e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),ai.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(ai)}intersectsSprite(t){return ai.center.set(0,0,0),ai.radius=.7071067811865476,ai.applyMatrix4(t.matrixWorld),this.intersectsSphere(ai)}intersectsSphere(t){const e=this.planes,n=t.center,i=-t.radius;for(let t=0;t<6;t++){if(e[t].distanceToPoint(n)<i)return!1}return!0}intersectsBox(t){const e=this.planes;for(let n=0;n<6;n++){const i=e[n];if(oi.x=i.normal.x>0?t.max.x:t.min.x,oi.y=i.normal.y>0?t.max.y:t.min.y,oi.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(oi)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function ci(){let t=null,e=!1,n=null,i=null;function r(e,s){n(e,s),i=t.requestAnimationFrame(r)}return{start:function(){!0!==e&&null!==n&&(i=t.requestAnimationFrame(r),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function hi(t,e){const n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&&(e=e.data);const n=i.get(e);n&&(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,r){if(e.isGLBufferAttribute){const t=i.get(e);return void((!t||t.version<e.version)&&i.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version}))}e.isInterleavedBufferAttribute&&(e=e.data);const s=i.get(e);void 0===s?i.set(e,function(e,i){const r=e.array,s=e.usage,a=t.createBuffer();t.bindBuffer(i,a),t.bufferData(i,r,s),e.onUploadCallback();let o=5126;return r instanceof Float32Array?o=5126:r instanceof Float64Array?console.warn("THREE.WebGLAttributes: Unsupported data buffer format: Float64Array."):r instanceof Uint16Array?e.isFloat16BufferAttribute?n?o=5131:console.warn("THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2."):o=5123:r instanceof Int16Array?o=5122:r instanceof Uint32Array?o=5125:r instanceof Int32Array?o=5124:r instanceof Int8Array?o=5120:(r instanceof Uint8Array||r instanceof Uint8ClampedArray)&&(o=5121),{buffer:a,type:o,bytesPerElement:r.BYTES_PER_ELEMENT,version:e.version}}(e,r)):s.version<e.version&&(!function(e,i,r){const s=i.array,a=i.updateRange;t.bindBuffer(r,e),-1===a.count?t.bufferSubData(r,0,s):(n?t.bufferSubData(r,a.offset*s.BYTES_PER_ELEMENT,s,a.offset,a.count):t.bufferSubData(r,a.offset*s.BYTES_PER_ELEMENT,s.subarray(a.offset,a.offset+a.count)),a.count=-1)}(s.buffer,e,r),s.version=e.version)}}}class ui extends Tn{constructor(t=1,e=1,n=1,i=1){super(),this.type="PlaneGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};const r=t/2,s=e/2,a=Math.floor(n),o=Math.floor(i),l=a+1,c=o+1,h=t/a,u=e/o,d=[],p=[],m=[],f=[];for(let t=0;t<c;t++){const e=t*u-s;for(let n=0;n<l;n++){const i=n*h-r;p.push(i,-e,0),m.push(0,0,1),f.push(n/a),f.push(1-t/o)}}for(let t=0;t<o;t++)for(let e=0;e<a;e++){const n=e+l*t,i=e+l*(t+1),r=e+1+l*(t+1),s=e+1+l*t;d.push(n,i,s),d.push(i,r,s)}this.setIndex(d),this.setAttribute("position",new gn(p,3)),this.setAttribute("normal",new gn(m,3)),this.setAttribute("uv",new gn(f,2))}static fromJSON(t){return new ui(t.width,t.height,t.widthSegments,t.heightSegments)}}const di={alphamap_fragment:"#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",alphatest_fragment:"#ifdef USE_ALPHATEST\n\tif ( diffuseColor.a < alphaTest ) discard;\n#endif",alphatest_pars_fragment:"#ifdef USE_ALPHATEST\n\tuniform float alphaTest;\n#endif",aomap_fragment:"#ifdef USE_AOMAP\n\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\n\treflectedLight.indirectDiffuse *= ambientOcclusion;\n\t#if defined( USE_ENVMAP ) && defined( STANDARD )\n\t\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\t\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\n\t#endif\n#endif",aomap_pars_fragment:"#ifdef USE_AOMAP\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n#endif",begin_vertex:"vec3 transformed = vec3( position );",beginnormal_vertex:"vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n\tvec3 objectTangent = vec3( tangent.xyz );\n#endif",bsdfs:"vec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 f0, const in float f90, const in float roughness ) {\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( f0, f90, dotVH );\n\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\tfloat D = D_GGX( alpha, dotNH );\n\treturn F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn 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\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\nfloat G_BlinnPhong_Implicit( ) {\n\treturn 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\n\tfloat G = G_BlinnPhong_Implicit( );\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\treturn F * ( G * D );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n\tfloat alpha = pow2( roughness );\n\tfloat invAlpha = 1.0 / alpha;\n\tfloat cos2h = dotNH * dotNH;\n\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\n\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat D = D_Charlie( sheenRoughness, dotNH );\n\tfloat V = V_Neubelt( dotNV, dotNL );\n\treturn sheenColor * ( D * V );\n}\n#endif",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\tvec2 dHdxy_fwd() {\n\t\tvec2 dSTdx = dFdx( vUv );\n\t\tvec2 dSTdy = dFdy( vUv );\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n\t\treturn vec2( dBx, dBy );\n\t}\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\n\t\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\n\t\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\t\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\t}\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvec4 plane;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\tplane = clippingPlanes[ i ];\n\t\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n\t}\n\t#pragma unroll_loop_end\n\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\tbool clipped = true;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\tif ( clipped ) discard;\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#elif defined( USE_COLOR )\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR )\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\n\tvarying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\n\tvColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n\tvColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n\tvColor.xyz *= instanceColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( 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 max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\nstruct GeometricContext {\n\tvec3 position;\n\tvec3 normal;\n\tvec3 viewDir;\n#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal;\n#endif\n};\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nfloat linearToRelativeLuminance( const in vec3 color ) {\n\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\n\treturn dot( weights, color.rgb );\n}\nbool isPerspectiveMatrix( mat4 m ) {\n\treturn m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\treturn vec2( u, v );\n}",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n\t#define cubeUV_maxMipLevel 8.0\n\t#define cubeUV_minMipLevel 4.0\n\t#define cubeUV_maxTileSize 256.0\n\t#define cubeUV_minTileSize 16.0\n\tfloat getFace( vec3 direction ) {\n\t\tvec3 absDirection = abs( direction );\n\t\tfloat face = - 1.0;\n\t\tif ( absDirection.x > absDirection.z ) {\n\t\t\tif ( absDirection.x > absDirection.y )\n\t\t\t\tface = direction.x > 0.0 ? 0.0 : 3.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t} else {\n\t\t\tif ( absDirection.z > absDirection.y )\n\t\t\t\tface = direction.z > 0.0 ? 2.0 : 5.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t}\n\t\treturn face;\n\t}\n\tvec2 getUV( vec3 direction, float face ) {\n\t\tvec2 uv;\n\t\tif ( face == 0.0 ) {\n\t\t\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 1.0 ) {\n\t\t\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n\t\t} else if ( face == 2.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\n\t\t} else if ( face == 3.0 ) {\n\t\t\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 4.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\n\t\t} else {\n\t\t\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\n\t\t}\n\t\treturn 0.5 * ( uv + 1.0 );\n\t}\n\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n\t\tfloat face = getFace( direction );\n\t\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n\t\tmipInt = max( mipInt, cubeUV_minMipLevel );\n\t\tfloat faceSize = exp2( mipInt );\n\t\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\n\t\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 );\n\t\tvec2 f = fract( uv );\n\t\tuv += 0.5 - f;\n\t\tif ( face > 2.0 ) {\n\t\t\tuv.y += faceSize;\n\t\t\tface -= 3.0;\n\t\t}\n\t\tuv.x += face * faceSize;\n\t\tif ( mipInt < cubeUV_maxMipLevel ) {\n\t\t\tuv.y += 2.0 * cubeUV_maxTileSize;\n\t\t}\n\t\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\n\t\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\n\t\tuv *= texelSize;\n\t\tvec3 tl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.x += texelSize;\n\t\tvec3 tr = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.y += texelSize;\n\t\tvec3 br = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.x -= texelSize;\n\t\tvec3 bl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tvec3 tm = mix( tl, tr, f.x );\n\t\tvec3 bm = mix( bl, br, f.x );\n\t\treturn mix( tm, bm, f.y );\n\t}\n\t#define r0 1.0\n\t#define v0 0.339\n\t#define m0 - 2.0\n\t#define r1 0.8\n\t#define v1 0.276\n\t#define m1 - 1.0\n\t#define r4 0.4\n\t#define v4 0.046\n\t#define m4 2.0\n\t#define r5 0.305\n\t#define v5 0.016\n\t#define m5 3.0\n\t#define r6 0.21\n\t#define v6 0.0038\n\t#define m6 4.0\n\tfloat roughnessToMip( float roughness ) {\n\t\tfloat mip = 0.0;\n\t\tif ( roughness >= r1 ) {\n\t\t\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\n\t\t} else if ( roughness >= r4 ) {\n\t\t\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\n\t\t} else if ( roughness >= r5 ) {\n\t\t\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\n\t\t} else if ( roughness >= r6 ) {\n\t\t\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5;\n\t\t} else {\n\t\t\tmip = - 2.0 * log2( 1.16 * roughness );\t\t}\n\t\treturn mip;\n\t}\n\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n\t\tfloat mip = clamp( roughnessToMip( roughness ), m0, cubeUV_maxMipLevel );\n\t\tfloat mipF = fract( mip );\n\t\tfloat mipInt = floor( mip );\n\t\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n\t\tif ( mipF == 0.0 ) {\n\t\t\treturn vec4( color0, 1.0 );\n\t\t} else {\n\t\t\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n\t\t\treturn vec4( mix( color0, color1, mipF ), 1.0 );\n\t\t}\n\t}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_INSTANCING\n\tmat3 m = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\n\ttransformedNormal = m * transformedNormal;\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\n\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",encodings_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",encodings_pars_fragment:"\nvec4 LinearToLinear( in vec4 value ) {\n\treturn value;\n}\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\n}\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\n}\nvec4 sRGBToLinear( in vec4 value ) {\n\treturn 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\treturn 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\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\n}\nvec4 LinearToRGBE( in vec4 value ) {\n\tfloat maxComponent = max( max( value.r, value.g ), value.b );\n\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\n\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\n}\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\n}\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\n\tM = ceil( M * 255.0 ) / 255.0;\n\treturn vec4( value.rgb / ( M * maxRange ), M );\n}\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\n}\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat D = max( maxRange / maxRGB, 1.0 );\n\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\n\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvec3 cameraToFrag;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t\tenvColor = envMapTexelToLinear( envColor );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\t\n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#if defined( USE_ENVMAP )\n\t#ifdef ENVMAP_MODE_REFRACTION\n\t\tuniform float refractionRatio;\n\t#endif\n\tvec3 getIBLIrradiance( const in vec3 normal ) {\n\t\t#if defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\n\t\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n\t\t#if defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec3 reflectVec;\n\t\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\t\treflectVec = reflect( - viewDir, normal );\n\t\t\t\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n\t\t\t#else\n\t\t\t\treflectVec = refract( - viewDir, normal, refractionRatio );\n\t\t\t#endif\n\t\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\n\t\t\treturn envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tvFogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float vFogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float vFogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn texture2D( gradientMap, coord ).rgb;\n\t#else\n\t\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\n\t#endif\n}",lightmap_fragment:"#ifdef USE_LIGHTMAP\n\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\n\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tlightMapIrradiance *= PI;\n\t#endif\n\treflectedLight.indirectDiffuse += lightMapIrradiance;\n#endif",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_vertex:"vec3 diffuse = vec3( 1.0 );\nGeometricContext geometry;\ngeometry.position = mvPosition.xyz;\ngeometry.normal = normalize( transformedNormal );\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\nGeometricContext backGeometry;\nbackGeometry.position = geometry.position;\nbackGeometry.normal = -geometry.normal;\nbackGeometry.viewDir = geometry.viewDir;\nvLightFront = vec3( 0.0 );\nvIndirectFront = vec3( 0.0 );\n#ifdef DOUBLE_SIDED\n\tvLightBack = vec3( 0.0 );\n\tvIndirectBack = vec3( 0.0 );\n#endif\nIncidentLight directLight;\nfloat dotNL;\nvec3 directLightColor_Diffuse;\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal );\n#ifdef DOUBLE_SIDED\n\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\n\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal );\n#endif\n#if NUM_POINT_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tgetPointLightInfo( pointLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tgetSpotLightInfo( spotLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_DIR_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tgetDirectionalLightInfo( directionalLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal );\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\nuniform vec3 lightProbe[ 9 ];\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\treturn irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n\t#if defined ( PHYSICALLY_CORRECT_LIGHTS )\n\t\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\t\tif ( cutoffDistance > 0.0 ) {\n\t\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t\t}\n\t\treturn distanceFalloff;\n\t#else\n\t\tif ( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\n\t\t\treturn pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent );\n\t\t}\n\t\treturn 1.0;\n\t#endif\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) {\n\t\tlight.color = directionalLight.color;\n\t\tlight.direction = directionalLight.direction;\n\t\tlight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) {\n\t\tvec3 lVector = pointLight.position - geometry.position;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tlight.color = pointLight.color;\n\t\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) {\n\t\tvec3 lVector = spotLight.position - geometry.position;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat angleCos = dot( light.direction, spotLight.direction );\n\t\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\tif ( spotAttenuation > 0.0 ) {\n\t\t\tfloat lightDistance = length( lVector );\n\t\t\tlight.color = spotLight.color * spotAttenuation;\n\t\t\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t\t} else {\n\t\t\tlight.color = vec3( 0.0 );\n\t\t\tlight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n\t\tfloat dotNL = dot( normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\treturn irradiance;\n\t}\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\nstruct ToonMaterial {\n\tvec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon\n#define Material_LightProbeLOD( material )\t(0)",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n\tvec3 diffuseColor;\n\tvec3 specularColor;\n\tfloat specularShininess;\n\tfloat specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, 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\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong\n#define Material_LightProbeLOD( material )\t(0)",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n\t#ifdef SPECULAR\n\t\tfloat specularIntensityFactor = specularIntensity;\n\t\tvec3 specularColorFactor = specularColor;\n\t\t#ifdef USE_SPECULARINTENSITYMAP\n\t\t\tspecularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a;\n\t\t#endif\n\t\t#ifdef USE_SPECULARCOLORMAP\n\t\t\tspecularColorFactor *= specularColorMapTexelToLinear( texture2D( specularColorMap, vUv ) ).rgb;\n\t\t#endif\n\t\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n\t#else\n\t\tfloat specularIntensityFactor = 1.0;\n\t\tvec3 specularColorFactor = vec3( 1.0 );\n\t\tmaterial.specularF90 = 1.0;\n\t#endif\n\tmaterial.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\n\tmaterial.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\tmaterial.clearcoatF0 = vec3( 0.04 );\n\tmaterial.clearcoatF90 = 1.0;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheenColor;\n\t#ifdef USE_SHEENCOLORMAP\n\t\tmaterial.sheenColor *= sheenColorMapTexelToLinear( texture2D( sheenColorMap, vUv ) ).rgb;\n\t#endif\n\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\n\t#ifdef USE_SHEENROUGHNESSMAP\n\t\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vUv ).a;\n\t#endif\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3 diffuseColor;\n\tfloat roughness;\n\tvec3 specularColor;\n\tfloat specularF90;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat clearcoat;\n\t\tfloat clearcoatRoughness;\n\t\tvec3 clearcoatF0;\n\t\tfloat clearcoatF90;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tvec3 sheenColor;\n\t\tfloat sheenRoughness;\n\t#endif\n};\nvec3 clearcoatSpecular = vec3( 0.0 );\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n\tvec4 r = roughness * c0 + c1;\n\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\n\treturn fab;\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\treturn specularColor * fab.x + specularF90 * fab.y;\n}\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\tvec3 FssEss = specularColor * fab.x + specularF90 * fab.y;\n\tfloat Ess = fab.x + fab.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometry.normal;\n\t\tvec3 viewDir = geometry.viewDir;\n\t\tvec3 position = geometry.position;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.roughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3(\t\t0, 1,\t\t0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = dotNLcc * directLight.color;\n\t\tclearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\treflectedLight.directSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenColor, material.sheenRoughness );\n\t#endif\n\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness );\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n\t#endif\n\tvec3 singleScattering = vec3( 0.0 );\n\tvec3 multiScattering = vec3( 0.0 );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\tcomputeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\n\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\n\treflectedLight.indirectSpecular += radiance * singleScattering;\n\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nGeometricContext geometry;\ngeometry.position = - vViewPosition;\ngeometry.normal = normal;\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\n#ifdef USE_CLEARCOAT\n\tgeometry.clearcoatNormal = clearcoatNormal;\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointLightInfo( pointLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotLightInfo( spotLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalLightInfo( directionalLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\tirradiance += getLightProbeIrradiance( lightProbe, geometry.normal );\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\n\t\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tlightMapIrradiance *= PI;\n\t\t#endif\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\tiblIrradiance += getIBLIrradiance( geometry.normal );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\tradiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness );\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvarying float vFragDepth;\n\t\tvarying float vIsPerspective;\n\t#else\n\t\tuniform float logDepthBufFC;\n\t#endif\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvFragDepth = 1.0 + gl_Position.w;\n\t\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n\t#else\n\t\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\n\t\t\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\n\t\t\tgl_Position.z *= gl_Position.w;\n\t\t}\n\t#endif\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 texelColor = texture2D( map, vUv );\n\ttexelColor = mapTexelToLinear( texelColor );\n\tdiffuseColor *= texelColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n#endif\n#ifdef USE_MAP\n\tvec4 mapTexel = texture2D( map, uv );\n\tdiffuseColor *= mapTexelToLinear( mapTexel );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tuniform mat3 uvTransform;\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\t#ifdef MORPHTARGETS_TEXTURE\n\t\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\t\tif ( morphTargetInfluences[ i ] > 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1, 2 ) * morphTargetInfluences[ i ];\n\t\t}\n\t#else\n\t\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\n\t\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\n\t\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\n\t\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\n\t#endif\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\tuniform float morphTargetBaseInfluence;\n\t#ifdef MORPHTARGETS_TEXTURE\n\t\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\t\tuniform sampler2DArray morphTargetsTexture;\n\t\tuniform vec2 morphTargetsTextureSize;\n\t\tvec3 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset, const in int stride ) {\n\t\t\tfloat texelIndex = float( vertexIndex * stride + offset );\n\t\t\tfloat y = floor( texelIndex / morphTargetsTextureSize.x );\n\t\t\tfloat x = texelIndex - y * morphTargetsTextureSize.x;\n\t\t\tvec3 morphUV = vec3( ( x + 0.5 ) / morphTargetsTextureSize.x, y / morphTargetsTextureSize.y, morphTargetIndex );\n\t\t\treturn texture( morphTargetsTexture, morphUV ).xyz;\n\t\t}\n\t#else\n\t\t#ifndef USE_MORPHNORMALS\n\t\t\tuniform float morphTargetInfluences[ 8 ];\n\t\t#else\n\t\t\tuniform float morphTargetInfluences[ 4 ];\n\t\t#endif\n\t#endif\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\t#ifdef MORPHTARGETS_TEXTURE\n\t\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\t\t#ifndef USE_MORPHNORMALS\n\t\t\t\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 1 ) * morphTargetInfluences[ i ];\n\t\t\t#else\n\t\t\t\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 2 ) * morphTargetInfluences[ i ];\n\t\t\t#endif\n\t\t}\n\t#else\n\t\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\n\t\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\n\t\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\n\t\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\n\t\t#ifndef USE_MORPHNORMALS\n\t\t\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\n\t\t\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\n\t\t\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\n\t\t\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\n\t\t#endif\n\t#endif\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\n\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\t#ifdef USE_TANGENT\n\t\tvec3 tangent = normalize( vTangent );\n\t\tvec3 bitangent = normalize( vBitangent );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\ttangent = tangent * faceDirection;\n\t\t\tbitangent = bitangent * faceDirection;\n\t\t#endif\n\t\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tmat3 vTBN = mat3( tangent, bitangent, normal );\n\t\t#endif\n\t#endif\n#endif\nvec3 geometryNormal = normal;",normal_fragment_maps:"#ifdef OBJECTSPACE_NORMALMAP\n\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( TANGENTSPACE_NORMALMAP )\n\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\t#ifdef USE_TANGENT\n\t\tnormal = normalize( vTBN * mapN );\n\t#else\n\t\tnormal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection );\n\t#endif\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normal_pars_fragment:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_pars_vertex:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_vertex:"#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef OBJECTSPACE_NORMALMAP\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\n\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\n\t\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\n\t\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\n\t\tvec2 st0 = dFdx( vUv.st );\n\t\tvec2 st1 = dFdy( vUv.st );\n\t\tvec3 N = surf_norm;\n\t\tvec3 q1perp = cross( q1, N );\n\t\tvec3 q0perp = cross( N, q0 );\n\t\tvec3 T = q1perp * st0.x + q0perp * st1.x;\n\t\tvec3 B = q1perp * st0.y + q0perp * st1.y;\n\t\tfloat det = max( dot( T, T ), dot( B, B ) );\n\t\tfloat scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );\n\t\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\n\t}\n#endif",clearcoat_normal_fragment_begin:"#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal = geometryNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\t#ifdef USE_TANGENT\n\t\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\n\t#else\n\t\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\n\t#endif\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif",output_fragment:"#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= transmissionAlpha + 0.1;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 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\tvec4 r = vec4( fract( v * PackFactors ), v );\n\tr.yzw -= r.xyz * ShiftRight8;\treturn r * PackUpscale;\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors );\n}\nvec4 pack2HalfToRGBA( vec2 v ) {\n\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\n\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\n}\nvec2 unpackRGBATo2Half( vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\n\treturn linearClipZ * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n\t\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\n\t}\n\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n\t\tfloat occlusion = 1.0;\n\t\tvec2 distribution = texture2DDistribution( shadow, uv );\n\t\tfloat hard_shadow = step( compare , distribution.x );\n\t\tif (hard_shadow != 1.0 ) {\n\t\t\tfloat distance = compare - distribution.x ;\n\t\t\tfloat variance = max( 0.00000, distribution.y * distribution.y );\n\t\t\tfloat softness_probability = variance / (variance + distance * distance );\t\t\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\t\t\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n\t\t}\n\t\treturn occlusion;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\n\t\tbool inFrustum = all( inFrustumVec );\n\t\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\n\t\tbool frustumTest = all( frustumTestVec );\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tfloat dx2 = dx0 / 2.0;\n\t\t\tfloat dy2 = dy0 / 2.0;\n\t\t\tfloat dx3 = dx1 / 2.0;\n\t\t\tfloat dy3 = dy1 / 2.0;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 17.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx = texelSize.x;\n\t\t\tfloat dy = texelSize.y;\n\t\t\tvec2 uv = shadowCoord.xy;\n\t\t\tvec2 f = fract( uv * shadowMapSize + 0.5 );\n\t\t\tuv -= f * texelSize;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t\tf.x ),\n\t\t\t\t\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), \n\t\t\t\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t\tf.x ),\n\t\t\t\t\t f.y )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\t\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn shadow;\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z >= almostOne ) {\n\t\t\tif ( v.z > 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x >= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y >= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\tdp += shadowBias;\n\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\treturn (\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#else\n\t\t\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t#endif\n\t}\n#endif",shadowmap_pars_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n#endif",shadowmap_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0\n\t\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\tvec4 shadowWorldPosition;\n\t#endif\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tdirectionalLight = directionalLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tspotLight = spotLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tpointLight = pointLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\t#ifdef BONE_TEXTURE\n\t\tuniform highp sampler2D boneTexture;\n\t\tuniform int boneTextureSize;\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tfloat j = i * 4.0;\n\t\t\tfloat x = mod( j, float( boneTextureSize ) );\n\t\t\tfloat y = floor( j / float( boneTextureSize ) );\n\t\t\tfloat dx = 1.0 / float( boneTextureSize );\n\t\t\tfloat dy = 1.0 / float( boneTextureSize );\n\t\t\ty = dy * ( y + 0.5 );\n\t\t\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n\t\t\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n\t\t\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n\t\t\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n\t\t\tmat4 bone = mat4( v1, v2, v3, v4 );\n\t\t\treturn bone;\n\t\t}\n\t#else\n\t\tuniform mat4 boneMatrices[ MAX_BONES ];\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tmat4 bone = boneMatrices[ int(i) ];\n\t\t\treturn bone;\n\t\t}\n\t#endif\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn toneMappingExposure * color;\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 OptimizedCineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n\treturn a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tconst mat3 ACESInputMat = mat3(\n\t\tvec3( 0.59719, 0.07600, 0.02840 ),\t\tvec3( 0.35458, 0.90834, 0.13383 ),\n\t\tvec3( 0.04823, 0.01566, 0.83777 )\n\t);\n\tconst mat3 ACESOutputMat = mat3(\n\t\tvec3(\t1.60475, -0.10208, -0.00327 ),\t\tvec3( -0.53108,\t1.10813, -0.07276 ),\n\t\tvec3( -0.07367, -0.00605,\t1.07602 )\n\t);\n\tcolor *= toneMappingExposure / 0.6;\n\tcolor = ACESInputMat * color;\n\tcolor = RRTAndODTFit( color );\n\tcolor = ACESOutputMat * color;\n\treturn saturate( color );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmission_fragment:"#ifdef USE_TRANSMISSION\n\tfloat transmissionAlpha = 1.0;\n\tfloat transmissionFactor = transmission;\n\tfloat thicknessFactor = thickness;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\ttransmissionFactor *= texture2D( transmissionMap, vUv ).r;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tthicknessFactor *= texture2D( thicknessMap, vUv ).g;\n\t#endif\n\tvec3 pos = vWorldPosition;\n\tvec3 v = normalize( cameraPosition - pos );\n\tvec3 n = inverseTransformDirection( normal, viewMatrix );\n\tvec4 transmission = getIBLVolumeRefraction(\n\t\tn, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90,\n\t\tpos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor,\n\t\tattenuationColor, attenuationDistance );\n\ttotalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor );\n\ttransmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor );\n#endif",transmission_pars_fragment:"#ifdef USE_TRANSMISSION\n\tuniform float transmission;\n\tuniform float thickness;\n\tuniform float attenuationDistance;\n\tuniform vec3 attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tuniform sampler2D transmissionMap;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tuniform sampler2D thicknessMap;\n\t#endif\n\tuniform vec2 transmissionSamplerSize;\n\tuniform sampler2D transmissionSamplerMap;\n\tuniform mat4 modelMatrix;\n\tuniform mat4 projectionMatrix;\n\tvarying vec3 vWorldPosition;\n\tvec3 getVolumeTransmissionRay( vec3 n, vec3 v, float thickness, float ior, mat4 modelMatrix ) {\n\t\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n\t\tvec3 modelScale;\n\t\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n\t\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n\t\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n\t\treturn normalize( refractionVector ) * thickness * modelScale;\n\t}\n\tfloat applyIorToRoughness( float roughness, float ior ) {\n\t\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n\t}\n\tvec4 getTransmissionSample( vec2 fragCoord, float roughness, float ior ) {\n\t\tfloat framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\treturn texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod );\n\t\t#else\n\t\t\treturn texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod );\n\t\t#endif\n\t}\n\tvec3 applyVolumeAttenuation( vec3 radiance, float transmissionDistance, vec3 attenuationColor, float attenuationDistance ) {\n\t\tif ( attenuationDistance == 0.0 ) {\n\t\t\treturn radiance;\n\t\t} else {\n\t\t\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n\t\t\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\t\t\treturn transmittance * radiance;\n\t\t}\n\t}\n\tvec4 getIBLVolumeRefraction( vec3 n, vec3 v, float roughness, vec3 diffuseColor, vec3 specularColor, float specularF90,\n\t\tvec3 position, mat4 modelMatrix, mat4 viewMatrix, mat4 projMatrix, float ior, float thickness,\n\t\tvec3 attenuationColor, float attenuationDistance ) {\n\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\trefractionCoords += 1.0;\n\t\trefractionCoords /= 2.0;\n\t\tvec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n\t\tvec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance );\n\t\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n\t\treturn vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a );\n\t}\n#endif",uv_pars_fragment:"#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\n\tvarying vec2 vUv;\n#endif",uv_pars_vertex:"#ifdef USE_UV\n\t#ifdef UVS_VERTEX_ONLY\n\t\tvec2 vUv;\n\t#else\n\t\tvarying vec2 vUv;\n\t#endif\n\tuniform mat3 uvTransform;\n#endif",uv_vertex:"#ifdef USE_UV\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n#endif",uv2_pars_fragment:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvarying vec2 vUv2;\n#endif",uv2_pars_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tattribute vec2 uv2;\n\tvarying vec2 vUv2;\n\tuniform mat3 uv2Transform;\n#endif",uv2_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION )\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",background_frag:"uniform sampler2D t2D;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n}",cube_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n\tgl_Position.z = gl_Position.w;\n}",cube_frag:"#include <envmap_common_pars_fragment>\nuniform float opacity;\nvarying vec3 vWorldDirection;\n#include <cube_uv_reflection_fragment>\nvoid main() {\n\tvec3 vReflect = vWorldDirection;\n\t#include <envmap_fragment>\n\tgl_FragColor = envColor;\n\tgl_FragColor.a *= opacity;\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\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>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform 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 <alphatest_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <logdepthbuf_fragment>\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\t#endif\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\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <clipping_planes_vertex>\n\tvWorldPosition = worldPosition.xyz;\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 <alphatest_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main () {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV = equirectUv( direction );\n\tvec4 texColor = texture2D( tEquirect, sampleUV );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\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 <morphtarget_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include <color_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\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\t#include <clipping_planes_fragment>\n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <color_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\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\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinbase_vertex>\n\t\t#include <skinnormal_vertex>\n\t\t#include <defaultnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <fog_vertex>\n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\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 <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\t\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include <aomap_fragment>\n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include <envmap_fragment>\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\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\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <lights_lambert_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",meshlambert_frag:"uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\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 <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\t#include <emissivemap_fragment>\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\n\t#else\n\t\treflectedLight.indirectDiffuse += vIndirectFront;\n\t#endif\n\t#include <lightmap_fragment>\n\treflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\n\t#else\n\t\treflectedLight.directDiffuse = vLightFront;\n\t#endif\n\treflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask();\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#include <common>\n#include <uv_pars_vertex>\n#include <color_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_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\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n\tvViewPosition = - mvPosition.xyz;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <fog_pars_fragment>\n#include <normal_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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t\tmatcapColor = matcapTexelToLinear( matcapColor );\n\t#else\n\t\tvec4 matcapColor = vec4( 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshnormal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <normal_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\t#include <uv_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",meshnormal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#include <packing>\n#include <uv_pars_fragment>\n#include <normal_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\t#include <clipping_planes_fragment>\n\t#include <logdepthbuf_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\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 <normal_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\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\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 <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_phong_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n\tvarying vec3 vWorldPosition;\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 <normal_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\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n#ifdef USE_TRANSMISSION\n\tvWorldPosition = worldPosition.xyz;\n#endif\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n\t#define IOR\n\t#define SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n\tuniform float ior;\n#endif\n#ifdef SPECULAR\n\tuniform float specularIntensity;\n\tuniform vec3 specularColor;\n\t#ifdef USE_SPECULARINTENSITYMAP\n\t\tuniform sampler2D specularIntensityMap;\n\t#endif\n\t#ifdef USE_SPECULARCOLORMAP\n\t\tuniform sampler2D specularColorMap;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheenColor;\n\tuniform float sheenRoughness;\n\t#ifdef USE_SHEENCOLORMAP\n\t\tuniform sampler2D sheenColorMap;\n\t#endif\n\t#ifdef USE_SHEENROUGHNESSMAP\n\t\tuniform sampler2D sheenRoughnessMap;\n\t#endif\n#endif\nvarying vec3 vViewPosition;\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 <alphatest_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_common_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_physical_pars_fragment>\n#include <transmission_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <clearcoat_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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <roughnessmap_fragment>\n\t#include <metalnessmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <clearcoat_normal_fragment_begin>\n\t#include <clearcoat_normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_physical_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n\t#include <transmission_fragment>\n\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\n\t\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n\t\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat;\n\t#endif\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\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 <normal_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\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\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 <alphatest_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <gradientmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_toon_pars_fragment>\n#include <shadowmap_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\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_toon_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\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\t#include <color_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <project_vertex>\n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <fog_vertex>\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 <alphatest_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_particle_fragment>\n\t#include <color_fragment>\n\t#include <alphatest_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}",shadow_vert:"#include <common>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\nvoid main() {\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\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\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\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\t#include <uv_vertex>\n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <output_fragment>\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n}"},pi={common:{diffuse:{value:new nn(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new yt},uv2Transform:{value:new yt},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},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 vt(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 nn(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new nn(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new yt}},sprite:{diffuse:{value:new nn(16777215)},opacity:{value:1},center:{value:new vt(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new yt}}},mi={basic:{uniforms:Xn([pi.common,pi.specularmap,pi.envmap,pi.aomap,pi.lightmap,pi.fog]),vertexShader:di.meshbasic_vert,fragmentShader:di.meshbasic_frag},lambert:{uniforms:Xn([pi.common,pi.specularmap,pi.envmap,pi.aomap,pi.lightmap,pi.emissivemap,pi.fog,pi.lights,{emissive:{value:new nn(0)}}]),vertexShader:di.meshlambert_vert,fragmentShader:di.meshlambert_frag},phong:{uniforms:Xn([pi.common,pi.specularmap,pi.envmap,pi.aomap,pi.lightmap,pi.emissivemap,pi.bumpmap,pi.normalmap,pi.displacementmap,pi.fog,pi.lights,{emissive:{value:new nn(0)},specular:{value:new nn(1118481)},shininess:{value:30}}]),vertexShader:di.meshphong_vert,fragmentShader:di.meshphong_frag},standard:{uniforms:Xn([pi.common,pi.envmap,pi.aomap,pi.lightmap,pi.emissivemap,pi.bumpmap,pi.normalmap,pi.displacementmap,pi.roughnessmap,pi.metalnessmap,pi.fog,pi.lights,{emissive:{value:new nn(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:di.meshphysical_vert,fragmentShader:di.meshphysical_frag},toon:{uniforms:Xn([pi.common,pi.aomap,pi.lightmap,pi.emissivemap,pi.bumpmap,pi.normalmap,pi.displacementmap,pi.gradientmap,pi.fog,pi.lights,{emissive:{value:new nn(0)}}]),vertexShader:di.meshtoon_vert,fragmentShader:di.meshtoon_frag},matcap:{uniforms:Xn([pi.common,pi.bumpmap,pi.normalmap,pi.displacementmap,pi.fog,{matcap:{value:null}}]),vertexShader:di.meshmatcap_vert,fragmentShader:di.meshmatcap_frag},points:{uniforms:Xn([pi.points,pi.fog]),vertexShader:di.points_vert,fragmentShader:di.points_frag},dashed:{uniforms:Xn([pi.common,pi.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:di.linedashed_vert,fragmentShader:di.linedashed_frag},depth:{uniforms:Xn([pi.common,pi.displacementmap]),vertexShader:di.depth_vert,fragmentShader:di.depth_frag},normal:{uniforms:Xn([pi.common,pi.bumpmap,pi.normalmap,pi.displacementmap,{opacity:{value:1}}]),vertexShader:di.meshnormal_vert,fragmentShader:di.meshnormal_frag},sprite:{uniforms:Xn([pi.sprite,pi.fog]),vertexShader:di.sprite_vert,fragmentShader:di.sprite_frag},background:{uniforms:{uvTransform:{value:new yt},t2D:{value:null}},vertexShader:di.background_vert,fragmentShader:di.background_frag},cube:{uniforms:Xn([pi.envmap,{opacity:{value:1}}]),vertexShader:di.cube_vert,fragmentShader:di.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:di.equirect_vert,fragmentShader:di.equirect_frag},distanceRGBA:{uniforms:Xn([pi.common,pi.displacementmap,{referencePosition:{value:new Nt},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:di.distanceRGBA_vert,fragmentShader:di.distanceRGBA_frag},shadow:{uniforms:Xn([pi.lights,pi.fog,{color:{value:new nn(0)},opacity:{value:1}}]),vertexShader:di.shadow_vert,fragmentShader:di.shadow_frag}};function fi(t,e,n,i,r){const s=new nn(0);let a,o,c=0,h=null,u=0,d=null;function p(t,e){n.buffers.color.setClear(t.r,t.g,t.b,e,r)}return{getClearColor:function(){return s},setClearColor:function(t,e=1){s.set(t),c=e,p(s,c)},getClearAlpha:function(){return c},setClearAlpha:function(t){c=t,p(s,c)},render:function(n,r){let m=!1,f=!0===r.isScene?r.background:null;f&&f.isTexture&&(f=e.get(f));const g=t.xr,v=g.getSession&&g.getSession();v&&"additive"===v.environmentBlendMode&&(f=null),null===f?p(s,c):f&&f.isColor&&(p(f,1),m=!0),(t.autoClear||m)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),f&&(f.isCubeTexture||f.mapping===l)?(void 0===o&&(o=new Vn(new jn(1,1,1),new Yn({name:"BackgroundCubeMaterial",uniforms:qn(mi.cube.uniforms),vertexShader:mi.cube.vertexShader,fragmentShader:mi.cube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),o.geometry.deleteAttribute("normal"),o.geometry.deleteAttribute("uv"),o.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(o.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),i.update(o)),o.material.uniforms.envMap.value=f,o.material.uniforms.flipEnvMap.value=f.isCubeTexture&&!1===f.isRenderTargetTexture?-1:1,h===f&&u===f.version&&d===t.toneMapping||(o.material.needsUpdate=!0,h=f,u=f.version,d=t.toneMapping),n.unshift(o,o.geometry,o.material,0,0,null)):f&&f.isTexture&&(void 0===a&&(a=new Vn(new ui(2,2),new Yn({name:"BackgroundMaterial",uniforms:qn(mi.background.uniforms),vertexShader:mi.background.vertexShader,fragmentShader:mi.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),a.geometry.deleteAttribute("normal"),Object.defineProperty(a.material,"map",{get:function(){return this.uniforms.t2D.value}}),i.update(a)),a.material.uniforms.t2D.value=f,!0===f.matrixAutoUpdate&&f.updateMatrix(),a.material.uniforms.uvTransform.value.copy(f.matrix),h===f&&u===f.version&&d===t.toneMapping||(a.material.needsUpdate=!0,h=f,u=f.version,d=t.toneMapping),n.unshift(a,a.geometry,a.material,0,0,null))}}}function gi(t,e,n,i){const r=t.getParameter(34921),s=i.isWebGL2?null:e.get("OES_vertex_array_object"),a=i.isWebGL2||null!==s,o={},l=d(null);let c=l;function h(e){return i.isWebGL2?t.bindVertexArray(e):s.bindVertexArrayOES(e)}function u(e){return i.isWebGL2?t.deleteVertexArray(e):s.deleteVertexArrayOES(e)}function d(t){const e=[],n=[],i=[];for(let t=0;t<r;t++)e[t]=0,n[t]=0,i[t]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:e,enabledAttributes:n,attributeDivisors:i,object:t,attributes:{},index:null}}function p(){const t=c.newAttributes;for(let e=0,n=t.length;e<n;e++)t[e]=0}function m(t){f(t,0)}function f(n,r){const s=c.newAttributes,a=c.enabledAttributes,o=c.attributeDivisors;if(s[n]=1,0===a[n]&&(t.enableVertexAttribArray(n),a[n]=1),o[n]!==r){(i.isWebGL2?t:e.get("ANGLE_instanced_arrays"))[i.isWebGL2?"vertexAttribDivisor":"vertexAttribDivisorANGLE"](n,r),o[n]=r}}function g(){const e=c.newAttributes,n=c.enabledAttributes;for(let i=0,r=n.length;i<r;i++)n[i]!==e[i]&&(t.disableVertexAttribArray(i),n[i]=0)}function v(e,n,r,s,a,o){!0!==i.isWebGL2||5124!==r&&5125!==r?t.vertexAttribPointer(e,n,r,s,a,o):t.vertexAttribIPointer(e,n,r,a,o)}function y(){x(),c!==l&&(c=l,h(c.object))}function x(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:function(r,l,u,y,x){let _=!1;if(a){const e=function(e,n,r){const a=!0===r.wireframe;let l=o[e.id];void 0===l&&(l={},o[e.id]=l);let c=l[n.id];void 0===c&&(c={},l[n.id]=c);let h=c[a];void 0===h&&(h=d(i.isWebGL2?t.createVertexArray():s.createVertexArrayOES()),c[a]=h);return h}(y,u,l);c!==e&&(c=e,h(c.object)),_=function(t,e){const n=c.attributes,i=t.attributes;let r=0;for(const t in i){const e=n[t],s=i[t];if(void 0===e)return!0;if(e.attribute!==s)return!0;if(e.data!==s.data)return!0;r++}return c.attributesNum!==r||c.index!==e}(y,x),_&&function(t,e){const n={},i=t.attributes;let r=0;for(const t in i){const e=i[t],s={};s.attribute=e,e.data&&(s.data=e.data),n[t]=s,r++}c.attributes=n,c.attributesNum=r,c.index=e}(y,x)}else{const t=!0===l.wireframe;c.geometry===y.id&&c.program===u.id&&c.wireframe===t||(c.geometry=y.id,c.program=u.id,c.wireframe=t,_=!0)}!0===r.isInstancedMesh&&(_=!0),null!==x&&n.update(x,34963),_&&(!function(r,s,a,o){if(!1===i.isWebGL2&&(r.isInstancedMesh||o.isInstancedBufferGeometry)&&null===e.get("ANGLE_instanced_arrays"))return;p();const l=o.attributes,c=a.getAttributes(),h=s.defaultAttributeValues;for(const e in c){const i=c[e];if(i.location>=0){let s=l[e];if(void 0===s&&("instanceMatrix"===e&&r.instanceMatrix&&(s=r.instanceMatrix),"instanceColor"===e&&r.instanceColor&&(s=r.instanceColor)),void 0!==s){const e=s.normalized,a=s.itemSize,l=n.get(s);if(void 0===l)continue;const c=l.buffer,h=l.type,u=l.bytesPerElement;if(s.isInterleavedBufferAttribute){const n=s.data,l=n.stride,d=s.offset;if(n&&n.isInstancedInterleavedBuffer){for(let t=0;t<i.locationSize;t++)f(i.location+t,n.meshPerAttribute);!0!==r.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=n.meshPerAttribute*n.count)}else for(let t=0;t<i.locationSize;t++)m(i.location+t);t.bindBuffer(34962,c);for(let t=0;t<i.locationSize;t++)v(i.location+t,a/i.locationSize,h,e,l*u,(d+a/i.locationSize*t)*u)}else{if(s.isInstancedBufferAttribute){for(let t=0;t<i.locationSize;t++)f(i.location+t,s.meshPerAttribute);!0!==r.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=s.meshPerAttribute*s.count)}else for(let t=0;t<i.locationSize;t++)m(i.location+t);t.bindBuffer(34962,c);for(let t=0;t<i.locationSize;t++)v(i.location+t,a/i.locationSize,h,e,a*u,a/i.locationSize*t*u)}}else if(void 0!==h){const n=h[e];if(void 0!==n)switch(n.length){case 2:t.vertexAttrib2fv(i.location,n);break;case 3:t.vertexAttrib3fv(i.location,n);break;case 4:t.vertexAttrib4fv(i.location,n);break;default:t.vertexAttrib1fv(i.location,n);}}}}g()}(r,l,u,y),null!==x&&t.bindBuffer(34963,n.get(x).buffer))},reset:y,resetDefaultState:x,dispose:function(){y();for(const t in o){const e=o[t];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete o[t]}},releaseStatesOfGeometry:function(t){if(void 0===o[t.id])return;const e=o[t.id];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete o[t.id]},releaseStatesOfProgram:function(t){for(const e in o){const n=o[e];if(void 0===n[t.id])continue;const i=n[t.id];for(const t in i)u(i[t].object),delete i[t];delete n[t.id]}},initAttributes:p,enableAttribute:m,disableUnusedAttributes:g}}function vi(t,e,n,i){const r=i.isWebGL2;let s;this.setMode=function(t){s=t},this.render=function(e,i){t.drawArrays(s,e,i),n.update(i,s,1)},this.renderInstances=function(i,a,o){if(0===o)return;let l,c;if(r)l=t,c="drawArraysInstanced";else if(l=e.get("ANGLE_instanced_arrays"),c="drawArraysInstancedANGLE",null===l)return void console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");l[c](s,i,a,o),n.update(a,s,o)}}function yi(t,e,n){let i;function r(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"}const s="undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||"undefined"!=typeof WebGL2ComputeRenderingContext&&t instanceof WebGL2ComputeRenderingContext;let a=void 0!==n.precision?n.precision:"highp";const o=r(a);o!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",o,"instead."),a=o);const l=s||e.has("WEBGL_draw_buffers"),c=!0===n.logarithmicDepthBuffer,h=t.getParameter(34930),u=t.getParameter(35660),d=t.getParameter(3379),p=t.getParameter(34076),m=t.getParameter(34921),f=t.getParameter(36347),g=t.getParameter(36348),v=t.getParameter(36349),y=u>0,x=s||e.has("OES_texture_float");return{isWebGL2:s,drawBuffers:l,getMaxAnisotropy:function(){if(void 0!==i)return i;if(!0===e.has("EXT_texture_filter_anisotropic")){const n=e.get("EXT_texture_filter_anisotropic");i=t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:r,precision:a,logarithmicDepthBuffer:c,maxTextures:h,maxVertexTextures:u,maxTextureSize:d,maxCubemapSize:p,maxAttributes:m,maxVertexUniforms:f,maxVaryings:g,maxFragmentUniforms:v,vertexTextures:y,floatFragmentTextures:x,floatVertexTextures:y&&x,maxSamples:s?t.getParameter(36183):0}}function xi(t){const e=this;let n=null,i=0,r=!1,s=!1;const a=new si,o=new yt,l={value:null,needsUpdate:!1};function c(){l.value!==n&&(l.value=n,l.needsUpdate=i>0),e.numPlanes=i,e.numIntersection=0}function h(t,n,i,r){const s=null!==t?t.length:0;let c=null;if(0!==s){if(c=l.value,!0!==r||null===c){const e=i+4*s,r=n.matrixWorldInverse;o.getNormalMatrix(r),(null===c||c.length<e)&&(c=new Float32Array(e));for(let e=0,n=i;e!==s;++e,n+=4)a.copy(t[e]).applyMatrix4(r,o),a.normal.toArray(c,n),c[n+3]=a.constant}l.value=c,l.needsUpdate=!0}return e.numPlanes=s,e.numIntersection=0,c}this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(t,e,s){const a=0!==t.length||e||0!==i||r;return r=e,n=h(t,s,0),i=t.length,a},this.beginShadows=function(){s=!0,h(null)},this.endShadows=function(){s=!1,c()},this.setState=function(e,a,o){const u=e.clippingPlanes,d=e.clipIntersection,p=e.clipShadows,m=t.get(e);if(!r||null===u||0===u.length||s&&!p)s?h(null):c();else{const t=s?0:i,e=4*t;let r=m.clippingState||null;l.value=r,r=h(u,a,e,o);for(let t=0;t!==e;++t)r[t]=n[t];m.clippingState=r,this.numIntersection=d?this.numPlanes:0,this.numPlanes+=t}}}function _i(t){let e=new WeakMap;function n(t,e){return e===a?t.mapping=r:e===o&&(t.mapping=s),t}function i(t){const n=t.target;n.removeEventListener("dispose",i);const r=e.get(n);void 0!==r&&(e.delete(n),r.dispose())}return{get:function(r){if(r&&r.isTexture&&!1===r.isRenderTargetTexture){const s=r.mapping;if(s===a||s===o){if(e.has(r)){return n(e.get(r).texture,r.mapping)}{const s=r.image;if(s&&s.height>0){const a=t.getRenderTarget(),o=new ei(s.height/2);return o.fromEquirectangularTexture(t,r),e.set(r,o),t.setRenderTarget(a),r.addEventListener("dispose",i),n(o.texture,r.mapping)}return null}}}return r},dispose:function(){e=new WeakMap}}}mi.physical={uniforms:Xn([mi.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new vt(1,1)},clearcoatNormalMap:{value:null},sheen:{value:0},sheenColor:{value:new nn(0)},sheenColorMap:{value:null},sheenRoughness:{value:0},sheenRoughnessMap:{value:null},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new vt},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationColor:{value:new nn(0)},specularIntensity:{value:0},specularIntensityMap:{value:null},specularColor:{value:new nn(1,1,1)},specularColorMap:{value:null}}]),vertexShader:di.meshphysical_vert,fragmentShader:di.meshphysical_frag};class Mi extends Zn{constructor(t=-1,e=1,n=1,i=-1,r=.1,s=2e3){super(),this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=n,this.bottom=i,this.near=r,this.far=s,this.updateProjectionMatrix()}copy(t,e){return super.copy(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(t,e,n,i,r,s){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=s,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const 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;let r=n-t,s=n+t,a=i+e,o=i-e;if(null!==this.view&&this.view.enabled){const t=(this.right-this.left)/this.view.fullWidth/this.zoom,e=(this.top-this.bottom)/this.view.fullHeight/this.zoom;r+=t*this.view.offsetX,s=r+t*this.view.width,a-=e*this.view.offsetY,o=a-e*this.view.height}this.projectionMatrix.makeOrthographic(r,s,a,o,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(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}}Mi.prototype.isOrthographicCamera=!0;class bi extends Yn{constructor(t){super(t),this.type="RawShaderMaterial"}}bi.prototype.isRawShaderMaterial=!0;const wi=Math.pow(2,8),Si=[.125,.215,.35,.446,.526,.582],Ti=5+Si.length,Ei=20,Ai={[X]:0,[J]:1,[Z]:2,[Q]:3,[K]:4,[$]:5,[Y]:6},Li=new Mi,{_lodPlanes:Ri,_sizeLods:Ci,_sigmas:Pi}=Ui(),Di=new nn;let Ii=null;const Ni=(1+Math.sqrt(5))/2,zi=1/Ni,Bi=[new Nt(1,1,1),new Nt(-1,1,1),new Nt(1,1,-1),new Nt(-1,1,-1),new Nt(0,Ni,zi),new Nt(0,Ni,-zi),new Nt(zi,0,Ni),new Nt(-zi,0,Ni),new Nt(Ni,zi,0),new Nt(-Ni,zi,0)];class Fi{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._blurMaterial=function(t){const e=new Float32Array(t),n=new Nt(0,1,0);return new bi({name:"SphericalGaussianBlur",defines:{n:t},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:e},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n},inputEncoding:{value:Ai[3e3]},outputEncoding:{value:Ai[3e3]}},vertexShader:Wi(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform int samples;\n\t\t\tuniform float weights[ n ];\n\t\t\tuniform bool latitudinal;\n\t\t\tuniform float dTheta;\n\t\t\tuniform float mipInt;\n\t\t\tuniform vec3 poleAxis;\n\n\t\t\t${ji()}\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include <cube_uv_reflection_fragment>\n\n\t\t\tvec3 getSample( float theta, vec3 axis ) {\n\n\t\t\t\tfloat cosTheta = cos( theta );\n\t\t\t\t// Rodrigues' axis-angle rotation\n\t\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross( axis, vOutputDirection ) * sin( theta )\n\t\t\t\t\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\n\n\t\t\t\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\n\n\t\t\t}\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\n\n\t\t\t\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\n\n\t\t\t\t\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\n\n\t\t\t\t}\n\n\t\t\t\taxis = normalize( axis );\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\n\n\t\t\t\tfor ( int i = 1; i < n; i++ ) {\n\n\t\t\t\t\tif ( i >= samples ) {\n\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfloat theta = dTheta * float( i );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\n\n\t\t\t\t}\n\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}(Ei),this._equirectShader=null,this._cubemapShader=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,i=100){Ii=this._renderer.getRenderTarget();const r=this._allocateTargets();return this._sceneToCubeUV(t,n,i,r),e>0&&this._blur(r,0,0,e),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(t){return this._fromTexture(t)}fromCubemap(t){return this._fromTexture(t)}compileCubemapShader(){null===this._cubemapShader&&(this._cubemapShader=Vi(),this._compileMaterial(this._cubemapShader))}compileEquirectangularShader(){null===this._equirectShader&&(this._equirectShader=ki(),this._compileMaterial(this._equirectShader))}dispose(){this._blurMaterial.dispose(),null!==this._cubemapShader&&this._cubemapShader.dispose(),null!==this._equirectShader&&this._equirectShader.dispose();for(let t=0;t<Ri.length;t++)Ri[t].dispose()}_cleanup(t){this._pingPongRenderTarget.dispose(),this._renderer.setRenderTarget(Ii),t.scissorTest=!1,Gi(t,0,0,t.width,t.height)}_fromTexture(t){Ii=this._renderer.getRenderTarget();const e=this._allocateTargets(t);return this._textureToCubeUV(t,e),this._applyPMREM(e),this._cleanup(e),e}_allocateTargets(t){const e={magFilter:p,minFilter:p,generateMipmaps:!1,type:x,format:1023,encoding:Oi(t)?t.encoding:Z,depthBuffer:!1},n=Hi(e);return n.depthBuffer=!t,this._pingPongRenderTarget=Hi(e),n}_compileMaterial(t){const e=new Vn(Ri[0],t);this._renderer.compile(e,Li)}_sceneToCubeUV(t,e,n,i){const r=new Qn(90,1,e,n),s=[1,-1,1,1,1,1],a=[1,1,1,-1,-1,-1],o=this._renderer,l=o.autoClear,c=o.outputEncoding,h=o.toneMapping;o.getClearColor(Di),o.toneMapping=0,o.outputEncoding=X,o.autoClear=!1;const u=new rn({name:"PMREM.Background",side:1,depthWrite:!1,depthTest:!1}),d=new Vn(new jn(),u);let p=!1;const m=t.background;m?m.isColor&&(u.color.copy(m),t.background=null,p=!0):(u.color.copy(Di),p=!0);for(let e=0;e<6;e++){const n=e%3;0==n?(r.up.set(0,s[e],0),r.lookAt(a[e],0,0)):1==n?(r.up.set(0,0,s[e]),r.lookAt(0,a[e],0)):(r.up.set(0,s[e],0),r.lookAt(0,0,a[e])),Gi(i,n*wi,e>2?wi:0,wi,wi),o.setRenderTarget(i),p&&o.render(d,r),o.render(t,r)}d.geometry.dispose(),d.material.dispose(),o.toneMapping=h,o.outputEncoding=c,o.autoClear=l,t.background=m}_setEncoding(t,e){t.value=Ai[e.encoding]}_textureToCubeUV(t,e){const n=this._renderer,i=t.mapping===r||t.mapping===s;i?null==this._cubemapShader&&(this._cubemapShader=Vi()):null==this._equirectShader&&(this._equirectShader=ki());const a=i?this._cubemapShader:this._equirectShader,o=new Vn(Ri[0],a),l=a.uniforms;l.envMap.value=t,i||l.texelSize.value.set(1/t.image.width,1/t.image.height),this._setEncoding(l.inputEncoding,t),this._setEncoding(l.outputEncoding,e.texture),Gi(e,0,0,3*wi,2*wi),n.setRenderTarget(e),n.render(o,Li)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let e=1;e<Ti;e++){const n=Math.sqrt(Pi[e]*Pi[e]-Pi[e-1]*Pi[e-1]),i=Bi[(e-1)%Bi.length];this._blur(t,e-1,e,n,i)}e.autoClear=n}_blur(t,e,n,i,r){const s=this._pingPongRenderTarget;this._halfBlur(t,s,e,n,i,"latitudinal",r),this._halfBlur(s,t,n,n,i,"longitudinal",r)}_halfBlur(t,e,n,i,r,s,a){const o=this._renderer,l=this._blurMaterial;"latitudinal"!==s&&"longitudinal"!==s&&console.error("blur direction must be either latitudinal or longitudinal!");const c=new Vn(Ri[i],l),h=l.uniforms,u=Ci[n]-1,d=isFinite(r)?Math.PI/(2*u):2*Math.PI/39,p=r/d,m=isFinite(r)?1+Math.floor(3*p):Ei;m>Ei&&console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${m} samples when the maximum is set to 20`);const f=[];let g=0;for(let t=0;t<Ei;++t){const e=t/p,n=Math.exp(-e*e/2);f.push(n),0==t?g+=n:t<m&&(g+=2*n)}for(let t=0;t<f.length;t++)f[t]=f[t]/g;h.envMap.value=t.texture,h.samples.value=m,h.weights.value=f,h.latitudinal.value="latitudinal"===s,a&&(h.poleAxis.value=a),h.dTheta.value=d,h.mipInt.value=8-n,this._setEncoding(h.inputEncoding,t.texture),this._setEncoding(h.outputEncoding,t.texture);const v=Ci[i];Gi(e,3*Math.max(0,wi-2*v),(0===i?0:2*wi)+2*v*(i>4?i-8+4:0),3*v,2*v),o.setRenderTarget(e),o.render(c,Li)}}function Oi(t){return void 0!==t&&t.type===x&&(t.encoding===X||t.encoding===J||t.encoding===Y)}function Ui(){const t=[],e=[],n=[];let i=8;for(let r=0;r<Ti;r++){const s=Math.pow(2,i);e.push(s);let a=1/s;r>4?a=Si[r-8+4-1]:0==r&&(a=0),n.push(a);const o=1/(s-1),l=-o/2,c=1+o/2,h=[l,l,c,l,c,c,l,l,c,c,l,c],u=6,d=6,p=3,m=2,f=1,g=new Float32Array(p*d*u),v=new Float32Array(m*d*u),y=new Float32Array(f*d*u);for(let t=0;t<u;t++){const e=t%3*2/3-1,n=t>2?0:-1,i=[e,n,0,e+2/3,n,0,e+2/3,n+1,0,e,n,0,e+2/3,n+1,0,e,n+1,0];g.set(i,p*d*t),v.set(h,m*d*t);const r=[t,t,t,t,t,t];y.set(r,f*d*t)}const x=new Tn;x.setAttribute("position",new on(g,p)),x.setAttribute("uv",new on(v,m)),x.setAttribute("faceIndex",new on(y,f)),t.push(x),i>4&&i--}return{_lodPlanes:t,_sizeLods:e,_sigmas:n}}function Hi(t){const e=new Ct(3*wi,3*wi,t);return e.texture.mapping=l,e.texture.name="PMREM.cubeUv",e.scissorTest=!0,e}function Gi(t,e,n,i,r){t.viewport.set(e,n,i,r),t.scissor.set(e,n,i,r)}function ki(){const t=new vt(1,1);return new bi({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null},texelSize:{value:t},inputEncoding:{value:Ai[3e3]},outputEncoding:{value:Ai[3e3]}},vertexShader:Wi(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform vec2 texelSize;\n\n\t\t\t${ji()}\n\n\t\t\t#include <common>\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\n\t\t\t\tvec3 outputDirection = normalize( vOutputDirection );\n\t\t\t\tvec2 uv = equirectUv( outputDirection );\n\n\t\t\t\tvec2 f = fract( uv / texelSize - 0.5 );\n\t\t\t\tuv -= f * texelSize;\n\t\t\t\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.x += texelSize.x;\n\t\t\t\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.y += texelSize.y;\n\t\t\t\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.x -= texelSize.x;\n\t\t\t\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\n\t\t\t\tvec3 tm = mix( tl, tr, f.x );\n\t\t\t\tvec3 bm = mix( bl, br, f.x );\n\t\t\t\tgl_FragColor.rgb = mix( tm, bm, f.y );\n\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}function Vi(){return new bi({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},inputEncoding:{value:Ai[3e3]},outputEncoding:{value:Ai[3e3]}},vertexShader:Wi(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform samplerCube envMap;\n\n\t\t\t${ji()}\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) ).rgb;\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}function Wi(){return"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute vec3 position;\n\t\tattribute vec2 uv;\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t"}function ji(){return"\n\n\t\tuniform int inputEncoding;\n\t\tuniform int outputEncoding;\n\n\t\t#include <encodings_pars_fragment>\n\n\t\tvec4 inputTexelToLinear( vec4 value ) {\n\n\t\t\tif ( inputEncoding == 0 ) {\n\n\t\t\t\treturn value;\n\n\t\t\t} else if ( inputEncoding == 1 ) {\n\n\t\t\t\treturn sRGBToLinear( value );\n\n\t\t\t} else if ( inputEncoding == 2 ) {\n\n\t\t\t\treturn RGBEToLinear( value );\n\n\t\t\t} else if ( inputEncoding == 3 ) {\n\n\t\t\t\treturn RGBMToLinear( value, 7.0 );\n\n\t\t\t} else if ( inputEncoding == 4 ) {\n\n\t\t\t\treturn RGBMToLinear( value, 16.0 );\n\n\t\t\t} else if ( inputEncoding == 5 ) {\n\n\t\t\t\treturn RGBDToLinear( value, 256.0 );\n\n\t\t\t} else {\n\n\t\t\t\treturn GammaToLinear( value, 2.2 );\n\n\t\t\t}\n\n\t\t}\n\n\t\tvec4 linearToOutputTexel( vec4 value ) {\n\n\t\t\tif ( outputEncoding == 0 ) {\n\n\t\t\t\treturn value;\n\n\t\t\t} else if ( outputEncoding == 1 ) {\n\n\t\t\t\treturn LinearTosRGB( value );\n\n\t\t\t} else if ( outputEncoding == 2 ) {\n\n\t\t\t\treturn LinearToRGBE( value );\n\n\t\t\t} else if ( outputEncoding == 3 ) {\n\n\t\t\t\treturn LinearToRGBM( value, 7.0 );\n\n\t\t\t} else if ( outputEncoding == 4 ) {\n\n\t\t\t\treturn LinearToRGBM( value, 16.0 );\n\n\t\t\t} else if ( outputEncoding == 5 ) {\n\n\t\t\t\treturn LinearToRGBD( value, 256.0 );\n\n\t\t\t} else {\n\n\t\t\t\treturn LinearToGamma( value, 2.2 );\n\n\t\t\t}\n\n\t\t}\n\n\t\tvec4 envMapTexelToLinear( vec4 color ) {\n\n\t\t\treturn inputTexelToLinear( color );\n\n\t\t}\n\t"}function qi(t){let e=new WeakMap,n=null;function i(t){const n=t.target;n.removeEventListener("dispose",i);const r=e.get(n);void 0!==r&&(e.delete(n),r.dispose())}return{get:function(l){if(l&&l.isTexture&&!1===l.isRenderTargetTexture){const c=l.mapping,h=c===a||c===o,u=c===r||c===s;if(h||u){if(e.has(l))return e.get(l).texture;{const r=l.image;if(h&&r&&r.height>0||u&&r&&function(t){let e=0;const n=6;for(let i=0;i<n;i++)void 0!==t[i]&&e++;return e===n}(r)){const r=t.getRenderTarget();null===n&&(n=new Fi(t));const s=h?n.fromEquirectangular(l):n.fromCubemap(l);return e.set(l,s),t.setRenderTarget(r),l.addEventListener("dispose",i),s.texture}return null}}}return l},dispose:function(){e=new WeakMap,null!==n&&(n.dispose(),n=null)}}}function Xi(t){const e={};function n(n){if(void 0!==e[n])return e[n];let i;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 e[n]=i,i}return{has:function(t){return null!==n(t)},init:function(t){t.isWebGL2?n("EXT_color_buffer_float"):(n("WEBGL_depth_texture"),n("OES_texture_float"),n("OES_texture_half_float"),n("OES_texture_half_float_linear"),n("OES_standard_derivatives"),n("OES_element_index_uint"),n("OES_vertex_array_object"),n("ANGLE_instanced_arrays")),n("OES_texture_float_linear"),n("EXT_color_buffer_half_float"),n("WEBGL_multisampled_render_to_texture")},get:function(t){const e=n(t);return null===e&&console.warn("THREE.WebGLRenderer: "+t+" extension not supported."),e}}}function Ji(t,e,n,i){const r={},s=new WeakMap;function a(t){const o=t.target;null!==o.index&&e.remove(o.index);for(const t in o.attributes)e.remove(o.attributes[t]);o.removeEventListener("dispose",a),delete r[o.id];const l=s.get(o);l&&(e.remove(l),s.delete(o)),i.releaseStatesOfGeometry(o),!0===o.isInstancedBufferGeometry&&delete o._maxInstanceCount,n.memory.geometries--}function o(t){const n=[],i=t.index,r=t.attributes.position;let a=0;if(null!==i){const t=i.array;a=i.version;for(let e=0,i=t.length;e<i;e+=3){const i=t[e+0],r=t[e+1],s=t[e+2];n.push(i,r,r,s,s,i)}}else{const t=r.array;a=r.version;for(let e=0,i=t.length/3-1;e<i;e+=3){const t=e+0,i=e+1,r=e+2;n.push(t,i,i,r,r,t)}}const o=new(xt(n)>65535?mn:dn)(n,1);o.version=a;const l=s.get(t);l&&e.remove(l),s.set(t,o)}return{get:function(t,e){return!0===r[e.id]||(e.addEventListener("dispose",a),r[e.id]=!0,n.memory.geometries++),e},update:function(t){const n=t.attributes;for(const t in n)e.update(n[t],34962);const i=t.morphAttributes;for(const t in i){const n=i[t];for(let t=0,i=n.length;t<i;t++)e.update(n[t],34962)}},getWireframeAttribute:function(t){const e=s.get(t);if(e){const n=t.index;null!==n&&e.version<n.version&&o(t)}else o(t);return s.get(t)}}}function Yi(t,e,n,i){const r=i.isWebGL2;let s,a,o;this.setMode=function(t){s=t},this.setIndex=function(t){a=t.type,o=t.bytesPerElement},this.render=function(e,i){t.drawElements(s,i,a,e*o),n.update(i,s,1)},this.renderInstances=function(i,l,c){if(0===c)return;let h,u;if(r)h=t,u="drawElementsInstanced";else if(h=e.get("ANGLE_instanced_arrays"),u="drawElementsInstancedANGLE",null===h)return void console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");h[u](s,l,a,i*o,c),n.update(l,s,c)}}function Zi(t){const 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(e.calls++,n){case 4:e.triangles+=i*(t/3);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);}}}}class Qi extends At{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=p,this.minFilter=p,this.wrapR=u,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}function Ki(t,e){return t[0]-e[0]}function $i(t,e){return Math.abs(e[1])-Math.abs(t[1])}function tr(t,e){let n=1;const i=e.isInterleavedBufferAttribute?e.data.array:e.array;i instanceof Int8Array?n=127:i instanceof Int16Array?n=32767:i instanceof Int32Array?n=2147483647:console.error("THREE.WebGLMorphtargets: Unsupported morph attribute data type: ",i),t.divideScalar(n)}function er(t,e,n){const i={},r=new Float32Array(8),s=new WeakMap,a=new Nt,o=[];for(let t=0;t<8;t++)o[t]=[t,0];return{update:function(l,c,h,u){const d=l.morphTargetInfluences;if(!0===e.isWebGL2){const i=c.morphAttributes.position.length;let r=s.get(c);if(void 0===r||r.count!==i){void 0!==r&&r.texture.dispose();const t=void 0!==c.morphAttributes.normal,n=c.morphAttributes.position,o=c.morphAttributes.normal||[],l=!0===t?2:1;let h=c.attributes.position.count*l,u=1;h>e.maxTextureSize&&(u=Math.ceil(h/e.maxTextureSize),h=e.maxTextureSize);const d=new Float32Array(h*u*4*i),p=new Qi(d,h,u,i);p.format=E,p.type=b;const m=4*l;for(let e=0;e<i;e++){const i=n[e],r=o[e],s=h*u*4*e;for(let e=0;e<i.count;e++){a.fromBufferAttribute(i,e),!0===i.normalized&&tr(a,i);const n=e*m;d[s+n+0]=a.x,d[s+n+1]=a.y,d[s+n+2]=a.z,d[s+n+3]=0,!0===t&&(a.fromBufferAttribute(r,e),!0===r.normalized&&tr(a,r),d[s+n+4]=a.x,d[s+n+5]=a.y,d[s+n+6]=a.z,d[s+n+7]=0)}}r={count:i,texture:p,size:new vt(h,u)},s.set(c,r)}let o=0;for(let t=0;t<d.length;t++)o+=d[t];const l=c.morphTargetsRelative?1:1-o;u.getUniforms().setValue(t,"morphTargetBaseInfluence",l),u.getUniforms().setValue(t,"morphTargetInfluences",d),u.getUniforms().setValue(t,"morphTargetsTexture",r.texture,n),u.getUniforms().setValue(t,"morphTargetsTextureSize",r.size)}else{const e=void 0===d?0:d.length;let n=i[c.id];if(void 0===n||n.length!==e){n=[];for(let t=0;t<e;t++)n[t]=[t,0];i[c.id]=n}for(let t=0;t<e;t++){const e=n[t];e[0]=t,e[1]=d[t]}n.sort($i);for(let t=0;t<8;t++)t<e&&n[t][1]?(o[t][0]=n[t][0],o[t][1]=n[t][1]):(o[t][0]=Number.MAX_SAFE_INTEGER,o[t][1]=0);o.sort(Ki);const s=c.morphAttributes.position,a=c.morphAttributes.normal;let l=0;for(let t=0;t<8;t++){const e=o[t],n=e[0],i=e[1];n!==Number.MAX_SAFE_INTEGER&&i?(s&&c.getAttribute("morphTarget"+t)!==s[n]&&c.setAttribute("morphTarget"+t,s[n]),a&&c.getAttribute("morphNormal"+t)!==a[n]&&c.setAttribute("morphNormal"+t,a[n]),r[t]=i,l+=i):(s&&!0===c.hasAttribute("morphTarget"+t)&&c.deleteAttribute("morphTarget"+t),a&&!0===c.hasAttribute("morphNormal"+t)&&c.deleteAttribute("morphNormal"+t),r[t]=0)}const h=c.morphTargetsRelative?1:1-l;u.getUniforms().setValue(t,"morphTargetBaseInfluence",h),u.getUniforms().setValue(t,"morphTargetInfluences",r)}}}}function nr(t,e,n,i){let r=new WeakMap;function s(t){const e=t.target;e.removeEventListener("dispose",s),n.remove(e.instanceMatrix),null!==e.instanceColor&&n.remove(e.instanceColor)}return{update:function(t){const a=i.render.frame,o=t.geometry,l=e.get(t,o);return r.get(l)!==a&&(e.update(l),r.set(l,a)),t.isInstancedMesh&&(!1===t.hasEventListener("dispose",s)&&t.addEventListener("dispose",s),n.update(t.instanceMatrix,34962),null!==t.instanceColor&&n.update(t.instanceColor,34962)),l},dispose:function(){r=new WeakMap}}}Qi.prototype.isDataTexture2DArray=!0;class ir extends At{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=p,this.minFilter=p,this.wrapR=u,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}ir.prototype.isDataTexture3D=!0;const rr=new At,sr=new Qi,ar=new ir,or=new ti,lr=[],cr=[],hr=new Float32Array(16),ur=new Float32Array(9),dr=new Float32Array(4);function pr(t,e,n){const i=t[0];if(i<=0||i>0)return t;const r=e*n;let s=lr[r];if(void 0===s&&(s=new Float32Array(r),lr[r]=s),0!==e){i.toArray(s,0);for(let i=1,r=0;i!==e;++i)r+=n,t[i].toArray(s,r)}return s}function mr(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function fr(t,e){for(let n=0,i=e.length;n<i;n++)t[n]=e[n]}function gr(t,e){let n=cr[e];void 0===n&&(n=new Int32Array(e),cr[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function vr(t,e){const n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function yr(t,e){const 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(mr(n,e))return;t.uniform2fv(this.addr,e),fr(n,e)}}function xr(t,e){const 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(mr(n,e))return;t.uniform3fv(this.addr,e),fr(n,e)}}function _r(t,e){const 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(mr(n,e))return;t.uniform4fv(this.addr,e),fr(n,e)}}function Mr(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(mr(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),fr(n,e)}else{if(mr(n,i))return;dr.set(i),t.uniformMatrix2fv(this.addr,!1,dr),fr(n,i)}}function br(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(mr(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),fr(n,e)}else{if(mr(n,i))return;ur.set(i),t.uniformMatrix3fv(this.addr,!1,ur),fr(n,i)}}function wr(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(mr(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),fr(n,e)}else{if(mr(n,i))return;hr.set(i),t.uniformMatrix4fv(this.addr,!1,hr),fr(n,i)}}function Sr(t,e){const n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function Tr(t,e){const n=this.cache;mr(n,e)||(t.uniform2iv(this.addr,e),fr(n,e))}function Er(t,e){const n=this.cache;mr(n,e)||(t.uniform3iv(this.addr,e),fr(n,e))}function Ar(t,e){const n=this.cache;mr(n,e)||(t.uniform4iv(this.addr,e),fr(n,e))}function Lr(t,e){const n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function Rr(t,e){const n=this.cache;mr(n,e)||(t.uniform2uiv(this.addr,e),fr(n,e))}function Cr(t,e){const n=this.cache;mr(n,e)||(t.uniform3uiv(this.addr,e),fr(n,e))}function Pr(t,e){const n=this.cache;mr(n,e)||(t.uniform4uiv(this.addr,e),fr(n,e))}function Dr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTexture2D(e||rr,r)}function Ir(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||ar,r)}function Nr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTextureCube(e||or,r)}function zr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2DArray(e||sr,r)}function Br(t,e){t.uniform1fv(this.addr,e)}function Fr(t,e){const n=pr(e,this.size,2);t.uniform2fv(this.addr,n)}function Or(t,e){const n=pr(e,this.size,3);t.uniform3fv(this.addr,n)}function Ur(t,e){const n=pr(e,this.size,4);t.uniform4fv(this.addr,n)}function Hr(t,e){const n=pr(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function Gr(t,e){const n=pr(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function kr(t,e){const n=pr(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function Vr(t,e){t.uniform1iv(this.addr,e)}function Wr(t,e){t.uniform2iv(this.addr,e)}function jr(t,e){t.uniform3iv(this.addr,e)}function qr(t,e){t.uniform4iv(this.addr,e)}function Xr(t,e){t.uniform1uiv(this.addr,e)}function Jr(t,e){t.uniform2uiv(this.addr,e)}function Yr(t,e){t.uniform3uiv(this.addr,e)}function Zr(t,e){t.uniform4uiv(this.addr,e)}function Qr(t,e,n){const i=e.length,r=gr(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.safeSetTexture2D(e[t]||rr,r[t])}function Kr(t,e,n){const i=e.length,r=gr(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.setTexture3D(e[t]||ar,r[t])}function $r(t,e,n){const i=e.length,r=gr(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.safeSetTextureCube(e[t]||or,r[t])}function ts(t,e,n){const i=e.length,r=gr(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.setTexture2DArray(e[t]||sr,r[t])}function es(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(t){case 5126:return vr;case 35664:return yr;case 35665:return xr;case 35666:return _r;case 35674:return Mr;case 35675:return br;case 35676:return wr;case 5124:case 35670:return Sr;case 35667:case 35671:return Tr;case 35668:case 35672:return Er;case 35669:case 35673:return Ar;case 5125:return Lr;case 36294:return Rr;case 36295:return Cr;case 36296:return Pr;case 35678:case 36198:case 36298:case 36306:case 35682:return Dr;case 35679:case 36299:case 36307:return Ir;case 35680:case 36300:case 36308:case 36293:return Nr;case 36289:case 36303:case 36311:case 36292:return zr;}}(e.type)}function ns(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(t){case 5126:return Br;case 35664:return Fr;case 35665:return Or;case 35666:return Ur;case 35674:return Hr;case 35675:return Gr;case 35676:return kr;case 5124:case 35670:return Vr;case 35667:case 35671:return Wr;case 35668:case 35672:return jr;case 35669:case 35673:return qr;case 5125:return Xr;case 36294:return Jr;case 36295:return Yr;case 36296:return Zr;case 35678:case 36198:case 36298:case 36306:case 35682:return Qr;case 35679:case 36299:case 36307:return Kr;case 35680:case 36300:case 36308:case 36293:return $r;case 36289:case 36303:case 36311:case 36292:return ts;}}(e.type)}function is(t){this.id=t,this.seq=[],this.map={}}ns.prototype.updateCache=function(t){const e=this.cache;t instanceof Float32Array&&e.length!==t.length&&(this.cache=new Float32Array(t.length)),fr(e,t)},is.prototype.setValue=function(t,e,n){const i=this.seq;for(let r=0,s=i.length;r!==s;++r){const s=i[r];s.setValue(t,e[s.id],n)}};const rs=/(\w+)(\])?(\[|\.)?/g;function ss(t,e){t.seq.push(e),t.map[e.id]=e}function as(t,e,n){const i=t.name,r=i.length;for(rs.lastIndex=0;;){const s=rs.exec(i),a=rs.lastIndex;let o=s[1];const l="]"===s[2],c=s[3];if(l&&(o|=0),void 0===c||"["===c&&a+2===r){ss(n,void 0===c?new es(o,t,e):new ns(o,t,e));break}{let t=n.map[o];void 0===t&&(t=new is(o),ss(n,t)),n=t}}}function os(t,e){this.seq=[],this.map={};const n=t.getProgramParameter(e,35718);for(let i=0;i<n;++i){const n=t.getActiveUniform(e,i);as(n,t.getUniformLocation(e,n.name),this)}}function ls(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}os.prototype.setValue=function(t,e,n,i){const r=this.map[e];void 0!==r&&r.setValue(t,n,i)},os.prototype.setOptional=function(t,e,n){const i=e[n];void 0!==i&&this.setValue(t,n,i)},os.upload=function(t,e,n,i){for(let r=0,s=e.length;r!==s;++r){const s=e[r],a=n[s.id];!1!==a.needsUpdate&&s.setValue(t,a.value,i)}},os.seqWithValue=function(t,e){const n=[];for(let i=0,r=t.length;i!==r;++i){const r=t[i];r.id in e&&n.push(r)}return n};let cs=0;function hs(t){switch(t){case X:return["Linear","( value )"];case J:return["sRGB","( value )"];case Z:return["RGBE","( value )"];case Q:return["RGBM","( value, 7.0 )"];case K:return["RGBM","( value, 16.0 )"];case $:return["RGBD","( value, 256.0 )"];case Y:return["Gamma","( value, float( GAMMA_FACTOR ) )"];default:return console.warn("THREE.WebGLProgram: Unsupported encoding:",t),["Linear","( value )"];}}function us(t,e,n){const i=t.getShaderParameter(e,35713),r=t.getShaderInfoLog(e).trim();return i&&""===r?"":n.toUpperCase()+"\n\n"+r+"\n\n"+function(t){const e=t.split("\n");for(let t=0;t<e.length;t++)e[t]=t+1+": "+e[t];return e.join("\n")}(t.getShaderSource(e))}function ds(t,e){const n=hs(e);return"vec4 "+t+"( vec4 value ) { return "+n[0]+"ToLinear"+n[1]+"; }"}function ps(t,e){const n=hs(e);return"vec4 "+t+"( vec4 value ) { return LinearTo"+n[0]+n[1]+"; }"}function ms(t,e){let n;switch(e){case 1:n="Linear";break;case 2:n="Reinhard";break;case 3:n="OptimizedCineon";break;case 4:n="ACESFilmic";break;case 5:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),n="Linear";}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}function fs(t){return""!==t}function gs(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).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function vs(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const ys=/^[ \t]*#include +<([\w\d./]+)>/gm;function xs(t){return t.replace(ys,_s)}function _s(t,e){const n=di[e];if(void 0===n)throw new Error("Can not resolve #include <"+e+">");return xs(n)}const Ms=/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,bs=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function ws(t){return t.replace(bs,Ts).replace(Ms,Ss)}function Ss(t,e,n,i){return console.warn("WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead."),Ts(t,e,n,i)}function Ts(t,e,n,i){let r="";for(let t=parseInt(e);t<parseInt(n);t++)r+=i.replace(/\[\s*i\s*\]/g,"[ "+t+" ]").replace(/UNROLLED_LOOP_INDEX/g,t);return r}function Es(t){let e="precision "+t.precision+" float;\nprecision "+t.precision+" int;";return"highp"===t.precision?e+="\n#define HIGH_PRECISION":"mediump"===t.precision?e+="\n#define MEDIUM_PRECISION":"lowp"===t.precision&&(e+="\n#define LOW_PRECISION"),e}function As(t,e,n,i){const a=t.getContext(),o=n.defines;let h=n.vertexShader,u=n.fragmentShader;const d=function(t){let e="SHADOWMAP_TYPE_BASIC";return 1===t.shadowMapType?e="SHADOWMAP_TYPE_PCF":2===t.shadowMapType?e="SHADOWMAP_TYPE_PCF_SOFT":3===t.shadowMapType&&(e="SHADOWMAP_TYPE_VSM"),e}(n),p=function(t){let e="ENVMAP_TYPE_CUBE";if(t.envMap)switch(t.envMapMode){case r:case s:e="ENVMAP_TYPE_CUBE";break;case l:case c:e="ENVMAP_TYPE_CUBE_UV";}return e}(n),m=function(t){let e="ENVMAP_MODE_REFLECTION";if(t.envMap)switch(t.envMapMode){case s:case c:e="ENVMAP_MODE_REFRACTION";}return e}(n),f=function(t){let e="ENVMAP_BLENDING_NONE";if(t.envMap)switch(t.combine){case 0:e="ENVMAP_BLENDING_MULTIPLY";break;case 1:e="ENVMAP_BLENDING_MIX";break;case 2:e="ENVMAP_BLENDING_ADD";}return e}(n),g=t.gammaFactor>0?t.gammaFactor:1,v=n.isWebGL2?"":function(t){return[t.extensionDerivatives||t.envMapCubeUV||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||"physical"===t.shaderID?"#extension GL_OES_standard_derivatives : enable":"",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(fs).join("\n")}(n),y=function(t){const e=[];for(const n in t){const i=t[n];!1!==i&&e.push("#define "+n+" "+i)}return e.join("\n")}(o),x=a.createProgram();let _,M,b=n.glslVersion?"#version "+n.glslVersion+"\n":"";n.isRawShaderMaterial?(_=[y].filter(fs).join("\n"),_.length>0&&(_+="\n"),M=[v,y].filter(fs).join("\n"),M.length>0&&(M+="\n")):(_=[Es(n),"#define SHADER_NAME "+n.shaderName,y,n.instancing?"#define USE_INSTANCING":"",n.instancingColor?"#define USE_INSTANCING_COLOR":"",n.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+g,"#define MAX_BONES "+n.maxBones,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+m:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.displacementMap&&n.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",n.specularColorMap?"#define USE_SPECULARCOLORMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.sheenColorMap?"#define USE_SHEENCOLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.flatShading?"#define FLAT_SHADED":"",n.skinning?"#define USE_SKINNING":"",n.useVertexTexture?"#define BONE_TEXTURE":"",n.morphTargets?"#define USE_MORPHTARGETS":"",n.morphNormals&&!1===n.flatShading?"#define USE_MORPHNORMALS":"",n.morphTargets&&n.isWebGL2?"#define MORPHTARGETS_TEXTURE":"",n.morphTargets&&n.isWebGL2?"#define MORPHTARGETS_COUNT "+n.morphTargetsCount:"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING","\tattribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR","\tattribute vec3 instanceColor;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )","\tattribute vec4 color;","#elif defined( USE_COLOR )","\tattribute vec3 color;","#endif","#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;","\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(fs).join("\n"),M=[v,Es(n),"#define SHADER_NAME "+n.shaderName,y,"#define GAMMA_FACTOR "+g,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+p:"",n.envMap?"#define "+m:"",n.envMap?"#define "+f:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoat?"#define USE_CLEARCOAT":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",n.specularColorMap?"#define USE_SPECULARCOLORMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.alphaTest?"#define USE_ALPHATEST":"",n.sheen?"#define USE_SHEEN":"",n.sheenColorMap?"#define USE_SHEENCOLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors||n.instancingColor?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.gradientMap?"#define USE_GRADIENTMAP":"",n.flatShading?"#define FLAT_SHADED":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"",(n.extensionShaderTextureLOD||n.envMap)&&n.rendererExtensionShaderTextureLod?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",0!==n.toneMapping?"#define TONE_MAPPING":"",0!==n.toneMapping?di.tonemapping_pars_fragment:"",0!==n.toneMapping?ms("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",n.format===T?"#define OPAQUE":"",di.encodings_pars_fragment,n.map?ds("mapTexelToLinear",n.mapEncoding):"",n.matcap?ds("matcapTexelToLinear",n.matcapEncoding):"",n.envMap?ds("envMapTexelToLinear",n.envMapEncoding):"",n.emissiveMap?ds("emissiveMapTexelToLinear",n.emissiveMapEncoding):"",n.specularColorMap?ds("specularColorMapTexelToLinear",n.specularColorMapEncoding):"",n.sheenColorMap?ds("sheenColorMapTexelToLinear",n.sheenColorMapEncoding):"",n.lightMap?ds("lightMapTexelToLinear",n.lightMapEncoding):"",ps("linearToOutputTexel",n.outputEncoding),n.depthPacking?"#define DEPTH_PACKING "+n.depthPacking:"","\n"].filter(fs).join("\n")),h=xs(h),h=gs(h,n),h=vs(h,n),u=xs(u),u=gs(u,n),u=vs(u,n),h=ws(h),u=ws(u),n.isWebGL2&&!0!==n.isRawShaderMaterial&&(b="#version 300 es\n",_=["precision mediump sampler2DArray;","#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+_,M=["#define varying in",n.glslVersion===it?"":"out highp vec4 pc_fragColor;",n.glslVersion===it?"":"#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"+M);const w=b+M+u,S=ls(a,35633,b+_+h),E=ls(a,35632,w);if(a.attachShader(x,S),a.attachShader(x,E),void 0!==n.index0AttributeName?a.bindAttribLocation(x,0,n.index0AttributeName):!0===n.morphTargets&&a.bindAttribLocation(x,0,"position"),a.linkProgram(x),t.debug.checkShaderErrors){const t=a.getProgramInfoLog(x).trim(),e=a.getShaderInfoLog(S).trim(),n=a.getShaderInfoLog(E).trim();let i=!0,r=!0;if(!1===a.getProgramParameter(x,35714)){i=!1;const e=us(a,S,"vertex"),n=us(a,E,"fragment");console.error("THREE.WebGLProgram: Shader Error "+a.getError()+" - VALIDATE_STATUS "+a.getProgramParameter(x,35715)+"\n\nProgram Info Log: "+t+"\n"+e+"\n"+n)}else""!==t?console.warn("THREE.WebGLProgram: Program Info Log:",t):""!==e&&""!==n||(r=!1);r&&(this.diagnostics={runnable:i,programLog:t,vertexShader:{log:e,prefix:_},fragmentShader:{log:n,prefix:M}})}let A,L;return a.deleteShader(S),a.deleteShader(E),this.getUniforms=function(){return void 0===A&&(A=new os(a,x)),A},this.getAttributes=function(){return void 0===L&&(L=function(t,e){const n={},i=t.getProgramParameter(e,35721);for(let r=0;r<i;r++){const i=t.getActiveAttrib(e,r),s=i.name;let a=1;35674===i.type&&(a=2),35675===i.type&&(a=3),35676===i.type&&(a=4),n[s]={type:i.type,location:t.getAttribLocation(e,s),locationSize:a}}return n}(a,x)),L},this.destroy=function(){i.releaseStatesOfProgram(this),a.deleteProgram(x),this.program=void 0},this.name=n.shaderName,this.id=cs++,this.cacheKey=e,this.usedTimes=1,this.program=x,this.vertexShader=S,this.fragmentShader=E,this}function Ls(t,e,n,i,r,s,a){const o=[],h=r.isWebGL2,u=r.logarithmicDepthBuffer,d=r.floatVertexTextures,p=r.maxVertexUniforms,m=r.vertexTextures;let f=r.precision;const g={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"},v=["precision","isWebGL2","supportsVertexTextures","outputEncoding","instancing","instancingColor","map","mapEncoding","matcap","matcapEncoding","envMap","envMapMode","envMapEncoding","envMapCubeUV","lightMap","lightMapEncoding","aoMap","emissiveMap","emissiveMapEncoding","bumpMap","normalMap","objectSpaceNormalMap","tangentSpaceNormalMap","clearcoat","clearcoatMap","clearcoatRoughnessMap","clearcoatNormalMap","displacementMap","specularMap",,"roughnessMap","metalnessMap","gradientMap","alphaMap","alphaTest","combine","vertexColors","vertexAlphas","vertexTangents","vertexUvs","uvsVertexOnly","fog","useFog","fogExp2","flatShading","sizeAttenuation","logarithmicDepthBuffer","skinning","maxBones","useVertexTexture","morphTargets","morphNormals","morphTargetsCount","premultipliedAlpha","numDirLights","numPointLights","numSpotLights","numHemiLights","numRectAreaLights","numDirLightShadows","numPointLightShadows","numSpotLightShadows","shadowMapEnabled","shadowMapType","toneMapping","physicallyCorrectLights","doubleSided","flipSided","numClippingPlanes","numClipIntersection","depthPacking","dithering","format","specularIntensityMap","specularColorMap","specularColorMapEncoding","transmission","transmissionMap","thicknessMap","sheen","sheenColorMap","sheenColorMapEncoding","sheenRoughnessMap"];function y(t){let e;return t&&t.isTexture?e=t.encoding:t&&t.isWebGLRenderTarget?(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),e=t.texture.encoding):e=X,e}return{getParameters:function(s,o,v,x,_){const M=x.fog,b=s.isMeshStandardMaterial?x.environment:null,w=(s.isMeshStandardMaterial?n:e).get(s.envMap||b),S=g[s.type],T=_.isSkinnedMesh?function(t){const e=t.skeleton.bones;if(d)return 1024;{const t=p,n=Math.floor((t-20)/4),i=Math.min(n,e.length);return i<e.length?(console.warn("THREE.WebGLRenderer: Skeleton has "+e.length+" bones. This GPU supports "+i+"."),0):i}}(_):0;let E,A;if(null!==s.precision&&(f=r.getMaxPrecision(s.precision),f!==s.precision&&console.warn("THREE.WebGLProgram.getParameters:",s.precision,"not supported, using",f,"instead.")),S){const t=mi[S];E=t.vertexShader,A=t.fragmentShader}else E=s.vertexShader,A=s.fragmentShader;const L=t.getRenderTarget(),R=s.alphaTest>0,C=s.clearcoat>0;return{isWebGL2:h,shaderID:S,shaderName:s.type,vertexShader:E,fragmentShader:A,defines:s.defines,isRawShaderMaterial:!0===s.isRawShaderMaterial,glslVersion:s.glslVersion,precision:f,instancing:!0===_.isInstancedMesh,instancingColor:!0===_.isInstancedMesh&&null!==_.instanceColor,supportsVertexTextures:m,outputEncoding:null!==L?y(L.texture):t.outputEncoding,map:!!s.map,mapEncoding:y(s.map),matcap:!!s.matcap,matcapEncoding:y(s.matcap),envMap:!!w,envMapMode:w&&w.mapping,envMapEncoding:y(w),envMapCubeUV:!!w&&(w.mapping===l||w.mapping===c),lightMap:!!s.lightMap,lightMapEncoding:y(s.lightMap),aoMap:!!s.aoMap,emissiveMap:!!s.emissiveMap,emissiveMapEncoding:y(s.emissiveMap),bumpMap:!!s.bumpMap,normalMap:!!s.normalMap,objectSpaceNormalMap:1===s.normalMapType,tangentSpaceNormalMap:0===s.normalMapType,clearcoat:C,clearcoatMap:C&&!!s.clearcoatMap,clearcoatRoughnessMap:C&&!!s.clearcoatRoughnessMap,clearcoatNormalMap:C&&!!s.clearcoatNormalMap,displacementMap:!!s.displacementMap,roughnessMap:!!s.roughnessMap,metalnessMap:!!s.metalnessMap,specularMap:!!s.specularMap,specularIntensityMap:!!s.specularIntensityMap,specularColorMap:!!s.specularColorMap,specularColorMapEncoding:y(s.specularColorMap),alphaMap:!!s.alphaMap,alphaTest:R,gradientMap:!!s.gradientMap,sheen:s.sheen>0,sheenColorMap:!!s.sheenColorMap,sheenColorMapEncoding:y(s.sheenColorMap),sheenRoughnessMap:!!s.sheenRoughnessMap,transmission:s.transmission>0,transmissionMap:!!s.transmissionMap,thicknessMap:!!s.thicknessMap,combine:s.combine,vertexTangents:!!s.normalMap&&!!_.geometry&&!!_.geometry.attributes.tangent,vertexColors:s.vertexColors,vertexAlphas:!0===s.vertexColors&&!!_.geometry&&!!_.geometry.attributes.color&&4===_.geometry.attributes.color.itemSize,vertexUvs:!!s.map||!!s.bumpMap||!!s.normalMap||!!s.specularMap||!!s.alphaMap||!!s.emissiveMap||!!s.roughnessMap||!!s.metalnessMap||!!s.clearcoatMap||!!s.clearcoatRoughnessMap||!!s.clearcoatNormalMap||!!s.displacementMap||!!s.transmissionMap||!!s.thicknessMap||!!s.specularIntensityMap||!!s.specularColorMap||!!s.sheenColorMap||s.sheenRoughnessMap,uvsVertexOnly:!(s.map||s.bumpMap||s.normalMap||s.specularMap||s.alphaMap||s.emissiveMap||s.roughnessMap||s.metalnessMap||s.clearcoatNormalMap||s.transmission>0||s.transmissionMap||s.thicknessMap||s.specularIntensityMap||s.specularColorMap||s.sheen>0||s.sheenColorMap||s.sheenRoughnessMap||!s.displacementMap),fog:!!M,useFog:s.fog,fogExp2:M&&M.isFogExp2,flatShading:!!s.flatShading,sizeAttenuation:s.sizeAttenuation,logarithmicDepthBuffer:u,skinning:!0===_.isSkinnedMesh&&T>0,maxBones:T,useVertexTexture:d,morphTargets:!!_.geometry&&!!_.geometry.morphAttributes.position,morphNormals:!!_.geometry&&!!_.geometry.morphAttributes.normal,morphTargetsCount:_.geometry&&_.geometry.morphAttributes.position?_.geometry.morphAttributes.position.length:0,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,format:s.format,dithering:s.dithering,shadowMapEnabled:t.shadowMap.enabled&&v.length>0,shadowMapType:t.shadowMap.type,toneMapping:s.toneMapped?t.toneMapping:0,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:s.premultipliedAlpha,doubleSided:2===s.side,flipSided:1===s.side,depthPacking:void 0!==s.depthPacking&&s.depthPacking,index0AttributeName:s.index0AttributeName,extensionDerivatives:s.extensions&&s.extensions.derivatives,extensionFragDepth:s.extensions&&s.extensions.fragDepth,extensionDrawBuffers:s.extensions&&s.extensions.drawBuffers,extensionShaderTextureLOD:s.extensions&&s.extensions.shaderTextureLOD,rendererExtensionFragDepth:h||i.has("EXT_frag_depth"),rendererExtensionDrawBuffers:h||i.has("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:h||i.has("EXT_shader_texture_lod"),customProgramCacheKey:s.customProgramCacheKey()}},getProgramCacheKey:function(e){const n=[];if(e.shaderID?n.push(e.shaderID):(n.push(wt(e.fragmentShader)),n.push(wt(e.vertexShader))),void 0!==e.defines)for(const t in e.defines)n.push(t),n.push(e.defines[t]);if(!1===e.isRawShaderMaterial){for(let t=0;t<v.length;t++)n.push(e[v[t]]);n.push(t.outputEncoding),n.push(t.gammaFactor)}return n.push(e.customProgramCacheKey),n.join()},getUniforms:function(t){const e=g[t.type];let n;if(e){const t=mi[e];n=Jn.clone(t.uniforms)}else n=t.uniforms;return n},acquireProgram:function(e,n){let i;for(let t=0,e=o.length;t<e;t++){const e=o[t];if(e.cacheKey===n){i=e,++i.usedTimes;break}}return void 0===i&&(i=new As(t,n,e,s),o.push(i)),i},releaseProgram:function(t){if(0==--t.usedTimes){const e=o.indexOf(t);o[e]=o[o.length-1],o.pop(),t.destroy()}},programs:o}}function Rs(){let t=new WeakMap;return{get:function(e){let 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}}}function Cs(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder: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 Ps(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function Ds(t){const e=[];let n=0;const i=[],r=[],s=[],a={id:-1};function o(i,r,s,o,l,c){let h=e[n];const u=t.get(s);return void 0===h?(h={id:i.id,object:i,geometry:r,material:s,program:u.program||a,groupOrder:o,renderOrder:i.renderOrder,z:l,group:c},e[n]=h):(h.id=i.id,h.object=i,h.geometry=r,h.material=s,h.program=u.program||a,h.groupOrder=o,h.renderOrder=i.renderOrder,h.z=l,h.group=c),n++,h}return{opaque:i,transmissive:r,transparent:s,init:function(){n=0,i.length=0,r.length=0,s.length=0},push:function(t,e,n,a,l,c){const h=o(t,e,n,a,l,c);n.transmission>0?r.push(h):!0===n.transparent?s.push(h):i.push(h)},unshift:function(t,e,n,a,l,c){const h=o(t,e,n,a,l,c);n.transmission>0?r.unshift(h):!0===n.transparent?s.unshift(h):i.unshift(h)},finish:function(){for(let t=n,i=e.length;t<i;t++){const n=e[t];if(null===n.id)break;n.id=null,n.object=null,n.geometry=null,n.material=null,n.program=null,n.group=null}},sort:function(t,e){i.length>1&&i.sort(t||Cs),r.length>1&&r.sort(e||Ps),s.length>1&&s.sort(e||Ps)}}}function Is(t){let e=new WeakMap;return{get:function(n,i){let r;return!1===e.has(n)?(r=new Ds(t),e.set(n,[r])):i>=e.get(n).length?(r=new Ds(t),e.get(n).push(r)):r=e.get(n)[i],r},dispose:function(){e=new WeakMap}}}function Ns(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case"DirectionalLight":n={direction:new Nt,color:new nn};break;case"SpotLight":n={position:new Nt,direction:new Nt,color:new nn,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new Nt,color:new nn,distance:0,decay:0};break;case"HemisphereLight":n={direction:new Nt,skyColor:new nn,groundColor:new nn};break;case"RectAreaLight":n={color:new nn,position:new Nt,halfWidth:new Nt,halfHeight:new Nt};}return t[e.id]=n,n}}}let zs=0;function Bs(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function Fs(t,e){const n=new Ns,i=function(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case"DirectionalLight":case"SpotLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new vt};break;case"PointLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new vt,shadowCameraNear:1,shadowCameraFar:1e3};}return t[e.id]=n,n}}}(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let t=0;t<9;t++)r.probe.push(new Nt);const s=new Nt,a=new ue,o=new ue;return{setup:function(s,a){let o=0,l=0,c=0;for(let t=0;t<9;t++)r.probe[t].set(0,0,0);let h=0,u=0,d=0,p=0,m=0,f=0,g=0,v=0;s.sort(Bs);const y=!0!==a?Math.PI:1;for(let t=0,e=s.length;t<e;t++){const e=s[t],a=e.color,x=e.intensity,_=e.distance,M=e.shadow&&e.shadow.map?e.shadow.map.texture:null;if(e.isAmbientLight)o+=a.r*x*y,l+=a.g*x*y,c+=a.b*x*y;else if(e.isLightProbe)for(let t=0;t<9;t++)r.probe[t].addScaledVector(e.sh.coefficients[t],x);else if(e.isDirectionalLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*y),e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,r.directionalShadow[h]=n,r.directionalShadowMap[h]=M,r.directionalShadowMatrix[h]=e.shadow.matrix,f++}r.directional[h]=t,h++}else if(e.isSpotLight){const t=n.get(e);if(t.position.setFromMatrixPosition(e.matrixWorld),t.color.copy(a).multiplyScalar(x*y),t.distance=_,t.coneCos=Math.cos(e.angle),t.penumbraCos=Math.cos(e.angle*(1-e.penumbra)),t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,r.spotShadow[d]=n,r.spotShadowMap[d]=M,r.spotShadowMatrix[d]=e.shadow.matrix,v++}r.spot[d]=t,d++}else if(e.isRectAreaLight){const t=n.get(e);t.color.copy(a).multiplyScalar(x),t.halfWidth.set(.5*e.width,0,0),t.halfHeight.set(0,.5*e.height,0),r.rectArea[p]=t,p++}else if(e.isPointLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*y),t.distance=e.distance,t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,n.shadowCameraNear=t.camera.near,n.shadowCameraFar=t.camera.far,r.pointShadow[u]=n,r.pointShadowMap[u]=M,r.pointShadowMatrix[u]=e.shadow.matrix,g++}r.point[u]=t,u++}else if(e.isHemisphereLight){const t=n.get(e);t.skyColor.copy(e.color).multiplyScalar(x*y),t.groundColor.copy(e.groundColor).multiplyScalar(x*y),r.hemi[m]=t,m++}}p>0&&(e.isWebGL2||!0===t.has("OES_texture_float_linear")?(r.rectAreaLTC1=pi.LTC_FLOAT_1,r.rectAreaLTC2=pi.LTC_FLOAT_2):!0===t.has("OES_texture_half_float_linear")?(r.rectAreaLTC1=pi.LTC_HALF_1,r.rectAreaLTC2=pi.LTC_HALF_2):console.error("THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.")),r.ambient[0]=o,r.ambient[1]=l,r.ambient[2]=c;const x=r.hash;x.directionalLength===h&&x.pointLength===u&&x.spotLength===d&&x.rectAreaLength===p&&x.hemiLength===m&&x.numDirectionalShadows===f&&x.numPointShadows===g&&x.numSpotShadows===v||(r.directional.length=h,r.spot.length=d,r.rectArea.length=p,r.point.length=u,r.hemi.length=m,r.directionalShadow.length=f,r.directionalShadowMap.length=f,r.pointShadow.length=g,r.pointShadowMap.length=g,r.spotShadow.length=v,r.spotShadowMap.length=v,r.directionalShadowMatrix.length=f,r.pointShadowMatrix.length=g,r.spotShadowMatrix.length=v,x.directionalLength=h,x.pointLength=u,x.spotLength=d,x.rectAreaLength=p,x.hemiLength=m,x.numDirectionalShadows=f,x.numPointShadows=g,x.numSpotShadows=v,r.version=zs++)},setupView:function(t,e){let n=0,i=0,l=0,c=0,h=0;const u=e.matrixWorldInverse;for(let e=0,d=t.length;e<d;e++){const d=t[e];if(d.isDirectionalLight){const t=r.directional[n];t.direction.setFromMatrixPosition(d.matrixWorld),s.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(s),t.direction.transformDirection(u),n++}else if(d.isSpotLight){const t=r.spot[l];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),t.direction.setFromMatrixPosition(d.matrixWorld),s.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(s),t.direction.transformDirection(u),l++}else if(d.isRectAreaLight){const t=r.rectArea[c];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),o.identity(),a.copy(d.matrixWorld),a.premultiply(u),o.extractRotation(a),t.halfWidth.set(.5*d.width,0,0),t.halfHeight.set(0,.5*d.height,0),t.halfWidth.applyMatrix4(o),t.halfHeight.applyMatrix4(o),c++}else if(d.isPointLight){const t=r.point[i];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),i++}else if(d.isHemisphereLight){const t=r.hemi[h];t.direction.setFromMatrixPosition(d.matrixWorld),t.direction.transformDirection(u),t.direction.normalize(),h++}}},state:r}}function Os(t,e){const n=new Fs(t,e),i=[],r=[];return{init:function(){i.length=0,r.length=0},state:{lightsArray:i,shadowsArray:r,lights:n},setupLights:function(t){n.setup(i,t)},setupLightsView:function(t){n.setupView(i,t)},pushLight:function(t){i.push(t)},pushShadow:function(t){r.push(t)}}}function Us(t,e){let n=new WeakMap;return{get:function(i,r=0){let s;return!1===n.has(i)?(s=new Os(t,e),n.set(i,[s])):r>=n.get(i).length?(s=new Os(t,e),n.get(i).push(s)):s=n.get(i)[r],s},dispose:function(){n=new WeakMap}}}class Hs extends Ye{constructor(t){super(),this.type="MeshDepthMaterial",this.depthPacking=3200,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.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,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}}Hs.prototype.isMeshDepthMaterial=!0;class Gs extends Ye{constructor(t){super(),this.type="MeshDistanceMaterial",this.referencePosition=new Nt,this.nearDistance=1,this.farDistance=1e3,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.setValues(t)}copy(t){return super.copy(t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}Gs.prototype.isMeshDistanceMaterial=!0;function ks(t,e,n){let i=new li;const r=new vt,s=new vt,a=new Rt,o=new Hs({depthPacking:3201}),l=new Gs,c={},h=n.maxTextureSize,u={0:1,1:0,2:2},d=new Yn({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new vt},radius:{value:4}},vertexShader:"void main() {\n\tgl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include <packing>\nvoid main() {\n\tconst float samples = float( VSM_SAMPLES );\n\tfloat mean = 0.0;\n\tfloat squared_mean = 0.0;\n\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n\tfor ( float i = 0.0; i < samples; i ++ ) {\n\t\tfloat uvOffset = uvStart + i * uvStride;\n\t\t#ifdef HORIZONTAL_PASS\n\t\t\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\n\t\t\tmean += distribution.x;\n\t\t\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n\t\t#else\n\t\t\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\n\t\t\tmean += depth;\n\t\t\tsquared_mean += depth * depth;\n\t\t#endif\n\t}\n\tmean = mean / samples;\n\tsquared_mean = squared_mean / samples;\n\tfloat std_dev = sqrt( squared_mean - mean * mean );\n\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),m=d.clone();m.defines.HORIZONTAL_PASS=1;const f=new Tn;f.setAttribute("position",new on(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const v=new Vn(f,d),y=this;function x(n,i){const r=e.update(v);d.defines.VSM_SAMPLES!==n.blurSamples&&(d.defines.VSM_SAMPLES=n.blurSamples,m.defines.VSM_SAMPLES=n.blurSamples,d.needsUpdate=!0,m.needsUpdate=!0),d.uniforms.shadow_pass.value=n.map.texture,d.uniforms.resolution.value=n.mapSize,d.uniforms.radius.value=n.radius,t.setRenderTarget(n.mapPass),t.clear(),t.renderBufferDirect(i,null,r,d,v,null),m.uniforms.shadow_pass.value=n.mapPass.texture,m.uniforms.resolution.value=n.mapSize,m.uniforms.radius.value=n.radius,t.setRenderTarget(n.map),t.clear(),t.renderBufferDirect(i,null,r,m,v,null)}function _(e,n,i,r,s,a,h){let d=null;const p=!0===r.isPointLight?e.customDistanceMaterial:e.customDepthMaterial;if(d=void 0!==p?p:!0===r.isPointLight?l:o,t.localClippingEnabled&&!0===i.clipShadows&&0!==i.clippingPlanes.length||i.displacementMap&&0!==i.displacementScale||i.alphaMap&&i.alphaTest>0){const t=d.uuid,e=i.uuid;let n=c[t];void 0===n&&(n={},c[t]=n);let r=n[e];void 0===r&&(r=d.clone(),n[e]=r),d=r}return d.visible=i.visible,d.wireframe=i.wireframe,d.side=3===h?null!==i.shadowSide?i.shadowSide:i.side:null!==i.shadowSide?i.shadowSide:u[i.side],d.alphaMap=i.alphaMap,d.alphaTest=i.alphaTest,d.clipShadows=i.clipShadows,d.clippingPlanes=i.clippingPlanes,d.clipIntersection=i.clipIntersection,d.displacementMap=i.displacementMap,d.displacementScale=i.displacementScale,d.displacementBias=i.displacementBias,d.wireframeLinewidth=i.wireframeLinewidth,d.linewidth=i.linewidth,!0===r.isPointLight&&!0===d.isMeshDistanceMaterial&&(d.referencePosition.setFromMatrixPosition(r.matrixWorld),d.nearDistance=s,d.farDistance=a),d}function M(n,r,s,a,o){if(!1===n.visible)return;if(n.layers.test(r.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&3===o)&&(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(s.matrixWorldInverse,n.matrixWorld);const i=e.update(n),r=n.material;if(Array.isArray(r)){const e=i.groups;for(let l=0,c=e.length;l<c;l++){const c=e[l],h=r[c.materialIndex];if(h&&h.visible){const e=_(n,0,h,a,s.near,s.far,o);t.renderBufferDirect(s,null,i,e,n,c)}}}else if(r.visible){const e=_(n,0,r,a,s.near,s.far,o);t.renderBufferDirect(s,null,i,e,n,null)}}const l=n.children;for(let t=0,e=l.length;t<e;t++)M(l[t],r,s,a,o)}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1,this.render=function(e,n,o){if(!1===y.enabled)return;if(!1===y.autoUpdate&&!1===y.needsUpdate)return;if(0===e.length)return;const l=t.getRenderTarget(),c=t.getActiveCubeFace(),u=t.getActiveMipmapLevel(),d=t.state;d.setBlending(0),d.buffers.color.setClear(1,1,1,1),d.buffers.depth.setTest(!0),d.setScissorTest(!1);for(let l=0,c=e.length;l<c;l++){const c=e[l],u=c.shadow;if(void 0===u){console.warn("THREE.WebGLShadowMap:",c,"has no shadow.");continue}if(!1===u.autoUpdate&&!1===u.needsUpdate)continue;r.copy(u.mapSize);const m=u.getFrameExtents();if(r.multiply(m),s.copy(u.mapSize),(r.x>h||r.y>h)&&(r.x>h&&(s.x=Math.floor(h/m.x),r.x=s.x*m.x,u.mapSize.x=s.x),r.y>h&&(s.y=Math.floor(h/m.y),r.y=s.y*m.y,u.mapSize.y=s.y)),null===u.map&&!u.isPointLightShadow&&3===this.type){const t={minFilter:g,magFilter:g,format:E};u.map=new Ct(r.x,r.y,t),u.map.texture.name=c.name+".shadowMap",u.mapPass=new Ct(r.x,r.y,t),u.camera.updateProjectionMatrix()}if(null===u.map){const t={minFilter:p,magFilter:p,format:E};u.map=new Ct(r.x,r.y,t),u.map.texture.name=c.name+".shadowMap",u.camera.updateProjectionMatrix()}t.setRenderTarget(u.map),t.clear();const f=u.getViewportCount();for(let t=0;t<f;t++){const e=u.getViewport(t);a.set(s.x*e.x,s.y*e.y,s.x*e.z,s.y*e.w),d.viewport(a),u.updateMatrices(c,t),i=u.getFrustum(),M(n,o,u.camera,c,this.type)}u.isPointLightShadow||3!==this.type||x(u,o),u.needsUpdate=!1}y.needsUpdate=!1,t.setRenderTarget(l,c,u)}}function Vs(t,e,i){const r=i.isWebGL2;const s=new function(){let e=!1;const n=new Rt;let i=null;const r=new Rt(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,s,a,o){!0===o&&(e*=a,i*=a,s*=a),n.set(e,i,s,a),!1===r.equals(n)&&(t.clearColor(e,i,s,a),r.copy(n))},reset:function(){e=!1,i=null,r.set(-1,0,0,0)}}},a=new function(){let e=!1,n=null,i=null,r=null;return{setTest:function(t){t?F(2929):O(2929)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case 0:t.depthFunc(512);break;case 1:t.depthFunc(519);break;case 2:t.depthFunc(513);break;default:t.depthFunc(515);break;case 4:t.depthFunc(514);break;case 5:t.depthFunc(518);break;case 6:t.depthFunc(516);break;case 7:t.depthFunc(517);}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}}},o=new function(){let e=!1,n=null,i=null,r=null,s=null,a=null,o=null,l=null,c=null;return{setTest:function(t){e||(t?F(2960):O(2960))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,a){i===e&&r===n&&s===a||(t.stencilFunc(e,n,a),i=e,r=n,s=a)},setOp:function(e,n,i){a===e&&o===n&&l===i||(t.stencilOp(e,n,i),a=e,o=n,l=i)},setLocked:function(t){e=t},setClear:function(e){c!==e&&(t.clearStencil(e),c=e)},reset:function(){e=!1,n=null,i=null,r=null,s=null,a=null,o=null,l=null,c=null}}};let l={},c={},h=null,u=!1,d=null,p=null,m=null,f=null,g=null,v=null,y=null,x=!1,_=null,M=null,b=null,w=null,S=null;const T=t.getParameter(35661);let E=!1,A=0;const L=t.getParameter(7938);-1!==L.indexOf("WebGL")?(A=parseFloat(/^WebGL (\d)/.exec(L)[1]),E=A>=1):-1!==L.indexOf("OpenGL ES")&&(A=parseFloat(/^OpenGL ES (\d)/.exec(L)[1]),E=A>=2);let R=null,C={};const P=t.getParameter(3088),D=t.getParameter(2978),I=new Rt().fromArray(P),N=new Rt().fromArray(D);function z(e,n,i){const r=new Uint8Array(4),s=t.createTexture();t.bindTexture(e,s),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(let e=0;e<i;e++)t.texImage2D(n+e,0,6408,1,1,0,6408,5121,r);return s}const B={};function F(e){!0!==l[e]&&(t.enable(e),l[e]=!0)}function O(e){!1!==l[e]&&(t.disable(e),l[e]=!1)}B[3553]=z(3553,3553,1),B[34067]=z(34067,34069,6),s.setClear(0,0,0,1),a.setClear(1),o.setClear(0),F(2929),a.setFunc(3),k(!1),V(1),F(2884),G(0);const U={[n]:32774,101:32778,102:32779};if(r)U[103]=32775,U[104]=32776;else{const t=e.get("EXT_blend_minmax");null!==t&&(U[103]=t.MIN_EXT,U[104]=t.MAX_EXT)}const H={200:0,201:1,202:768,204:770,210:776,208:774,206:772,203:769,205:771,209:775,207:773};function G(e,i,r,s,a,o,l,c){if(0!==e){if(!1===u&&(F(3042),u=!0),5===e)a=a||i,o=o||r,l=l||s,i===p&&a===g||(t.blendEquationSeparate(U[i],U[a]),p=i,g=a),r===m&&s===f&&o===v&&l===y||(t.blendFuncSeparate(H[r],H[s],H[o],H[l]),m=r,f=s,v=o,y=l),d=e,x=null;else if(e!==d||c!==x){if(p===n&&g===n||(t.blendEquation(32774),p=n,g=n),c)switch(e){case 1:t.blendFuncSeparate(1,771,1,771);break;case 2:t.blendFunc(1,1);break;case 3:t.blendFuncSeparate(0,0,769,771);break;case 4:t.blendFuncSeparate(0,768,0,770);break;default:console.error("THREE.WebGLState: Invalid blending: ",e);}else switch(e){case 1:t.blendFuncSeparate(770,771,1,771);break;case 2:t.blendFunc(770,1);break;case 3:t.blendFunc(0,769);break;case 4:t.blendFunc(0,768);break;default:console.error("THREE.WebGLState: Invalid blending: ",e);}m=null,f=null,v=null,y=null,d=e,x=c}}else!0===u&&(O(3042),u=!1)}function k(e){_!==e&&(e?t.frontFace(2304):t.frontFace(2305),_=e)}function V(e){0!==e?(F(2884),e!==M&&(1===e?t.cullFace(1029):2===e?t.cullFace(1028):t.cullFace(1032))):O(2884),M=e}function W(e,n,i){e?(F(32823),w===n&&S===i||(t.polygonOffset(n,i),w=n,S=i)):O(32823)}function j(e){void 0===e&&(e=33984+T-1),R!==e&&(t.activeTexture(e),R=e)}return{buffers:{color:s,depth:a,stencil:o},enable:F,disable:O,bindFramebuffer:function(e,n){return c[e]!==n&&(t.bindFramebuffer(e,n),c[e]=n,r&&(36009===e&&(c[36160]=n),36160===e&&(c[36009]=n)),!0)},useProgram:function(e){return h!==e&&(t.useProgram(e),h=e,!0)},setBlending:G,setMaterial:function(t,e){2===t.side?O(2884):F(2884);let n=1===t.side;e&&(n=!n),k(n),1===t.blending&&!1===t.transparent?G(0):G(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha),a.setFunc(t.depthFunc),a.setTest(t.depthTest),a.setMask(t.depthWrite),s.setMask(t.colorWrite);const i=t.stencilWrite;o.setTest(i),i&&(o.setMask(t.stencilWriteMask),o.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),o.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),W(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits),!0===t.alphaToCoverage?F(32926):O(32926)},setFlipSided:k,setCullFace:V,setLineWidth:function(e){e!==b&&(E&&t.lineWidth(e),b=e)},setPolygonOffset:W,setScissorTest:function(t){t?F(3089):O(3089)},activeTexture:j,bindTexture:function(e,n){null===R&&j();let i=C[R];void 0===i&&(i={type:void 0,texture:void 0},C[R]=i),i.type===e&&i.texture===n||(t.bindTexture(e,n||B[e]),i.type=e,i.texture=n)},unbindTexture:function(){const e=C[R];void 0!==e&&void 0!==e.type&&(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texStorage2D:function(){try{t.texStorage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texSubImage2D:function(){try{t.texSubImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},scissor:function(e){!1===I.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),I.copy(e))},viewport:function(e){!1===N.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),N.copy(e))},reset:function(){t.disable(3042),t.disable(2884),t.disable(2929),t.disable(32823),t.disable(3089),t.disable(2960),t.disable(32926),t.blendEquation(32774),t.blendFunc(1,0),t.blendFuncSeparate(1,0,1,0),t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(513),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(519,0,4294967295),t.stencilOp(7680,7680,7680),t.clearStencil(0),t.cullFace(1029),t.frontFace(2305),t.polygonOffset(0,0),t.activeTexture(33984),t.bindFramebuffer(36160,null),!0===r&&(t.bindFramebuffer(36009,null),t.bindFramebuffer(36008,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),l={},R=null,C={},c={},h=null,u=!1,d=null,p=null,m=null,f=null,g=null,v=null,y=null,x=!1,_=null,M=null,b=null,w=null,S=null,I.set(0,0,t.canvas.width,t.canvas.height),N.set(0,0,t.canvas.width,t.canvas.height),s.reset(),a.reset(),o.reset()}}}function Ws(t,e,n,i,r,s,a){const o=r.isWebGL2,l=r.maxTextures,c=r.maxCubemapSize,x=r.maxTextureSize,R=r.maxSamples,C=e.has("WEBGL_multisampled_render_to_texture")?e.get("WEBGL_multisampled_render_to_texture"):void 0,P=new WeakMap;let D,I=!1;try{I="undefined"!=typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch(t){}function N(t,e){return I?new OffscreenCanvas(t,e):bt("canvas")}function z(t,e,n,i){let r=1;if((t.width>i||t.height>i)&&(r=i/Math.max(t.width,t.height)),r<1||!0===e){if("undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap){const i=e?ft:Math.floor,s=i(r*t.width),a=i(r*t.height);void 0===D&&(D=N(s,a));const o=n?N(s,a):D;o.width=s,o.height=a;return o.getContext("2d").drawImage(t,0,0,s,a),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+t.width+"x"+t.height+") to ("+s+"x"+a+")."),o}return"data"in t&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+t.width+"x"+t.height+")."),t}return t}function B(t){return pt(t.width)&&pt(t.height)}function F(t,e){return t.generateMipmaps&&e&&t.minFilter!==p&&t.minFilter!==g}function O(e){t.generateMipmap(e)}function U(n,i,r){if(!1===o)return i;if(null!==n){if(void 0!==t[n])return t[n];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+n+"'")}let s=i;return 6403===i&&(5126===r&&(s=33326),5131===r&&(s=33325),5121===r&&(s=33321)),6407===i&&(5126===r&&(s=34837),5131===r&&(s=34843),5121===r&&(s=32849)),6408===i&&(5126===r&&(s=34836),5131===r&&(s=34842),5121===r&&(s=32856)),33325!==s&&33326!==s&&34842!==s&&34836!==s||e.get("EXT_color_buffer_float"),s}function H(t){return t===p||t===m||t===f?9728:9729}function G(e){const n=e.target;n.removeEventListener("dispose",G),function(e){const n=i.get(e);if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture),i.remove(e)}(n),n.isVideoTexture&&P.delete(n),a.memory.textures--}function k(e){const n=e.target;n.removeEventListener("dispose",k),function(e){const n=e.texture,r=i.get(e),s=i.get(n);if(!e)return;void 0!==s.__webglTexture&&(t.deleteTexture(s.__webglTexture),a.memory.textures--);e.depthTexture&&e.depthTexture.dispose();if(e.isWebGLCubeRenderTarget)for(let e=0;e<6;e++)t.deleteFramebuffer(r.__webglFramebuffer[e]),r.__webglDepthbuffer&&t.deleteRenderbuffer(r.__webglDepthbuffer[e]);else t.deleteFramebuffer(r.__webglFramebuffer),r.__webglDepthbuffer&&t.deleteRenderbuffer(r.__webglDepthbuffer),r.__webglMultisampledFramebuffer&&t.deleteFramebuffer(r.__webglMultisampledFramebuffer),r.__webglColorRenderbuffer&&t.deleteRenderbuffer(r.__webglColorRenderbuffer),r.__webglDepthRenderbuffer&&t.deleteRenderbuffer(r.__webglDepthRenderbuffer);if(e.isWebGLMultipleRenderTargets)for(let e=0,r=n.length;e<r;e++){const r=i.get(n[e]);r.__webglTexture&&(t.deleteTexture(r.__webglTexture),a.memory.textures--),i.remove(n[e])}i.remove(n),i.remove(e)}(n)}let V=0;function W(t,e){const r=i.get(t);if(t.isVideoTexture&&function(t){const e=a.render.frame;P.get(t)!==e&&(P.set(t,e),t.update())}(t),t.version>0&&r.__version!==t.version){const n=t.image;if(void 0===n)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined");else{if(!1!==n.complete)return void Z(r,t,e);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.activeTexture(33984+e),n.bindTexture(3553,r.__webglTexture)}function j(e,r){const a=i.get(e);e.version>0&&a.__version!==e.version?function(e,i,r){if(6!==i.image.length)return;Y(e,i),n.activeTexture(33984+r),n.bindTexture(34067,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const a=i&&(i.isCompressedTexture||i.image[0].isCompressedTexture),l=i.image[0]&&i.image[0].isDataTexture,h=[];for(let t=0;t<6;t++)h[t]=a||l?l?i.image[t].image:i.image[t]:z(i.image[t],!1,!0,c);const u=B(h[0])||o,d=s.convert(i.format),p=s.convert(i.type),m=U(i.internalFormat,d,p,i.encoding);let f;if(J(34067,i,u),a)for(let t=0;t<6;t++){f=h[t].mipmaps;for(let e=0;e<f.length;e++){const r=f[e];i.format!==E&&i.format!==T?null!==d?n.compressedTexImage2D(34069+t,e,m,r.width,r.height,0,r.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):n.texImage2D(34069+t,e,m,r.width,r.height,0,d,p,r.data)}}else{f=i.mipmaps;for(let t=0;t<6;t++)if(l){n.texImage2D(34069+t,0,m,h[t].width,h[t].height,0,d,p,h[t].data);for(let e=0;e<f.length;e++){const i=f[e].image[t].image;n.texImage2D(34069+t,e+1,m,i.width,i.height,0,d,p,i.data)}}else{n.texImage2D(34069+t,0,m,d,p,h[t]);for(let e=0;e<f.length;e++){const i=f[e];n.texImage2D(34069+t,e+1,m,d,p,i.image[t])}}}F(i,u)&&O(34067);e.__version=i.version,i.onUpdate&&i.onUpdate(i)}(a,e,r):(n.activeTexture(33984+r),n.bindTexture(34067,a.__webglTexture))}const q={[h]:10497,[u]:33071,[d]:33648},X={[p]:9728,[m]:9984,[f]:9986,[g]:9729,[v]:9985,[y]:9987};function J(n,s,a){if(a?(t.texParameteri(n,10242,q[s.wrapS]),t.texParameteri(n,10243,q[s.wrapT]),32879!==n&&35866!==n||t.texParameteri(n,32882,q[s.wrapR]),t.texParameteri(n,10240,X[s.magFilter]),t.texParameteri(n,10241,X[s.minFilter])):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),32879!==n&&35866!==n||t.texParameteri(n,32882,33071),s.wrapS===u&&s.wrapT===u||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,H(s.magFilter)),t.texParameteri(n,10241,H(s.minFilter)),s.minFilter!==p&&s.minFilter!==g&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),!0===e.has("EXT_texture_filter_anisotropic")){const a=e.get("EXT_texture_filter_anisotropic");if(s.type===b&&!1===e.has("OES_texture_float_linear"))return;if(!1===o&&s.type===w&&!1===e.has("OES_texture_half_float_linear"))return;(s.anisotropy>1||i.get(s).__currentAnisotropy)&&(t.texParameterf(n,a.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(s.anisotropy,r.getMaxAnisotropy())),i.get(s).__currentAnisotropy=s.anisotropy)}}function Y(e,n){void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener("dispose",G),e.__webglTexture=t.createTexture(),a.memory.textures++)}function Z(e,i,r){let a=3553;i.isDataTexture2DArray&&(a=35866),i.isDataTexture3D&&(a=32879),Y(e,i),n.activeTexture(33984+r),n.bindTexture(a,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const l=function(t){return!o&&(t.wrapS!==u||t.wrapT!==u||t.minFilter!==p&&t.minFilter!==g)}(i)&&!1===B(i.image),c=z(i.image,l,!1,x),h=B(c)||o,d=s.convert(i.format);let m,f=s.convert(i.type),v=U(i.internalFormat,d,f,i.encoding);J(a,i,h);const y=i.mipmaps;if(i.isDepthTexture)v=6402,o?v=i.type===b?36012:i.type===M?33190:i.type===S?35056:33189:i.type===b&&console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),i.format===A&&6402===v&&i.type!==_&&i.type!==M&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),i.type=_,f=s.convert(i.type)),i.format===L&&6402===v&&(v=34041,i.type!==S&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),i.type=S,f=s.convert(i.type))),n.texImage2D(3553,0,v,c.width,c.height,0,d,f,null);else if(i.isDataTexture){if(y.length>0&&h){for(let t=0,e=y.length;t<e;t++)m=y[t],n.texImage2D(3553,t,v,m.width,m.height,0,d,f,m.data);i.generateMipmaps=!1}else n.texImage2D(3553,0,v,c.width,c.height,0,d,f,c.data);}else if(i.isCompressedTexture)for(let t=0,e=y.length;t<e;t++)m=y[t],i.format!==E&&i.format!==T?null!==d?n.compressedTexImage2D(3553,t,v,m.width,m.height,0,m.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):n.texImage2D(3553,t,v,m.width,m.height,0,d,f,m.data);else if(i.isDataTexture2DArray)n.texImage3D(35866,0,v,c.width,c.height,c.depth,0,d,f,c.data);else if(i.isDataTexture3D)n.texImage3D(32879,0,v,c.width,c.height,c.depth,0,d,f,c.data);else{const t=function(t,e,n){return!0===F(t,n)?Math.log2(Math.max(e.width,e.height))+1:t.mipmaps.length>0?t.mipmaps.length:1}(i,c,h),r=o&&!0!==i.isVideoTexture,s=void 0===e.__version;if(y.length>0&&h){r&&s&&n.texStorage2D(3553,t,v,y[0].width,y[0].height);for(let t=0,e=y.length;t<e;t++)m=y[t],r?n.texSubImage2D(3553,t,0,0,d,f,m):n.texImage2D(3553,t,v,d,f,m);i.generateMipmaps=!1}else r?(s&&n.texStorage2D(3553,t,v,c.width,c.height),n.texSubImage2D(3553,0,0,0,d,f,c)):n.texImage2D(3553,0,v,d,f,c)}F(i,h)&&O(a),e.__version=i.version,i.onUpdate&&i.onUpdate(i)}function Q(e,r,a,o,l){const c=s.convert(a.format),h=s.convert(a.type),u=U(a.internalFormat,c,h,a.encoding);i.get(r).__hasExternalTextures||(32879===l||35866===l?n.texImage3D(l,0,u,r.width,r.height,r.depth,0,c,h,null):n.texImage2D(l,0,u,r.width,r.height,0,c,h,null)),n.bindFramebuffer(36160,e),r.useRenderToTexture?C.framebufferTexture2DMultisampleEXT(36160,o,l,i.get(a).__webglTexture,0,tt(r)):t.framebufferTexture2D(36160,o,l,i.get(a).__webglTexture,0),n.bindFramebuffer(36160,null)}function K(e,n,i){if(t.bindRenderbuffer(36161,e),n.depthBuffer&&!n.stencilBuffer){let r=33189;if(i||n.useRenderToTexture){const e=n.depthTexture;e&&e.isDepthTexture&&(e.type===b?r=36012:e.type===M&&(r=33190));const i=tt(n);n.useRenderToTexture?C.renderbufferStorageMultisampleEXT(36161,i,r,n.width,n.height):t.renderbufferStorageMultisample(36161,i,r,n.width,n.height)}else t.renderbufferStorage(36161,r,n.width,n.height);t.framebufferRenderbuffer(36160,36096,36161,e)}else if(n.depthBuffer&&n.stencilBuffer){const r=tt(n);i&&n.useRenderbuffer?t.renderbufferStorageMultisample(36161,r,35056,n.width,n.height):n.useRenderToTexture?C.renderbufferStorageMultisampleEXT(36161,r,35056,n.width,n.height):t.renderbufferStorage(36161,34041,n.width,n.height),t.framebufferRenderbuffer(36160,33306,36161,e)}else{const e=!0===n.isWebGLMultipleRenderTargets?n.texture[0]:n.texture,r=s.convert(e.format),a=s.convert(e.type),o=U(e.internalFormat,r,a,e.encoding),l=tt(n);i&&n.useRenderbuffer?t.renderbufferStorageMultisample(36161,l,o,n.width,n.height):n.useRenderToTexture?C.renderbufferStorageMultisampleEXT(36161,l,o,n.width,n.height):t.renderbufferStorage(36161,o,n.width,n.height)}t.bindRenderbuffer(36161,null)}function $(e){const r=i.get(e),s=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture&&!r.__autoAllocateDepthBuffer){if(s)throw new Error("target.depthTexture not supported in Cube render targets");!function(e,r){if(r&&r.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(n.bindFramebuffer(36160,e),!r.depthTexture||!r.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");i.get(r.depthTexture).__webglTexture&&r.depthTexture.image.width===r.width&&r.depthTexture.image.height===r.height||(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),W(r.depthTexture,0);const s=i.get(r.depthTexture).__webglTexture,a=tt(r);if(r.depthTexture.format===A)r.useRenderToTexture?C.framebufferTexture2DMultisampleEXT(36160,36096,3553,s,0,a):t.framebufferTexture2D(36160,36096,3553,s,0);else{if(r.depthTexture.format!==L)throw new Error("Unknown depthTexture format");r.useRenderToTexture?C.framebufferTexture2DMultisampleEXT(36160,33306,3553,s,0,a):t.framebufferTexture2D(36160,33306,3553,s,0)}}(r.__webglFramebuffer,e)}else if(s){r.__webglDepthbuffer=[];for(let i=0;i<6;i++)n.bindFramebuffer(36160,r.__webglFramebuffer[i]),r.__webglDepthbuffer[i]=t.createRenderbuffer(),K(r.__webglDepthbuffer[i],e,!1)}else n.bindFramebuffer(36160,r.__webglFramebuffer),r.__webglDepthbuffer=t.createRenderbuffer(),K(r.__webglDepthbuffer,e,!1);n.bindFramebuffer(36160,null)}function tt(t){return o&&(t.useRenderbuffer||t.useRenderToTexture)?Math.min(R,t.samples):0}let et=!1,nt=!1;this.allocateTextureUnit=function(){const t=V;return t>=l&&console.warn("THREE.WebGLTextures: Trying to use "+t+" texture units while this GPU supports only "+l),V+=1,t},this.resetTextureUnits=function(){V=0},this.setTexture2D=W,this.setTexture2DArray=function(t,e){const r=i.get(t);t.version>0&&r.__version!==t.version?Z(r,t,e):(n.activeTexture(33984+e),n.bindTexture(35866,r.__webglTexture))},this.setTexture3D=function(t,e){const r=i.get(t);t.version>0&&r.__version!==t.version?Z(r,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,r.__webglTexture))},this.setTextureCube=j,this.rebindTextures=function(t,e,n){const r=i.get(t);void 0!==e&&Q(r.__webglFramebuffer,t,t.texture,36064,3553),void 0!==n&&$(t)},this.setupRenderTarget=function(e){const l=e.texture,c=i.get(e),h=i.get(l);e.addEventListener("dispose",k),!0!==e.isWebGLMultipleRenderTargets&&(void 0===h.__webglTexture&&(h.__webglTexture=t.createTexture()),h.__version=l.version,a.memory.textures++);const u=!0===e.isWebGLCubeRenderTarget,d=!0===e.isWebGLMultipleRenderTargets,p=l.isDataTexture3D||l.isDataTexture2DArray,m=B(e)||o;if(!o||l.format!==T||l.type!==b&&l.type!==w||(l.format=E,console.warn("THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.")),u){c.__webglFramebuffer=[];for(let e=0;e<6;e++)c.__webglFramebuffer[e]=t.createFramebuffer()}else if(c.__webglFramebuffer=t.createFramebuffer(),d){if(r.drawBuffers){const n=e.texture;for(let e=0,r=n.length;e<r;e++){const r=i.get(n[e]);void 0===r.__webglTexture&&(r.__webglTexture=t.createTexture(),a.memory.textures++)}}else console.warn("THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.");}else if(e.useRenderbuffer)if(o){c.__webglMultisampledFramebuffer=t.createFramebuffer(),c.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,c.__webglColorRenderbuffer);const i=s.convert(l.format),r=s.convert(l.type),a=U(l.internalFormat,i,r,l.encoding),o=tt(e);t.renderbufferStorageMultisample(36161,o,a,e.width,e.height),n.bindFramebuffer(36160,c.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(36160,36064,36161,c.__webglColorRenderbuffer),t.bindRenderbuffer(36161,null),e.depthBuffer&&(c.__webglDepthRenderbuffer=t.createRenderbuffer(),K(c.__webglDepthRenderbuffer,e,!0)),n.bindFramebuffer(36160,null)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.");if(u){n.bindTexture(34067,h.__webglTexture),J(34067,l,m);for(let t=0;t<6;t++)Q(c.__webglFramebuffer[t],e,l,36064,34069+t);F(l,m)&&O(34067),n.unbindTexture()}else if(d){const t=e.texture;for(let r=0,s=t.length;r<s;r++){const s=t[r],a=i.get(s);n.bindTexture(3553,a.__webglTexture),J(3553,s,m),Q(c.__webglFramebuffer,e,s,36064+r,3553),F(s,m)&&O(3553)}n.unbindTexture()}else{let t=3553;if(p)if(o){t=l.isDataTexture3D?32879:35866}else console.warn("THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.");n.bindTexture(t,h.__webglTexture),J(t,l,m),Q(c.__webglFramebuffer,e,l,36064,t),F(l,m)&&O(t),n.unbindTexture()}e.depthBuffer&&$(e)},this.updateRenderTargetMipmap=function(t){const e=B(t)||o,r=!0===t.isWebGLMultipleRenderTargets?t.texture:[t.texture];for(let s=0,a=r.length;s<a;s++){const a=r[s];if(F(a,e)){const e=t.isWebGLCubeRenderTarget?34067:3553,r=i.get(a).__webglTexture;n.bindTexture(e,r),O(e),n.unbindTexture()}}},this.updateMultisampleRenderTarget=function(e){if(e.useRenderbuffer)if(o){const r=e.width,s=e.height;let a=16384;const o=[36064],l=e.stencilBuffer?33306:36096;e.depthBuffer&&o.push(l),e.ignoreDepthForMultisampleCopy||(e.depthBuffer&&(a|=256),e.stencilBuffer&&(a|=1024));const c=i.get(e);n.bindFramebuffer(36008,c.__webglMultisampledFramebuffer),n.bindFramebuffer(36009,c.__webglFramebuffer),e.ignoreDepthForMultisampleCopy&&(t.invalidateFramebuffer(36008,[l]),t.invalidateFramebuffer(36009,[l])),t.blitFramebuffer(0,0,r,s,0,0,r,s,a,9728),t.invalidateFramebuffer(36008,o),n.bindFramebuffer(36008,null),n.bindFramebuffer(36009,c.__webglMultisampledFramebuffer)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.")},this.setupDepthRenderbuffer=$,this.setupFrameBufferTexture=Q,this.safeSetTexture2D=function(t,e){t&&t.isWebGLRenderTarget&&(!1===et&&(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),et=!0),t=t.texture),W(t,e)},this.safeSetTextureCube=function(t,e){t&&t.isWebGLCubeRenderTarget&&(!1===nt&&(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),nt=!0),t=t.texture),j(t,e)}}function js(t,e,n){const i=n.isWebGL2;return{convert:function(t){let n;if(t===x)return 5121;if(1017===t)return 32819;if(1018===t)return 32820;if(1019===t)return 33635;if(1010===t)return 5120;if(1011===t)return 5122;if(t===_)return 5123;if(1013===t)return 5124;if(t===M)return 5125;if(t===b)return 5126;if(t===w)return i?5131:(n=e.get("OES_texture_half_float"),null!==n?n.HALF_FLOAT_OES:null);if(1021===t)return 6406;if(t===T)return 6407;if(t===E)return 6408;if(1024===t)return 6409;if(1025===t)return 6410;if(t===A)return 6402;if(t===L)return 34041;if(1028===t)return 6403;if(1029===t)return 36244;if(1030===t)return 33319;if(1031===t)return 33320;if(1032===t)return 36248;if(1033===t)return 36249;if(t===R||t===C||t===P||t===D){if(n=e.get("WEBGL_compressed_texture_s3tc"),null===n)return null;if(t===R)return n.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===C)return n.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===P)return n.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===D)return n.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(t===I||t===N||t===z||t===B){if(n=e.get("WEBGL_compressed_texture_pvrtc"),null===n)return null;if(t===I)return n.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===N)return n.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===z)return n.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===B)return n.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(36196===t)return n=e.get("WEBGL_compressed_texture_etc1"),null!==n?n.COMPRESSED_RGB_ETC1_WEBGL:null;if((t===F||t===O)&&(n=e.get("WEBGL_compressed_texture_etc"),null!==n)){if(t===F)return n.COMPRESSED_RGB8_ETC2;if(t===O)return n.COMPRESSED_RGBA8_ETC2_EAC}return 37808===t||37809===t||37810===t||37811===t||37812===t||37813===t||37814===t||37815===t||37816===t||37817===t||37818===t||37819===t||37820===t||37821===t||37840===t||37841===t||37842===t||37843===t||37844===t||37845===t||37846===t||37847===t||37848===t||37849===t||37850===t||37851===t||37852===t||37853===t?(n=e.get("WEBGL_compressed_texture_astc"),null!==n?t:null):36492===t?(n=e.get("EXT_texture_compression_bptc"),null!==n?t:null):t===S?i?34042:(n=e.get("WEBGL_depth_texture"),null!==n?n.UNSIGNED_INT_24_8_WEBGL:null):void 0}}}class qs extends Qn{constructor(t=[]){super(),this.cameras=t}}qs.prototype.isArrayCamera=!0;class Xs extends Be{constructor(){super(),this.type="Group"}}Xs.prototype.isGroup=!0;const Js={type:"move"};class Ys{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return null===this._hand&&(this._hand=new Xs,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return null===this._targetRay&&(this._targetRay=new Xs,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new Nt,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new Nt),this._targetRay}getGripSpace(){return null===this._grip&&(this._grip=new Xs,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new Nt,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new Nt),this._grip}dispatchEvent(t){return null!==this._targetRay&&this._targetRay.dispatchEvent(t),null!==this._grip&&this._grip.dispatchEvent(t),null!==this._hand&&this._hand.dispatchEvent(t),this}disconnect(t){return this.dispatchEvent({type:"disconnected",data:t}),null!==this._targetRay&&(this._targetRay.visible=!1),null!==this._grip&&(this._grip.visible=!1),null!==this._hand&&(this._hand.visible=!1),this}update(t,e,n){let i=null,r=null,s=null;const a=this._targetRay,o=this._grip,l=this._hand;if(t&&"visible-blurred"!==e.session.visibilityState)if(null!==a&&(i=e.getPose(t.targetRaySpace,n),null!==i&&(a.matrix.fromArray(i.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),i.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(i.linearVelocity)):a.hasLinearVelocity=!1,i.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(i.angularVelocity)):a.hasAngularVelocity=!1,this.dispatchEvent(Js))),l&&t.hand){s=!0;for(const i of t.hand.values()){const t=e.getJointPose(i,n);if(void 0===l.joints[i.jointName]){const t=new Xs;t.matrixAutoUpdate=!1,t.visible=!1,l.joints[i.jointName]=t,l.add(t)}const r=l.joints[i.jointName];null!==t&&(r.matrix.fromArray(t.transform.matrix),r.matrix.decompose(r.position,r.rotation,r.scale),r.jointRadius=t.radius),r.visible=null!==t}const i=l.joints["index-finger-tip"],r=l.joints["thumb-tip"],a=i.position.distanceTo(r.position),o=.02,c=.005;l.inputState.pinching&&a>o+c?(l.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!l.inputState.pinching&&a<=o-c&&(l.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else null!==o&&t.gripSpace&&(r=e.getPose(t.gripSpace,n),null!==r&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1));return null!==a&&(a.visible=null!==i),null!==o&&(o.visible=null!==r),null!==l&&(l.visible=null!==s),this}}class Zs extends At{constructor(t,e,n,i,r,s,a,o,l,c){if((c=void 0!==c?c:A)!==A&&c!==L)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===n&&c===A&&(n=_),void 0===n&&c===L&&(n=S),super(null,i,r,s,a,o,c,n,l),this.image={width:t,height:e},this.magFilter=void 0!==a?a:p,this.minFilter=void 0!==o?o:p,this.flipY=!1,this.generateMipmaps=!1}}Zs.prototype.isDepthTexture=!0;class Qs extends rt{constructor(t,e){super();const n=this;let i=null,r=1,s=null,a="local-floor";const o=t.extensions.has("WEBGL_multisampled_render_to_texture");let l=null,c=null,h=null,u=null,d=!1,p=null;const m=e.getContextAttributes();let f=null,g=null;const v=[],y=new Map,M=new Qn;M.layers.enable(1),M.viewport=new Rt;const b=new Qn;b.layers.enable(2),b.viewport=new Rt;const w=[M,b],R=new qs;R.layers.enable(1),R.layers.enable(2);let C=null,P=null;function D(t){const e=y.get(t.inputSource);e&&e.dispatchEvent({type:t.type,data:t.inputSource})}function I(){y.forEach(function(t,e){t.disconnect(e)}),y.clear(),C=null,P=null,t.setRenderTarget(f),u=null,h=null,c=null,i=null,g=null,U.stop(),n.isPresenting=!1,n.dispatchEvent({type:"sessionend"})}function N(t){const e=i.inputSources;for(let t=0;t<v.length;t++)y.set(e[t],v[t]);for(let e=0;e<t.removed.length;e++){const n=t.removed[e],i=y.get(n);i&&(i.dispatchEvent({type:"disconnected",data:n}),y.delete(n))}for(let e=0;e<t.added.length;e++){const n=t.added[e],i=y.get(n);i&&i.dispatchEvent({type:"connected",data:n})}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(t){let e=v[t];return void 0===e&&(e=new Ys,v[t]=e),e.getTargetRaySpace()},this.getControllerGrip=function(t){let e=v[t];return void 0===e&&(e=new Ys,v[t]=e),e.getGripSpace()},this.getHand=function(t){let e=v[t];return void 0===e&&(e=new Ys,v[t]=e),e.getHandSpace()},this.setFramebufferScaleFactor=function(t){r=t,!0===n.isPresenting&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(t){a=t,!0===n.isPresenting&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return s},this.getBaseLayer=function(){return null!==h?h:u},this.getBinding=function(){return c},this.getFrame=function(){return p},this.getSession=function(){return i},this.setSession=async function(l){if(i=l,null!==i){if(f=t.getRenderTarget(),i.addEventListener("select",D),i.addEventListener("selectstart",D),i.addEventListener("selectend",D),i.addEventListener("squeeze",D),i.addEventListener("squeezestart",D),i.addEventListener("squeezeend",D),i.addEventListener("end",I),i.addEventListener("inputsourceschange",N),!0!==m.xrCompatible&&(await e.makeXRCompatible()),void 0===i.renderState.layers||!1===t.capabilities.isWebGL2){const t={antialias:void 0!==i.renderState.layers||m.antialias,alpha:m.alpha,depth:m.depth,stencil:m.stencil,framebufferScaleFactor:r};u=new XRWebGLLayer(i,e,t),i.updateRenderState({baseLayer:u}),g=new Ct(u.framebufferWidth,u.framebufferHeight)}else{d=m.antialias;let t=null,n=null,s=null;m.depth&&(s=m.stencil?35056:33189,t=m.stencil?L:A,n=m.stencil?S:_);const a={colorFormat:m.alpha||d?32856:32849,depthFormat:s,scaleFactor:r};c=new XRWebGLBinding(i,e),h=c.createProjectionLayer(a),i.updateRenderState({layers:[h]}),g=d?new Dt(h.textureWidth,h.textureHeight,{format:E,type:x,depthTexture:new Zs(h.textureWidth,h.textureHeight,n,void 0,void 0,void 0,void 0,void 0,void 0,t),stencilBuffer:m.stencil,ignoreDepth:h.ignoreDepthValues,useRenderToTexture:o}):new Ct(h.textureWidth,h.textureHeight,{format:m.alpha?E:T,type:x,depthTexture:new Zs(h.textureWidth,h.textureHeight,n,void 0,void 0,void 0,void 0,void 0,void 0,t),stencilBuffer:m.stencil,ignoreDepth:h.ignoreDepthValues})}this.setFoveation(0),s=await i.requestReferenceSpace(a),U.setContext(i),U.start(),n.isPresenting=!0,n.dispatchEvent({type:"sessionstart"})}};const z=new Nt,B=new Nt;function F(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.copy(t.matrixWorld).invert()}this.updateCamera=function(t){if(null===i)return;R.near=b.near=M.near=t.near,R.far=b.far=M.far=t.far,C===R.near&&P===R.far||(i.updateRenderState({depthNear:R.near,depthFar:R.far}),C=R.near,P=R.far);const e=t.parent,n=R.cameras;F(R,e);for(let t=0;t<n.length;t++)F(n[t],e);R.matrixWorld.decompose(R.position,R.quaternion,R.scale),t.position.copy(R.position),t.quaternion.copy(R.quaternion),t.scale.copy(R.scale),t.matrix.copy(R.matrix),t.matrixWorld.copy(R.matrixWorld);const r=t.children;for(let t=0,e=r.length;t<e;t++)r[t].updateMatrixWorld(!0);2===n.length?function(t,e,n){z.setFromMatrixPosition(e.matrixWorld),B.setFromMatrixPosition(n.matrixWorld);const i=z.distanceTo(B),r=e.projectionMatrix.elements,s=n.projectionMatrix.elements,a=r[14]/(r[10]-1),o=r[14]/(r[10]+1),l=(r[9]+1)/r[5],c=(r[9]-1)/r[5],h=(r[8]-1)/r[0],u=(s[8]+1)/s[0],d=a*h,p=a*u,m=i/(-h+u),f=m*-h;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(f),t.translateZ(m),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.copy(t.matrixWorld).invert();const g=a+m,v=o+m,y=d-f,x=p+(i-f),_=l*o/v*g,M=c*o/v*g;t.projectionMatrix.makePerspective(y,x,_,M,g,v)}(R,M,b):R.projectionMatrix.copy(M.projectionMatrix)},this.getCamera=function(){return R},this.getFoveation=function(){return null!==h?h.fixedFoveation:null!==u?u.fixedFoveation:void 0},this.setFoveation=function(t){null!==h&&(h.fixedFoveation=t),null!==u&&void 0!==u.fixedFoveation&&(u.fixedFoveation=t)};let O=null;const U=new ci;U.setAnimationLoop(function(e,n){if(l=n.getViewerPose(s),p=n,null!==l){const e=l.views;null!==u&&(t.setRenderTargetFramebuffer(g,u.framebuffer),t.setRenderTarget(g));let n=!1;e.length!==R.cameras.length&&(R.cameras.length=0,n=!0);for(let i=0;i<e.length;i++){const r=e[i];let s=null;if(null!==u)s=u.getViewport(r);else{const e=c.getViewSubImage(h,r);s=e.viewport,0===i&&(t.setRenderTargetTextures(g,e.colorTexture,h.ignoreDepthValues?void 0:e.depthStencilTexture),t.setRenderTarget(g))}const a=w[i];a.matrix.fromArray(r.transform.matrix),a.projectionMatrix.fromArray(r.projectionMatrix),a.viewport.set(s.x,s.y,s.width,s.height),0===i&&R.matrix.copy(a.matrix),!0===n&&R.cameras.push(a)}}const r=i.inputSources;for(let t=0;t<v.length;t++){const e=v[t],i=r[t];e.update(i,n,s)}O&&O(e,n),p=null}),this.setAnimationLoop=function(t){O=t},this.dispose=function(){}}}function Ks(t){function e(e,n){e.opacity.value=n.opacity,n.color&&e.diffuse.value.copy(n.color),n.emissive&&e.emissive.value.copy(n.emissive).multiplyScalar(n.emissiveIntensity),n.map&&(e.map.value=n.map),n.alphaMap&&(e.alphaMap.value=n.alphaMap),n.specularMap&&(e.specularMap.value=n.specularMap),n.alphaTest>0&&(e.alphaTest.value=n.alphaTest);const i=t.get(n).envMap;let r,s;i&&(e.envMap.value=i,e.flipEnvMap.value=i.isCubeTexture&&!1===i.isRenderTargetTexture?-1:1,e.reflectivity.value=n.reflectivity,e.ior.value=n.ior,e.refractionRatio.value=n.refractionRatio),n.lightMap&&(e.lightMap.value=n.lightMap,e.lightMapIntensity.value=n.lightMapIntensity),n.aoMap&&(e.aoMap.value=n.aoMap,e.aoMapIntensity.value=n.aoMapIntensity),n.map?r=n.map:n.specularMap?r=n.specularMap:n.displacementMap?r=n.displacementMap:n.normalMap?r=n.normalMap:n.bumpMap?r=n.bumpMap:n.roughnessMap?r=n.roughnessMap:n.metalnessMap?r=n.metalnessMap:n.alphaMap?r=n.alphaMap:n.emissiveMap?r=n.emissiveMap:n.clearcoatMap?r=n.clearcoatMap:n.clearcoatNormalMap?r=n.clearcoatNormalMap:n.clearcoatRoughnessMap?r=n.clearcoatRoughnessMap:n.specularIntensityMap?r=n.specularIntensityMap:n.specularColorMap?r=n.specularColorMap:n.transmissionMap?r=n.transmissionMap:n.thicknessMap?r=n.thicknessMap:n.sheenColorMap?r=n.sheenColorMap:n.sheenRoughnessMap&&(r=n.sheenRoughnessMap),void 0!==r&&(r.isWebGLRenderTarget&&(r=r.texture),!0===r.matrixAutoUpdate&&r.updateMatrix(),e.uvTransform.value.copy(r.matrix)),n.aoMap?s=n.aoMap:n.lightMap&&(s=n.lightMap),void 0!==s&&(s.isWebGLRenderTarget&&(s=s.texture),!0===s.matrixAutoUpdate&&s.updateMatrix(),e.uv2Transform.value.copy(s.matrix))}function n(e,n){e.roughness.value=n.roughness,e.metalness.value=n.metalness,n.roughnessMap&&(e.roughnessMap.value=n.roughnessMap),n.metalnessMap&&(e.metalnessMap.value=n.metalnessMap),n.emissiveMap&&(e.emissiveMap.value=n.emissiveMap),n.bumpMap&&(e.bumpMap.value=n.bumpMap,e.bumpScale.value=n.bumpScale,1===n.side&&(e.bumpScale.value*=-1)),n.normalMap&&(e.normalMap.value=n.normalMap,e.normalScale.value.copy(n.normalScale),1===n.side&&e.normalScale.value.negate()),n.displacementMap&&(e.displacementMap.value=n.displacementMap,e.displacementScale.value=n.displacementScale,e.displacementBias.value=n.displacementBias);t.get(n).envMap&&(e.envMapIntensity.value=n.envMapIntensity)}return{refreshFogUniforms:function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)},refreshMaterialUniforms:function(t,i,r,s,a){i.isMeshBasicMaterial?e(t,i):i.isMeshLambertMaterial?(e(t,i),function(t,e){e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}(t,i)):i.isMeshToonMaterial?(e(t,i),function(t,e){e.gradientMap&&(t.gradientMap.value=e.gradientMap);e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshPhongMaterial?(e(t,i),function(t,e){t.specular.value.copy(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,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshStandardMaterial?(e(t,i),i.isMeshPhysicalMaterial?function(t,e,i){n(t,e),t.ior.value=e.ior,e.sheen>0&&(t.sheenColor.value.copy(e.sheenColor).multiplyScalar(e.sheen),t.sheenRoughness.value=e.sheenRoughness,e.sheenColorMap&&(t.sheenColorMap.value=e.sheenColorMap),e.sheenRoughnessMap&&(t.sheenRoughnessMap.value=e.sheenRoughnessMap));e.clearcoat>0&&(t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.clearcoatMap&&(t.clearcoatMap.value=e.clearcoatMap),e.clearcoatRoughnessMap&&(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap),e.clearcoatNormalMap&&(t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),t.clearcoatNormalMap.value=e.clearcoatNormalMap,1===e.side&&t.clearcoatNormalScale.value.negate()));e.transmission>0&&(t.transmission.value=e.transmission,t.transmissionSamplerMap.value=i.texture,t.transmissionSamplerSize.value.set(i.width,i.height),e.transmissionMap&&(t.transmissionMap.value=e.transmissionMap),t.thickness.value=e.thickness,e.thicknessMap&&(t.thicknessMap.value=e.thicknessMap),t.attenuationDistance.value=e.attenuationDistance,t.attenuationColor.value.copy(e.attenuationColor));t.specularIntensity.value=e.specularIntensity,t.specularColor.value.copy(e.specularColor),e.specularIntensityMap&&(t.specularIntensityMap.value=e.specularIntensityMap);e.specularColorMap&&(t.specularColorMap.value=e.specularColorMap)}(t,i,a):n(t,i)):i.isMeshMatcapMaterial?(e(t,i),function(t,e){e.matcap&&(t.matcap.value=e.matcap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDepthMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDistanceMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias);t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(t,i)):i.isMeshNormalMaterial?(e(t,i),function(t,e){e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(t,i),i.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(t,i)):i.isPointsMaterial?function(t,e,n,i){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*n,t.scale.value=.5*i,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let r;e.map?r=e.map:e.alphaMap&&(r=e.alphaMap);void 0!==r&&(!0===r.matrixAutoUpdate&&r.updateMatrix(),t.uvTransform.value.copy(r.matrix))}(t,i,r,s):i.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let n;e.map?n=e.map:e.alphaMap&&(n=e.alphaMap);void 0!==n&&(!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(t,i):i.isShadowMaterial?(t.color.value.copy(i.color),t.opacity.value=i.opacity):i.isShaderMaterial&&(i.uniformsNeedUpdate=!1)}}}function $s(t={}){const e=void 0!==t.canvas?t.canvas:function(){const t=bt("canvas");return t.style.display="block",t}(),n=void 0!==t.context?t.context:null,i=void 0!==t.alpha&&t.alpha,r=void 0===t.depth||t.depth,s=void 0===t.stencil||t.stencil,a=void 0!==t.antialias&&t.antialias,o=void 0===t.premultipliedAlpha||t.premultipliedAlpha,l=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,c=void 0!==t.powerPreference?t.powerPreference:"default",h=void 0!==t.failIfMajorPerformanceCaveat&&t.failIfMajorPerformanceCaveat;let d=null,m=null;const f=[],g=[];this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.outputEncoding=X,this.physicallyCorrectLights=!1,this.toneMapping=0,this.toneMappingExposure=1;const v=this;let _=!1,M=0,S=0,T=null,A=-1,L=null;const R=new Rt,C=new Rt;let P=null,D=e.width,I=e.height,N=1,z=null,B=null;const F=new Rt(0,0,D,I),O=new Rt(0,0,D,I);let U=!1;const H=[],G=new li;let k=!1,V=!1,W=null;const j=new ue,q=new Nt,J={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function Y(){return null===T?N:1}let Z,Q,K,$,tt,et,nt,it,rt,st,at,ot,lt,ct,ht,ut,dt,pt,mt,ft,gt,vt,yt,xt=n;function _t(t,n){for(let i=0;i<t.length;i++){const r=t[i],s=e.getContext(r,n);if(null!==s)return s}return null}try{const t={alpha:i,depth:r,stencil:s,antialias:a,premultipliedAlpha:o,preserveDrawingBuffer:l,powerPreference:c,failIfMajorPerformanceCaveat:h};if("setAttribute"in e&&e.setAttribute("data-engine","three.js r135"),e.addEventListener("webglcontextlost",St,!1),e.addEventListener("webglcontextrestored",Tt,!1),null===xt){const e=["webgl2","webgl","experimental-webgl"];if(!0===v.isWebGL1Renderer&&e.shift(),xt=_t(e,t),null===xt)throw _t(e)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}void 0===xt.getShaderPrecisionFormat&&(xt.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw console.error("THREE.WebGLRenderer: "+t.message),t}function Mt(){Z=new Xi(xt),Q=new yi(xt,Z,t),Z.init(Q),vt=new js(xt,Z,Q),K=new Vs(xt,Z,Q),H[0]=1029,$=new Zi(xt),tt=new Rs,et=new Ws(xt,Z,K,tt,Q,vt,$),nt=new _i(v),it=new qi(v),rt=new hi(xt,Q),yt=new gi(xt,Z,rt,Q),st=new Ji(xt,rt,$,yt),at=new nr(xt,st,rt,$),mt=new er(xt,Q,et),ut=new xi(tt),ot=new Ls(v,nt,it,Z,Q,yt,ut),lt=new Ks(tt),ct=new Is(tt),ht=new Us(Z,Q),pt=new fi(v,nt,K,at,o),dt=new ks(v,at,Q),ft=new vi(xt,Z,$,Q),gt=new Yi(xt,Z,$,Q),$.programs=ot.programs,v.capabilities=Q,v.extensions=Z,v.properties=tt,v.renderLists=ct,v.shadowMap=dt,v.state=K,v.info=$}Mt();const wt=new Qs(v,xt);function St(t){t.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),_=!0}function Tt(){console.log("THREE.WebGLRenderer: Context Restored."),_=!1;const t=$.autoReset,e=dt.enabled,n=dt.autoUpdate,i=dt.needsUpdate,r=dt.type;Mt(),$.autoReset=t,dt.enabled=e,dt.autoUpdate=n,dt.needsUpdate=i,dt.type=r}function Et(t){const e=t.target;e.removeEventListener("dispose",Et),function(t){(function(t){const e=tt.get(t).programs;void 0!==e&&e.forEach(function(t){ot.releaseProgram(t)})})(t),tt.remove(t)}(e)}this.xr=wt,this.getContext=function(){return xt},this.getContextAttributes=function(){return xt.getContextAttributes()},this.forceContextLoss=function(){const t=Z.get("WEBGL_lose_context");t&&t.loseContext()},this.forceContextRestore=function(){const t=Z.get("WEBGL_lose_context");t&&t.restoreContext()},this.getPixelRatio=function(){return N},this.setPixelRatio=function(t){void 0!==t&&(N=t,this.setSize(D,I,!1))},this.getSize=function(t){return t.set(D,I)},this.setSize=function(t,n,i){wt.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(D=t,I=n,e.width=Math.floor(t*N),e.height=Math.floor(n*N),!1!==i&&(e.style.width=t+"px",e.style.height=n+"px"),this.setViewport(0,0,t,n))},this.getDrawingBufferSize=function(t){return t.set(D*N,I*N).floor()},this.setDrawingBufferSize=function(t,n,i){D=t,I=n,N=i,e.width=Math.floor(t*i),e.height=Math.floor(n*i),this.setViewport(0,0,t,n)},this.getCurrentViewport=function(t){return t.copy(R)},this.getViewport=function(t){return t.copy(F)},this.setViewport=function(t,e,n,i){t.isVector4?F.set(t.x,t.y,t.z,t.w):F.set(t,e,n,i),K.viewport(R.copy(F).multiplyScalar(N).floor())},this.getScissor=function(t){return t.copy(O)},this.setScissor=function(t,e,n,i){t.isVector4?O.set(t.x,t.y,t.z,t.w):O.set(t,e,n,i),K.scissor(C.copy(O).multiplyScalar(N).floor())},this.getScissorTest=function(){return U},this.setScissorTest=function(t){K.setScissorTest(U=t)},this.setOpaqueSort=function(t){z=t},this.setTransparentSort=function(t){B=t},this.getClearColor=function(t){return t.copy(pt.getClearColor())},this.setClearColor=function(){pt.setClearColor.apply(pt,arguments)},this.getClearAlpha=function(){return pt.getClearAlpha()},this.setClearAlpha=function(){pt.setClearAlpha.apply(pt,arguments)},this.clear=function(t,e,n){let i=0;(void 0===t||t)&&(i|=16384),(void 0===e||e)&&(i|=256),(void 0===n||n)&&(i|=1024),xt.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(){e.removeEventListener("webglcontextlost",St,!1),e.removeEventListener("webglcontextrestored",Tt,!1),ct.dispose(),ht.dispose(),tt.dispose(),nt.dispose(),it.dispose(),at.dispose(),yt.dispose(),wt.dispose(),wt.removeEventListener("sessionstart",Lt),wt.removeEventListener("sessionend",Pt),W&&(W.dispose(),W=null),It.stop()},this.renderBufferDirect=function(t,e,n,i,r,s){null===e&&(e=J);const a=r.isMesh&&r.matrixWorld.determinant()<0,o=function(t,e,n,i,r){!0!==e.isScene&&(e=J);et.resetTextureUnits();const s=e.fog,a=i.isMeshStandardMaterial?e.environment:null,o=null===T?v.outputEncoding:T.texture.encoding,l=(i.isMeshStandardMaterial?it:nt).get(i.envMap||a),c=!0===i.vertexColors&&!!n.attributes.color&&4===n.attributes.color.itemSize,h=!!i.normalMap&&!!n.attributes.tangent,u=!!n.morphAttributes.position,d=!!n.morphAttributes.normal,p=n.morphAttributes.position?n.morphAttributes.position.length:0,f=tt.get(i),g=m.state.lights;if(!0===k&&(!0===V||t!==L)){const e=t===L&&i.id===A;ut.setState(i,t,e)}let y=!1;i.version===f.__version?f.needsLights&&f.lightsStateVersion!==g.state.version||f.outputEncoding!==o||r.isInstancedMesh&&!1===f.instancing?y=!0:r.isInstancedMesh||!0!==f.instancing?r.isSkinnedMesh&&!1===f.skinning?y=!0:r.isSkinnedMesh||!0!==f.skinning?f.envMap!==l||i.fog&&f.fog!==s?y=!0:void 0===f.numClippingPlanes||f.numClippingPlanes===ut.numPlanes&&f.numIntersection===ut.numIntersection?(f.vertexAlphas!==c||f.vertexTangents!==h||f.morphTargets!==u||f.morphNormals!==d||!0===Q.isWebGL2&&f.morphTargetsCount!==p)&&(y=!0):y=!0:y=!0:y=!0:(y=!0,f.__version=i.version);let x=f.currentProgram;!0===y&&(x=Ut(i,e,r));let _=!1,M=!1,b=!1;const w=x.getUniforms(),S=f.uniforms;K.useProgram(x.program)&&(_=!0,M=!0,b=!0);i.id!==A&&(A=i.id,M=!0);if(_||L!==t){if(w.setValue(xt,"projectionMatrix",t.projectionMatrix),Q.logarithmicDepthBuffer&&w.setValue(xt,"logDepthBufFC",2/(Math.log(t.far+1)/Math.LN2)),L!==t&&(L=t,M=!0,b=!0),i.isShaderMaterial||i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshStandardMaterial||i.envMap){const e=w.map.cameraPosition;void 0!==e&&e.setValue(xt,q.setFromMatrixPosition(t.matrixWorld))}(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial)&&w.setValue(xt,"isOrthographic",!0===t.isOrthographicCamera),(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial||i.isShadowMaterial||r.isSkinnedMesh)&&w.setValue(xt,"viewMatrix",t.matrixWorldInverse)}if(r.isSkinnedMesh){w.setOptional(xt,r,"bindMatrix"),w.setOptional(xt,r,"bindMatrixInverse");const t=r.skeleton;t&&(Q.floatVertexTextures?(null===t.boneTexture&&t.computeBoneTexture(),w.setValue(xt,"boneTexture",t.boneTexture,et),w.setValue(xt,"boneTextureSize",t.boneTextureSize)):w.setOptional(xt,t,"boneMatrices"))}!n||void 0===n.morphAttributes.position&&void 0===n.morphAttributes.normal||mt.update(r,n,i,x);(M||f.receiveShadow!==r.receiveShadow)&&(f.receiveShadow=r.receiveShadow,w.setValue(xt,"receiveShadow",r.receiveShadow));M&&(w.setValue(xt,"toneMappingExposure",v.toneMappingExposure),f.needsLights&&(R=b,(E=S).ambientLightColor.needsUpdate=R,E.lightProbe.needsUpdate=R,E.directionalLights.needsUpdate=R,E.directionalLightShadows.needsUpdate=R,E.pointLights.needsUpdate=R,E.pointLightShadows.needsUpdate=R,E.spotLights.needsUpdate=R,E.spotLightShadows.needsUpdate=R,E.rectAreaLights.needsUpdate=R,E.hemisphereLights.needsUpdate=R),s&&i.fog&<.refreshFogUniforms(S,s),lt.refreshMaterialUniforms(S,i,N,I,W),os.upload(xt,f.uniformsList,S,et));var E,R;i.isShaderMaterial&&!0===i.uniformsNeedUpdate&&(os.upload(xt,f.uniformsList,S,et),i.uniformsNeedUpdate=!1);i.isSpriteMaterial&&w.setValue(xt,"center",r.center);return w.setValue(xt,"modelViewMatrix",r.modelViewMatrix),w.setValue(xt,"normalMatrix",r.normalMatrix),w.setValue(xt,"modelMatrix",r.matrixWorld),x}(t,e,n,i,r);K.setMaterial(i,a);let l=n.index;const c=n.attributes.position;if(null===l){if(void 0===c||0===c.count)return}else if(0===l.count)return;let h,u=1;!0===i.wireframe&&(l=st.getWireframeAttribute(n),u=2),yt.setup(r,i,o,n,l);let d=ft;null!==l&&(h=rt.get(l),d=gt,d.setIndex(h));const p=null!==l?l.count:c.count,f=n.drawRange.start*u,g=n.drawRange.count*u,y=null!==s?s.start*u:0,x=null!==s?s.count*u:1/0,_=Math.max(f,y),M=Math.min(p,f+g,y+x)-1,b=Math.max(0,M-_+1);if(0!==b){if(r.isMesh)!0===i.wireframe?(K.setLineWidth(i.wireframeLinewidth*Y()),d.setMode(1)):d.setMode(4);else if(r.isLine){let t=i.linewidth;void 0===t&&(t=1),K.setLineWidth(t*Y()),r.isLineSegments?d.setMode(1):r.isLineLoop?d.setMode(2):d.setMode(3)}else r.isPoints?d.setMode(0):r.isSprite&&d.setMode(4);if(r.isInstancedMesh)d.renderInstances(_,b,r.count);else if(n.isInstancedBufferGeometry){const t=Math.min(n.instanceCount,n._maxInstanceCount);d.renderInstances(_,b,t)}else d.render(_,b)}},this.compile=function(t,e){m=ht.get(t),m.init(),g.push(m),t.traverseVisible(function(t){t.isLight&&t.layers.test(e.layers)&&(m.pushLight(t),t.castShadow&&m.pushShadow(t))}),m.setupLights(v.physicallyCorrectLights),t.traverse(function(e){const n=e.material;if(n)if(Array.isArray(n))for(let i=0;i<n.length;i++){Ut(n[i],t,e)}else Ut(n,t,e)}),g.pop(),m=null};let At=null;function Lt(){It.stop()}function Pt(){It.start()}const It=new ci;function zt(t,e,n,i){if(!1===t.visible)return;if(t.layers.test(e.layers))if(t.isGroup)n=t.renderOrder;else if(t.isLOD)!0===t.autoUpdate&&t.update(e);else if(t.isLight)m.pushLight(t),t.castShadow&&m.pushShadow(t);else if(t.isSprite){if(!t.frustumCulled||G.intersectsSprite(t)){i&&q.setFromMatrixPosition(t.matrixWorld).applyMatrix4(j);const e=at.update(t),r=t.material;r.visible&&d.push(t,e,r,n,q.z,null)}}else if((t.isMesh||t.isLine||t.isPoints)&&(t.isSkinnedMesh&&t.skeleton.frame!==$.render.frame&&(t.skeleton.update(),t.skeleton.frame=$.render.frame),!t.frustumCulled||G.intersectsObject(t))){i&&q.setFromMatrixPosition(t.matrixWorld).applyMatrix4(j);const e=at.update(t),r=t.material;if(Array.isArray(r)){const i=e.groups;for(let s=0,a=i.length;s<a;s++){const a=i[s],o=r[a.materialIndex];o&&o.visible&&d.push(t,e,o,n,q.z,a)}}else r.visible&&d.push(t,e,r,n,q.z,null)}const r=t.children;for(let t=0,s=r.length;t<s;t++)zt(r[t],e,n,i)}function Bt(t,e,n,i){const r=t.opaque,s=t.transmissive,o=t.transparent;m.setupLightsView(n),s.length>0&&function(t,e,n){if(null===W){const t=!0===a&&!0===Q.isWebGL2;W=new(t?Dt:Ct)(1024,1024,{generateMipmaps:!0,type:null!==vt.convert(w)?w:x,minFilter:y,magFilter:p,wrapS:u,wrapT:u,useRenderToTexture:Z.has("WEBGL_multisampled_render_to_texture")})}const i=v.getRenderTarget();v.setRenderTarget(W),v.clear();const r=v.toneMapping;v.toneMapping=0,Ft(t,e,n),v.toneMapping=r,et.updateMultisampleRenderTarget(W),et.updateRenderTargetMipmap(W),v.setRenderTarget(i)}(r,e,n),i&&K.viewport(R.copy(i)),r.length>0&&Ft(r,e,n),s.length>0&&Ft(s,e,n),o.length>0&&Ft(o,e,n)}function Ft(t,e,n){const i=!0===e.isScene?e.overrideMaterial:null;for(let r=0,s=t.length;r<s;r++){const s=t[r],a=s.object,o=s.geometry,l=null===i?s.material:i,c=s.group;a.layers.test(n.layers)&&Ot(a,e,n,o,l,c)}}function Ot(t,e,n,i,r,s){t.onBeforeRender(v,e,n,i,r,s),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),r.onBeforeRender(v,e,n,i,t,s),!0===r.transparent&&2===r.side?(r.side=1,r.needsUpdate=!0,v.renderBufferDirect(n,e,i,r,t,s),r.side=0,r.needsUpdate=!0,v.renderBufferDirect(n,e,i,r,t,s),r.side=2):v.renderBufferDirect(n,e,i,r,t,s),t.onAfterRender(v,e,n,i,r,s)}function Ut(t,e,n){!0!==e.isScene&&(e=J);const i=tt.get(t),r=m.state.lights,s=m.state.shadowsArray,a=r.state.version,o=ot.getParameters(t,r.state,s,e,n),l=ot.getProgramCacheKey(o);let c=i.programs;i.environment=t.isMeshStandardMaterial?e.environment:null,i.fog=e.fog,i.envMap=(t.isMeshStandardMaterial?it:nt).get(t.envMap||i.environment),void 0===c&&(t.addEventListener("dispose",Et),c=new Map,i.programs=c);let h=c.get(l);if(void 0!==h){if(i.currentProgram===h&&i.lightsStateVersion===a)return Ht(t,o),h}else o.uniforms=ot.getUniforms(t),t.onBuild(n,o,v),t.onBeforeCompile(o,v),h=ot.acquireProgram(o,l),c.set(l,h),i.uniforms=o.uniforms;const u=i.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(u.clippingPlanes=ut.uniform),Ht(t,o),i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&&!0===t.lights}(t),i.lightsStateVersion=a,i.needsLights&&(u.ambientLightColor.value=r.state.ambient,u.lightProbe.value=r.state.probe,u.directionalLights.value=r.state.directional,u.directionalLightShadows.value=r.state.directionalShadow,u.spotLights.value=r.state.spot,u.spotLightShadows.value=r.state.spotShadow,u.rectAreaLights.value=r.state.rectArea,u.ltc_1.value=r.state.rectAreaLTC1,u.ltc_2.value=r.state.rectAreaLTC2,u.pointLights.value=r.state.point,u.pointLightShadows.value=r.state.pointShadow,u.hemisphereLights.value=r.state.hemi,u.directionalShadowMap.value=r.state.directionalShadowMap,u.directionalShadowMatrix.value=r.state.directionalShadowMatrix,u.spotShadowMap.value=r.state.spotShadowMap,u.spotShadowMatrix.value=r.state.spotShadowMatrix,u.pointShadowMap.value=r.state.pointShadowMap,u.pointShadowMatrix.value=r.state.pointShadowMatrix);const d=h.getUniforms(),p=os.seqWithValue(d.seq,u);return i.currentProgram=h,i.uniformsList=p,h}function Ht(t,e){const n=tt.get(t);n.outputEncoding=e.outputEncoding,n.instancing=e.instancing,n.skinning=e.skinning,n.morphTargets=e.morphTargets,n.morphNormals=e.morphNormals,n.morphTargetsCount=e.morphTargetsCount,n.numClippingPlanes=e.numClippingPlanes,n.numIntersection=e.numClipIntersection,n.vertexAlphas=e.vertexAlphas,n.vertexTangents=e.vertexTangents}It.setAnimationLoop(function(t){At&&At(t)}),"undefined"!=typeof window&&It.setContext(window),this.setAnimationLoop=function(t){At=t,wt.setAnimationLoop(t),null===t?It.stop():It.start()},wt.addEventListener("sessionstart",Lt),wt.addEventListener("sessionend",Pt),this.render=function(t,e){if(void 0!==e&&!0!==e.isCamera)return void console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");if(!0===_)return;!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),!0===wt.enabled&&!0===wt.isPresenting&&(!0===wt.cameraAutoUpdate&&wt.updateCamera(e),e=wt.getCamera()),!0===t.isScene&&t.onBeforeRender(v,t,e,T),m=ht.get(t,g.length),m.init(),g.push(m),j.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),G.setFromProjectionMatrix(j),V=this.localClippingEnabled,k=ut.init(this.clippingPlanes,V,e),d=ct.get(t,f.length),d.init(),f.push(d),zt(t,e,0,v.sortObjects),d.finish(),!0===v.sortObjects&&d.sort(z,B),!0===k&&ut.beginShadows();const n=m.state.shadowsArray;if(dt.render(n,t,e),!0===k&&ut.endShadows(),!0===this.info.autoReset&&this.info.reset(),pt.render(d,t),m.setupLights(v.physicallyCorrectLights),e.isArrayCamera){const n=e.cameras;for(let e=0,i=n.length;e<i;e++){const i=n[e];Bt(d,t,i,i.viewport)}}else Bt(d,t,e);null!==T&&(et.updateMultisampleRenderTarget(T),et.updateRenderTargetMipmap(T)),!0===t.isScene&&t.onAfterRender(v,t,e),K.buffers.depth.setTest(!0),K.buffers.depth.setMask(!0),K.buffers.color.setMask(!0),K.setPolygonOffset(!1),yt.resetDefaultState(),A=-1,L=null,g.pop(),m=g.length>0?g[g.length-1]:null,f.pop(),d=f.length>0?f[f.length-1]:null},this.getActiveCubeFace=function(){return M},this.getActiveMipmapLevel=function(){return S},this.getRenderTarget=function(){return T},this.setRenderTargetTextures=function(t,e,n){tt.get(t.texture).__webglTexture=e,tt.get(t.depthTexture).__webglTexture=n;const i=tt.get(t);i.__hasExternalTextures=!0,i.__hasExternalTextures&&(i.__autoAllocateDepthBuffer=void 0===n,i.__autoAllocateDepthBuffer||t.useRenderToTexture&&(console.warn("render-to-texture extension was disabled because an external texture was provided"),t.useRenderToTexture=!1,t.useRenderbuffer=!0))},this.setRenderTargetFramebuffer=function(t,e){const n=tt.get(t);n.__webglFramebuffer=e,n.__useDefaultFramebuffer=void 0===e},this.setRenderTarget=function(t,e=0,n=0){T=t,M=e,S=n;let i=!0;if(t){const e=tt.get(t);void 0!==e.__useDefaultFramebuffer?(K.bindFramebuffer(36160,null),i=!1):void 0===e.__webglFramebuffer?et.setupRenderTarget(t):e.__hasExternalTextures&&et.rebindTextures(t,tt.get(t.texture).__webglTexture,tt.get(t.depthTexture).__webglTexture)}let r=null,s=!1,a=!1;if(t){const n=t.texture;(n.isDataTexture3D||n.isDataTexture2DArray)&&(a=!0);const i=tt.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(r=i[e],s=!0):r=t.useRenderbuffer?tt.get(t).__webglMultisampledFramebuffer:i,R.copy(t.viewport),C.copy(t.scissor),P=t.scissorTest}else R.copy(F).multiplyScalar(N).floor(),C.copy(O).multiplyScalar(N).floor(),P=U;if(K.bindFramebuffer(36160,r)&&Q.drawBuffers&&i){let e=!1;if(t){if(t.isWebGLMultipleRenderTargets){const n=t.texture;if(H.length!==n.length||36064!==H[0]){for(let t=0,e=n.length;t<e;t++)H[t]=36064+t;H.length=n.length,e=!0}}else 1===H.length&&36064===H[0]||(H[0]=36064,H.length=1,e=!0);}else 1===H.length&&1029===H[0]||(H[0]=1029,H.length=1,e=!0);e&&(Q.isWebGL2?xt.drawBuffers(H):Z.get("WEBGL_draw_buffers").drawBuffersWEBGL(H))}if(K.viewport(R),K.scissor(C),K.setScissorTest(P),s){const i=tt.get(t.texture);xt.framebufferTexture2D(36160,36064,34069+e,i.__webglTexture,n)}else if(a){const i=tt.get(t.texture),r=e||0;xt.framebufferTextureLayer(36160,36064,i.__webglTexture,n||0,r)}A=-1},this.readRenderTargetPixels=function(t,e,n,i,r,s,a){if(!t||!t.isWebGLRenderTarget)return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let o=tt.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&&void 0!==a&&(o=o[a]),o){K.bindFramebuffer(36160,o);try{const a=t.texture,o=a.format,l=a.type;if(o!==E&&vt.convert(o)!==xt.getParameter(35739))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");const c=l===w&&(Z.has("EXT_color_buffer_half_float")||Q.isWebGL2&&Z.has("EXT_color_buffer_float"));if(!(l===x||vt.convert(l)===xt.getParameter(35738)||l===b&&(Q.isWebGL2||Z.has("OES_texture_float")||Z.has("WEBGL_color_buffer_float"))||c))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");36053===xt.checkFramebufferStatus(36160)?e>=0&&e<=t.width-i&&n>=0&&n<=t.height-r&&xt.readPixels(e,n,i,r,vt.convert(o),vt.convert(l),s):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.")}finally{const t=null!==T?tt.get(T).__webglFramebuffer:null;K.bindFramebuffer(36160,t)}}},this.copyFramebufferToTexture=function(t,e,n=0){const i=Math.pow(2,-n),r=Math.floor(e.image.width*i),s=Math.floor(e.image.height*i);let a=vt.convert(e.format);Q.isWebGL2&&(6407===a&&(a=32849),6408===a&&(a=32856)),et.setTexture2D(e,0),xt.copyTexImage2D(3553,n,a,t.x,t.y,r,s,0),K.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i=0){const r=e.image.width,s=e.image.height,a=vt.convert(n.format),o=vt.convert(n.type);et.setTexture2D(n,0),xt.pixelStorei(37440,n.flipY),xt.pixelStorei(37441,n.premultiplyAlpha),xt.pixelStorei(3317,n.unpackAlignment),e.isDataTexture?xt.texSubImage2D(3553,i,t.x,t.y,r,s,a,o,e.image.data):e.isCompressedTexture?xt.compressedTexSubImage2D(3553,i,t.x,t.y,e.mipmaps[0].width,e.mipmaps[0].height,a,e.mipmaps[0].data):xt.texSubImage2D(3553,i,t.x,t.y,a,o,e.image),0===i&&n.generateMipmaps&&xt.generateMipmap(3553),K.unbindTexture()},this.copyTextureToTexture3D=function(t,e,n,i,r=0){if(v.isWebGL1Renderer)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");const s=t.max.x-t.min.x+1,a=t.max.y-t.min.y+1,o=t.max.z-t.min.z+1,l=vt.convert(i.format),c=vt.convert(i.type);let h;if(i.isDataTexture3D)et.setTexture3D(i,0),h=32879;else{if(!i.isDataTexture2DArray)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");et.setTexture2DArray(i,0),h=35866}xt.pixelStorei(37440,i.flipY),xt.pixelStorei(37441,i.premultiplyAlpha),xt.pixelStorei(3317,i.unpackAlignment);const u=xt.getParameter(3314),d=xt.getParameter(32878),p=xt.getParameter(3316),m=xt.getParameter(3315),f=xt.getParameter(32877),g=n.isCompressedTexture?n.mipmaps[0]:n.image;xt.pixelStorei(3314,g.width),xt.pixelStorei(32878,g.height),xt.pixelStorei(3316,t.min.x),xt.pixelStorei(3315,t.min.y),xt.pixelStorei(32877,t.min.z),n.isDataTexture||n.isDataTexture3D?xt.texSubImage3D(h,r,e.x,e.y,e.z,s,a,o,l,c,g.data):n.isCompressedTexture?(console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture."),xt.compressedTexSubImage3D(h,r,e.x,e.y,e.z,s,a,o,l,g.data)):xt.texSubImage3D(h,r,e.x,e.y,e.z,s,a,o,l,c,g),xt.pixelStorei(3314,u),xt.pixelStorei(32878,d),xt.pixelStorei(3316,p),xt.pixelStorei(3315,m),xt.pixelStorei(32877,f),0===r&&i.generateMipmaps&&xt.generateMipmap(h),K.unbindTexture()},this.initTexture=function(t){et.setTexture2D(t,0),K.unbindTexture()},this.resetState=function(){M=0,S=0,T=null,K.reset(),yt.reset()},"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}$s.prototype.isWebGLRenderer=!0;class ta extends $s{}ta.prototype.isWebGL1Renderer=!0;class ea{constructor(t,e=25e-5){this.name="",this.color=new nn(t),this.density=e}clone(){return new ea(this.color,this.density)}toJSON(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}}ea.prototype.isFogExp2=!0;class na{constructor(t,e=1,n=1e3){this.name="",this.color=new nn(t),this.near=e,this.far=n}clone(){return new na(this.color,this.near,this.far)}toJSON(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}}na.prototype.isFog=!0;class ia extends Be{constructor(){super(),this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.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(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),e}}ia.prototype.isScene=!0;class ra{constructor(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=et,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=ct()}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,n){t*=this.stride,n*=e.stride;for(let i=0,r=this.stride;i<r;i++)this.array[t+i]=e.array[n+i];return this}set(t,e=0){return this.array.set(t,e),this}clone(t){void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=ct()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const e=new this.array.constructor(t.arrayBuffers[this.array.buffer._uuid]),n=new this.constructor(e,this.stride);return n.setUsage(this.usage),n}onUpload(t){return this.onUploadCallback=t,this}toJSON(t){return void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=ct()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=Array.prototype.slice.call(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}ra.prototype.isInterleavedBuffer=!0;const sa=new Nt;class aa{constructor(t,e,n,i=!1){this.name="",this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===i}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(t){this.data.needsUpdate=t}applyMatrix4(t){for(let e=0,n=this.data.count;e<n;e++)sa.x=this.getX(e),sa.y=this.getY(e),sa.z=this.getZ(e),sa.applyMatrix4(t),this.setXYZ(e,sa.x,sa.y,sa.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)sa.x=this.getX(e),sa.y=this.getY(e),sa.z=this.getZ(e),sa.applyNormalMatrix(t),this.setXYZ(e,sa.x,sa.y,sa.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)sa.x=this.getX(e),sa.y=this.getY(e),sa.z=this.getZ(e),sa.transformDirection(t),this.setXYZ(e,sa.x,sa.y,sa.z);return this}setX(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){return this.data.array[t*this.data.stride+this.offset]}getY(t){return this.data.array[t*this.data.stride+this.offset+1]}getZ(t){return this.data.array[t*this.data.stride+this.offset+2]}getW(t){return this.data.array[t*this.data.stride+this.offset+3]}setXY(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(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(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}clone(t){if(void 0===t){console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interlaved buffer attribute will deinterleave buffer data.");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return new on(new this.array.constructor(t),this.itemSize,this.normalized)}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new aa(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(void 0===t){console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interlaved buffer attribute will deinterleave buffer data.");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}aa.prototype.isInterleavedBufferAttribute=!0;class oa extends Ye{constructor(t){super(),this.type="SpriteMaterial",this.color=new nn(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this}}let la;oa.prototype.isSpriteMaterial=!0;const ca=new Nt,ha=new Nt,ua=new Nt,da=new vt,pa=new vt,ma=new ue,fa=new Nt,ga=new Nt,va=new Nt,ya=new vt,xa=new vt,_a=new vt;class Ma extends Be{constructor(t){if(super(),this.type="Sprite",void 0===la){la=new Tn;const t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),e=new ra(t,5);la.setIndex([0,1,2,0,2,3]),la.setAttribute("position",new aa(e,3,0,!1)),la.setAttribute("uv",new aa(e,2,3,!1))}this.geometry=la,this.material=void 0!==t?t:new oa,this.center=new vt(.5,.5)}raycast(t,e){null===t.camera&&console.error("THREE.Sprite: \"Raycaster.camera\" needs to be set in order to raycast against sprites."),ha.setFromMatrixScale(this.matrixWorld),ma.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),ua.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&ha.multiplyScalar(-ua.z);const n=this.material.rotation;let i,r;0!==n&&(r=Math.cos(n),i=Math.sin(n));const s=this.center;ba(fa.set(-.5,-.5,0),ua,s,ha,i,r),ba(ga.set(.5,-.5,0),ua,s,ha,i,r),ba(va.set(.5,.5,0),ua,s,ha,i,r),ya.set(0,0),xa.set(1,0),_a.set(1,1);let a=t.ray.intersectTriangle(fa,ga,va,!1,ca);if(null===a&&(ba(ga.set(-.5,.5,0),ua,s,ha,i,r),xa.set(0,1),a=t.ray.intersectTriangle(fa,va,ga,!1,ca),null===a))return;const o=t.ray.origin.distanceTo(ca);o<t.near||o>t.far||e.push({distance:o,point:ca.clone(),uv:Xe.getUV(ca,fa,ga,va,ya,xa,_a,new vt),face:null,object:this})}copy(t){return super.copy(t),void 0!==t.center&&this.center.copy(t.center),this.material=t.material,this}}function ba(t,e,n,i,r,s){da.subVectors(t,n).addScalar(.5).multiply(i),void 0!==r?(pa.x=s*da.x-r*da.y,pa.y=r*da.x+s*da.y):pa.copy(da),t.copy(e),t.x+=pa.x,t.y+=pa.y,t.applyMatrix4(ma)}Ma.prototype.isSprite=!0;const wa=new Nt,Sa=new Nt;class Ta extends Be{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(t){super.copy(t,!1);const e=t.levels;for(let t=0,n=e.length;t<n;t++){const n=e[t];this.addLevel(n.object.clone(),n.distance)}return this.autoUpdate=t.autoUpdate,this}addLevel(t,e=0){e=Math.abs(e);const n=this.levels;let i;for(i=0;i<n.length&&!(e<n[i].distance);i++);return n.splice(i,0,{distance:e,object:t}),this.add(t),this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(t){const e=this.levels;if(e.length>0){let n,i;for(n=1,i=e.length;n<i&&!(t<e[n].distance);n++);return e[n-1].object}return null}raycast(t,e){if(this.levels.length>0){wa.setFromMatrixPosition(this.matrixWorld);const n=t.ray.origin.distanceTo(wa);this.getObjectForDistance(n).raycast(t,e)}}update(t){const e=this.levels;if(e.length>1){wa.setFromMatrixPosition(t.matrixWorld),Sa.setFromMatrixPosition(this.matrixWorld);const n=wa.distanceTo(Sa)/t.zoom;let i,r;for(e[0].object.visible=!0,i=1,r=e.length;i<r&&n>=e[i].distance;i++)e[i-1].object.visible=!1,e[i].object.visible=!0;for(this._currentLevel=i-1;i<r;i++)e[i].object.visible=!1}}toJSON(t){const e=super.toJSON(t);!1===this.autoUpdate&&(e.object.autoUpdate=!1),e.object.levels=[];const n=this.levels;for(let t=0,i=n.length;t<i;t++){const i=n[t];e.object.levels.push({object:i.object.uuid,distance:i.distance})}return e}}const Ea=new Nt,Aa=new Rt,La=new Rt,Ra=new Nt,Ca=new ue;class Pa extends Vn{constructor(t,e){super(t,e),this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new ue,this.bindMatrixInverse=new ue}copy(t){return super.copy(t),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,this}bind(t,e){this.skeleton=t,void 0===e&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const t=new Rt,e=this.geometry.attributes.skinWeight;for(let n=0,i=e.count;n<i;n++){t.x=e.getX(n),t.y=e.getY(n),t.z=e.getZ(n),t.w=e.getW(n);const i=1/t.manhattanLength();i!==1/0?t.multiplyScalar(i):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),"attached"===this.bindMode?this.bindMatrixInverse.copy(this.matrixWorld).invert():"detached"===this.bindMode?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)}boneTransform(t,e){const n=this.skeleton,i=this.geometry;Aa.fromBufferAttribute(i.attributes.skinIndex,t),La.fromBufferAttribute(i.attributes.skinWeight,t),Ea.copy(e).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let t=0;t<4;t++){const i=La.getComponent(t);if(0!==i){const r=Aa.getComponent(t);Ca.multiplyMatrices(n.bones[r].matrixWorld,n.boneInverses[r]),e.addScaledVector(Ra.copy(Ea).applyMatrix4(Ca),i)}}return e.applyMatrix4(this.bindMatrixInverse)}}Pa.prototype.isSkinnedMesh=!0;class Da extends Be{constructor(){super(),this.type="Bone"}}Da.prototype.isBone=!0;class Ia extends At{constructor(t=null,e=1,n=1,i,r,s,a,o,l=1003,c=1003,h,u){super(null,s,a,o,l,c,i,r,h,u),this.image={data:t,width:e,height:n},this.magFilter=l,this.minFilter=c,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}Ia.prototype.isDataTexture=!0;const Na=new ue,za=new ue;class Ba{constructor(t=[],e=[]){this.uuid=ct(),this.bones=t.slice(0),this.boneInverses=e,this.boneMatrices=null,this.boneTexture=null,this.boneTextureSize=0,this.frame=-1,this.init()}init(){const t=this.bones,e=this.boneInverses;if(this.boneMatrices=new Float32Array(16*t.length),0===e.length)this.calculateInverses();else if(t.length!==e.length){console.warn("THREE.Skeleton: Number of inverse bone matrices does not match amount of bones."),this.boneInverses=[];for(let t=0,e=this.bones.length;t<e;t++)this.boneInverses.push(new ue)}}calculateInverses(){this.boneInverses.length=0;for(let t=0,e=this.bones.length;t<e;t++){const e=new ue;this.bones[t]&&e.copy(this.bones[t].matrixWorld).invert(),this.boneInverses.push(e)}}pose(){for(let t=0,e=this.bones.length;t<e;t++){const e=this.bones[t];e&&e.matrixWorld.copy(this.boneInverses[t]).invert()}for(let t=0,e=this.bones.length;t<e;t++){const e=this.bones[t];e&&(e.parent&&e.parent.isBone?(e.matrix.copy(e.parent.matrixWorld).invert(),e.matrix.multiply(e.matrixWorld)):e.matrix.copy(e.matrixWorld),e.matrix.decompose(e.position,e.quaternion,e.scale))}}update(){const t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture;for(let i=0,r=t.length;i<r;i++){const r=t[i]?t[i].matrixWorld:za;Na.multiplyMatrices(r,e[i]),Na.toArray(n,16*i)}null!==i&&(i.needsUpdate=!0)}clone(){return new Ba(this.bones,this.boneInverses)}computeBoneTexture(){let t=Math.sqrt(4*this.bones.length);t=mt(t),t=Math.max(t,4);const e=new Float32Array(t*t*4);e.set(this.boneMatrices);const n=new Ia(e,t,t,E,b);return this.boneMatrices=e,this.boneTexture=n,this.boneTextureSize=t,this}getBoneByName(t){for(let e=0,n=this.bones.length;e<n;e++){const n=this.bones[e];if(n.name===t)return n}}dispose(){null!==this.boneTexture&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(t,e){this.uuid=t.uuid;for(let n=0,i=t.bones.length;n<i;n++){const i=t.bones[n];let r=e[i];void 0===r&&(console.warn("THREE.Skeleton: No bone found with UUID:",i),r=new Da),this.bones.push(r),this.boneInverses.push(new ue().fromArray(t.boneInverses[n]))}return this.init(),this}toJSON(){const t={metadata:{version:4.5,type:"Skeleton",generator:"Skeleton.toJSON"},bones:[],boneInverses:[]};t.uuid=this.uuid;const e=this.bones,n=this.boneInverses;for(let i=0,r=e.length;i<r;i++){const r=e[i];t.bones.push(r.uuid);const s=n[i];t.boneInverses.push(s.toArray())}return t}}class Fa extends on{constructor(t,e,n,i=1){"number"==typeof n&&(i=n,n=!1,console.error("THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.")),super(t,e,n),this.meshPerAttribute=i}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){const t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}}Fa.prototype.isInstancedBufferAttribute=!0;const Oa=new ue,Ua=new ue,Ha=[],Ga=new Vn;class ka extends Vn{constructor(t,e,n){super(t,e),this.instanceMatrix=new Fa(new Float32Array(16*n),16),this.instanceColor=null,this.count=n,this.frustumCulled=!1}copy(t){return super.copy(t),this.instanceMatrix.copy(t.instanceMatrix),null!==t.instanceColor&&(this.instanceColor=t.instanceColor.clone()),this.count=t.count,this}getColorAt(t,e){e.fromArray(this.instanceColor.array,3*t)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,16*t)}raycast(t,e){const n=this.matrixWorld,i=this.count;if(Ga.geometry=this.geometry,Ga.material=this.material,void 0!==Ga.material)for(let r=0;r<i;r++){this.getMatrixAt(r,Oa),Ua.multiplyMatrices(n,Oa),Ga.matrixWorld=Ua,Ga.raycast(t,Ha);for(let t=0,n=Ha.length;t<n;t++){const n=Ha[t];n.instanceId=r,n.object=this,e.push(n)}Ha.length=0}}setColorAt(t,e){null===this.instanceColor&&(this.instanceColor=new Fa(new Float32Array(3*this.instanceMatrix.count),3)),e.toArray(this.instanceColor.array,3*t)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,16*t)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:"dispose"})}}ka.prototype.isInstancedMesh=!0;class Va extends Ye{constructor(t){super(),this.type="LineBasicMaterial",this.color=new nn(16777215),this.linewidth=1,this.linecap="round",this.linejoin="round",this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this}}Va.prototype.isLineBasicMaterial=!0;const Wa=new Nt,ja=new Nt,qa=new ue,Xa=new he,Ja=new ne;class Ya extends Be{constructor(t=new Tn,e=new Va){super(),this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry){if(null===t.index){const e=t.attributes.position,n=[0];for(let t=1,i=e.count;t<i;t++)Wa.fromBufferAttribute(e,t-1),ja.fromBufferAttribute(e,t),n[t]=n[t-1],n[t]+=Wa.distanceTo(ja);t.setAttribute("lineDistance",new gn(n,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");}else t.isGeometry&&console.error("THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");return this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,r=t.params.Line.threshold,s=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),Ja.copy(n.boundingSphere),Ja.applyMatrix4(i),Ja.radius+=r,!1===t.ray.intersectsSphere(Ja))return;qa.copy(i).invert(),Xa.copy(t.ray).applyMatrix4(qa);const a=r/((this.scale.x+this.scale.y+this.scale.z)/3),o=a*a,l=new Nt,c=new Nt,h=new Nt,u=new Nt,d=this.isLineSegments?2:1;if(n.isBufferGeometry){const i=n.index,r=n.attributes.position;if(null!==i){for(let n=Math.max(0,s.start),a=Math.min(i.count,s.start+s.count)-1;n<a;n+=d){const s=i.getX(n),a=i.getX(n+1);l.fromBufferAttribute(r,s),c.fromBufferAttribute(r,a);if(Xa.distanceSqToSegment(l,c,u,h)>o)continue;u.applyMatrix4(this.matrixWorld);const d=t.ray.origin.distanceTo(u);d<t.near||d>t.far||e.push({distance:d,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}else{for(let n=Math.max(0,s.start),i=Math.min(r.count,s.start+s.count)-1;n<i;n+=d){l.fromBufferAttribute(r,n),c.fromBufferAttribute(r,n+1);if(Xa.distanceSqToSegment(l,c,u,h)>o)continue;u.applyMatrix4(this.matrixWorld);const i=t.ray.origin.distanceTo(u);i<t.near||i>t.far||e.push({distance:i,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}}else n.isGeometry&&console.error("THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error("THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.")}}}Ya.prototype.isLine=!0;const Za=new Nt,Qa=new Nt;class Ka extends Ya{constructor(t,e){super(t,e),this.type="LineSegments"}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry){if(null===t.index){const e=t.attributes.position,n=[];for(let t=0,i=e.count;t<i;t+=2)Za.fromBufferAttribute(e,t),Qa.fromBufferAttribute(e,t+1),n[t]=0===t?0:n[t-1],n[t+1]=n[t]+Za.distanceTo(Qa);t.setAttribute("lineDistance",new gn(n,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");}else t.isGeometry&&console.error("THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");return this}}Ka.prototype.isLineSegments=!0;class $a extends Ya{constructor(t,e){super(t,e),this.type="LineLoop"}}$a.prototype.isLineLoop=!0;class to extends Ye{constructor(t){super(),this.type="PointsMaterial",this.color=new nn(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this}}to.prototype.isPointsMaterial=!0;const eo=new ue,no=new he,io=new ne,ro=new Nt;class so extends Be{constructor(t=new Tn,e=new to){super(),this.type="Points",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,r=t.params.Points.threshold,s=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),io.copy(n.boundingSphere),io.applyMatrix4(i),io.radius+=r,!1===t.ray.intersectsSphere(io))return;eo.copy(i).invert(),no.copy(t.ray).applyMatrix4(eo);const a=r/((this.scale.x+this.scale.y+this.scale.z)/3),o=a*a;if(n.isBufferGeometry){const r=n.index,a=n.attributes.position;if(null!==r){for(let n=Math.max(0,s.start),l=Math.min(r.count,s.start+s.count);n<l;n++){const s=r.getX(n);ro.fromBufferAttribute(a,s),ao(ro,s,o,i,t,e,this)}}else{for(let n=Math.max(0,s.start),r=Math.min(a.count,s.start+s.count);n<r;n++)ro.fromBufferAttribute(a,n),ao(ro,n,o,i,t,e,this)}}else console.error("THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error("THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.")}}}function ao(t,e,n,i,r,s,a){const o=no.distanceSqToPoint(t);if(o<n){const n=new Nt;no.closestPointToPoint(t,n),n.applyMatrix4(i);const l=r.ray.origin.distanceTo(n);if(l<r.near||l>r.far)return;s.push({distance:l,distanceToRay:Math.sqrt(o),point:n,index:e,face:null,object:a})}}so.prototype.isPoints=!0;class oo extends At{constructor(t,e,n,i,r,s,a,o,l){super(t,e,n,i,r,s,a,o,l),this.format=void 0!==a?a:T,this.minFilter=void 0!==s?s:g,this.magFilter=void 0!==r?r:g,this.generateMipmaps=!1;const c=this;"requestVideoFrameCallback"in t&&t.requestVideoFrameCallback(function e(){c.needsUpdate=!0,t.requestVideoFrameCallback(e)})}clone(){return new this.constructor(this.image).copy(this)}update(){const t=this.image;!1==="requestVideoFrameCallback"in t&&t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}oo.prototype.isVideoTexture=!0;class lo extends At{constructor(t,e,n,i,r,s,a,o,l,c,h,u){super(null,s,a,o,l,c,i,r,h,u),this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}}lo.prototype.isCompressedTexture=!0;class co extends At{constructor(t,e,n,i,r,s,a,o,l){super(t,e,n,i,r,s,a,o,l),this.needsUpdate=!0}}co.prototype.isCanvasTexture=!0;class ho extends Tn{constructor(t=1,e=8,n=0,i=2*Math.PI){super(),this.type="CircleGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},e=Math.max(3,e);const r=[],s=[],a=[],o=[],l=new Nt,c=new vt;s.push(0,0,0),a.push(0,0,1),o.push(.5,.5);for(let r=0,h=3;r<=e;r++,h+=3){const u=n+r/e*i;l.x=t*Math.cos(u),l.y=t*Math.sin(u),s.push(l.x,l.y,l.z),a.push(0,0,1),c.x=(s[h]/t+1)/2,c.y=(s[h+1]/t+1)/2,o.push(c.x,c.y)}for(let t=1;t<=e;t++)r.push(t,t+1,0);this.setIndex(r),this.setAttribute("position",new gn(s,3)),this.setAttribute("normal",new gn(a,3)),this.setAttribute("uv",new gn(o,2))}static fromJSON(t){return new ho(t.radius,t.segments,t.thetaStart,t.thetaLength)}}class uo extends Tn{constructor(t=1,e=1,n=1,i=8,r=1,s=!1,a=0,o=2*Math.PI){super(),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:s,thetaStart:a,thetaLength:o};const l=this;i=Math.floor(i),r=Math.floor(r);const c=[],h=[],u=[],d=[];let p=0;const m=[],f=n/2;let g=0;function v(n){const r=p,s=new vt,m=new Nt;let v=0;const y=!0===n?t:e,x=!0===n?1:-1;for(let t=1;t<=i;t++)h.push(0,f*x,0),u.push(0,x,0),d.push(.5,.5),p++;const _=p;for(let t=0;t<=i;t++){const e=t/i*o+a,n=Math.cos(e),r=Math.sin(e);m.x=y*r,m.y=f*x,m.z=y*n,h.push(m.x,m.y,m.z),u.push(0,x,0),s.x=.5*n+.5,s.y=.5*r*x+.5,d.push(s.x,s.y),p++}for(let t=0;t<i;t++){const e=r+t,i=_+t;!0===n?c.push(i,i+1,e):c.push(i+1,i,e),v+=3}l.addGroup(g,v,!0===n?1:2),g+=v}!function(){const s=new Nt,v=new Nt;let y=0;const x=(e-t)/n;for(let l=0;l<=r;l++){const c=[],g=l/r,y=g*(e-t)+t;for(let t=0;t<=i;t++){const e=t/i,r=e*o+a,l=Math.sin(r),m=Math.cos(r);v.x=y*l,v.y=-g*n+f,v.z=y*m,h.push(v.x,v.y,v.z),s.set(l,x,m).normalize(),u.push(s.x,s.y,s.z),d.push(e,1-g),c.push(p++)}m.push(c)}for(let t=0;t<i;t++)for(let e=0;e<r;e++){const n=m[e][t],i=m[e+1][t],r=m[e+1][t+1],s=m[e][t+1];c.push(n,i,s),c.push(i,r,s),y+=6}l.addGroup(g,y,0),g+=y}(),!1===s&&(t>0&&v(!0),e>0&&v(!1)),this.setIndex(c),this.setAttribute("position",new gn(h,3)),this.setAttribute("normal",new gn(u,3)),this.setAttribute("uv",new gn(d,2))}static fromJSON(t){return new uo(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class po extends uo{constructor(t=1,e=1,n=8,i=1,r=!1,s=0,a=2*Math.PI){super(0,t,e,n,i,r,s,a),this.type="ConeGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:s,thetaLength:a}}static fromJSON(t){return new po(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class mo extends Tn{constructor(t=[],e=[],n=1,i=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i};const r=[],s=[];function a(t,e,n,i){const r=i+1,s=[];for(let i=0;i<=r;i++){s[i]=[];const a=t.clone().lerp(n,i/r),o=e.clone().lerp(n,i/r),l=r-i;for(let t=0;t<=l;t++)s[i][t]=0===t&&i===r?a:a.clone().lerp(o,t/l)}for(let t=0;t<r;t++)for(let e=0;e<2*(r-t)-1;e++){const n=Math.floor(e/2);e%2==0?(o(s[t][n+1]),o(s[t+1][n]),o(s[t][n])):(o(s[t][n+1]),o(s[t+1][n+1]),o(s[t+1][n]))}}function o(t){r.push(t.x,t.y,t.z)}function l(e,n){const i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}function c(t,e,n,i){i<0&&1===t.x&&(s[e]=t.x-1),0===n.x&&0===n.z&&(s[e]=i/2/Math.PI+.5)}function h(t){return Math.atan2(t.z,-t.x)}!function(t){const n=new Nt,i=new Nt,r=new Nt;for(let s=0;s<e.length;s+=3)l(e[s+0],n),l(e[s+1],i),l(e[s+2],r),a(n,i,r,t)}(i),function(t){const e=new Nt;for(let 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(){const t=new Nt;for(let n=0;n<r.length;n+=3){t.x=r[n+0],t.y=r[n+1],t.z=r[n+2];const i=h(t)/2/Math.PI+.5,a=(e=t,Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))/Math.PI+.5);s.push(i,1-a)}var e;(function(){const t=new Nt,e=new Nt,n=new Nt,i=new Nt,a=new vt,o=new vt,l=new vt;for(let u=0,d=0;u<r.length;u+=9,d+=6){t.set(r[u+0],r[u+1],r[u+2]),e.set(r[u+3],r[u+4],r[u+5]),n.set(r[u+6],r[u+7],r[u+8]),a.set(s[d+0],s[d+1]),o.set(s[d+2],s[d+3]),l.set(s[d+4],s[d+5]),i.copy(t).add(e).add(n).divideScalar(3);const p=h(i);c(a,d+0,t,p),c(o,d+2,e,p),c(l,d+4,n,p)}})(),function(){for(let t=0;t<s.length;t+=6){const e=s[t+0],n=s[t+2],i=s[t+4],r=Math.max(e,n,i),a=Math.min(e,n,i);r>.9&&a<.1&&(e<.2&&(s[t+0]+=1),n<.2&&(s[t+2]+=1),i<.2&&(s[t+4]+=1))}}()}(),this.setAttribute("position",new gn(r,3)),this.setAttribute("normal",new gn(r.slice(),3)),this.setAttribute("uv",new gn(s,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}static fromJSON(t){return new mo(t.vertices,t.indices,t.radius,t.details)}}class fo extends mo{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2,i=1/n;super([-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="DodecahedronGeometry",this.parameters={radius:t,detail:e}}static fromJSON(t){return new fo(t.radius,t.detail)}}const go=new Nt,vo=new Nt,yo=new Nt,xo=new Xe;class _o extends Tn{constructor(t=null,e=1){if(super(),this.type="EdgesGeometry",this.parameters={geometry:t,thresholdAngle:e},null!==t){const n=4,i=Math.pow(10,n),r=Math.cos(ot*e),s=t.getIndex(),a=t.getAttribute("position"),o=s?s.count:a.count,l=[0,0,0],c=["a","b","c"],h=new Array(3),u={},d=[];for(let t=0;t<o;t+=3){s?(l[0]=s.getX(t),l[1]=s.getX(t+1),l[2]=s.getX(t+2)):(l[0]=t,l[1]=t+1,l[2]=t+2);const{a:e,b:n,c:o}=xo;if(e.fromBufferAttribute(a,l[0]),n.fromBufferAttribute(a,l[1]),o.fromBufferAttribute(a,l[2]),xo.getNormal(yo),h[0]=`${Math.round(e.x*i)},${Math.round(e.y*i)},${Math.round(e.z*i)}`,h[1]=`${Math.round(n.x*i)},${Math.round(n.y*i)},${Math.round(n.z*i)}`,h[2]=`${Math.round(o.x*i)},${Math.round(o.y*i)},${Math.round(o.z*i)}`,h[0]!==h[1]&&h[1]!==h[2]&&h[2]!==h[0])for(let t=0;t<3;t++){const e=(t+1)%3,n=h[t],i=h[e],s=xo[c[t]],a=xo[c[e]],o=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(yo.dot(u[p].normal)<=r&&(d.push(s.x,s.y,s.z),d.push(a.x,a.y,a.z)),u[p]=null):o in u||(u[o]={index0:l[t],index1:l[e],normal:yo.clone()})}}for(const t in u)if(u[t]){const{index0:e,index1:n}=u[t];go.fromBufferAttribute(a,e),vo.fromBufferAttribute(a,n),d.push(go.x,go.y,go.z),d.push(vo.x,vo.y,vo.z)}this.setAttribute("position",new gn(d,3))}}}class Mo{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(t,e){const n=this.getUtoTmapping(t);return this.getPoint(n,e)}getPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return e}getSpacedPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e}getLength(){const t=this.getLengths();return t[t.length-1]}getLengths(t=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;const e=[];let n,i=this.getPoint(0),r=0;e.push(0);for(let s=1;s<=t;s++)n=this.getPoint(s/t),r+=n.distanceTo(i),e.push(r),i=n;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e){const n=this.getLengths();let i=0;const r=n.length;let s;s=e||t*n[r-1];let a,o=0,l=r-1;for(;o<=l;)if(i=Math.floor(o+(l-o)/2),a=n[i]-s,a<0)o=i+1;else{if(!(a>0)){l=i;break}l=i-1}if(i=l,n[i]===s)return i/(r-1);const c=n[i];return(i+(s-c)/(n[i+1]-c))/(r-1)}getTangent(t,e){const n=1e-4;let i=t-n,r=t+n;i<0&&(i=0),r>1&&(r=1);const s=this.getPoint(i),a=this.getPoint(r),o=e||(s.isVector2?new vt:new Nt);return o.copy(a).sub(s).normalize(),o}getTangentAt(t,e){const n=this.getUtoTmapping(t);return this.getTangent(n,e)}computeFrenetFrames(t,e){const n=new Nt,i=[],r=[],s=[],a=new Nt,o=new ue;for(let e=0;e<=t;e++){const n=e/t;i[e]=this.getTangentAt(n,new Nt)}r[0]=new Nt,s[0]=new Nt;let l=Number.MAX_VALUE;const c=Math.abs(i[0].x),h=Math.abs(i[0].y),u=Math.abs(i[0].z);c<=l&&(l=c,n.set(1,0,0)),h<=l&&(l=h,n.set(0,1,0)),u<=l&&n.set(0,0,1),a.crossVectors(i[0],n).normalize(),r[0].crossVectors(i[0],a),s[0].crossVectors(i[0],r[0]);for(let e=1;e<=t;e++){if(r[e]=r[e-1].clone(),s[e]=s[e-1].clone(),a.crossVectors(i[e-1],i[e]),a.length()>Number.EPSILON){a.normalize();const t=Math.acos(ht(i[e-1].dot(i[e]),-1,1));r[e].applyMatrix4(o.makeRotationAxis(a,t))}s[e].crossVectors(i[e],r[e])}if(!0===e){let e=Math.acos(ht(r[0].dot(r[t]),-1,1));e/=t,i[0].dot(a.crossVectors(r[0],r[t]))>0&&(e=-e);for(let n=1;n<=t;n++)r[n].applyMatrix4(o.makeRotationAxis(i[n],e*n)),s[n].crossVectors(i[n],r[n])}return{tangents:i,normals:r,binormals:s}}clone(){return new this.constructor().copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}class bo extends Mo{constructor(t=0,e=0,n=1,i=1,r=0,s=2*Math.PI,a=!1,o=0){super(),this.type="EllipseCurve",this.aX=t,this.aY=e,this.xRadius=n,this.yRadius=i,this.aStartAngle=r,this.aEndAngle=s,this.aClockwise=a,this.aRotation=o}getPoint(t,e){const n=e||new vt,i=2*Math.PI;let r=this.aEndAngle-this.aStartAngle;const s=Math.abs(r)<Number.EPSILON;for(;r<0;)r+=i;for(;r>i;)r-=i;r<Number.EPSILON&&(r=s?0:i),!0!==this.aClockwise||s||(r===i?r=-i:r-=i);const a=this.aStartAngle+t*r;let o=this.aX+this.xRadius*Math.cos(a),l=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){const t=Math.cos(this.aRotation),e=Math.sin(this.aRotation),n=o-this.aX,i=l-this.aY;o=n*t-i*e+this.aX,l=n*e+i*t+this.aY}return n.set(o,l)}copy(t){return super.copy(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}toJSON(){const t=super.toJSON();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}fromJSON(t){return super.fromJSON(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}}bo.prototype.isEllipseCurve=!0;class wo extends bo{constructor(t,e,n,i,r,s){super(t,e,n,n,i,r,s),this.type="ArcCurve"}}function So(){let t=0,e=0,n=0,i=0;function r(r,s,a,o){t=r,e=a,n=-3*r+3*s-2*a-o,i=2*r-2*s+a+o}return{initCatmullRom:function(t,e,n,i,s){r(e,n,s*(n-t),s*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,s,a,o){let l=(e-t)/s-(n-t)/(s+a)+(n-e)/a,c=(n-e)/a-(i-e)/(a+o)+(i-n)/o;l*=a,c*=a,r(e,n,l,c)},calc:function(r){const s=r*r;return t+e*r+n*s+i*(s*r)}}}wo.prototype.isArcCurve=!0;const To=new Nt,Eo=new So,Ao=new So,Lo=new So;class Ro extends Mo{constructor(t=[],e=!1,n="centripetal",i=.5){super(),this.type="CatmullRomCurve3",this.points=t,this.closed=e,this.curveType=n,this.tension=i}getPoint(t,e=new Nt){const n=e,i=this.points,r=i.length,s=(r-(this.closed?0:1))*t;let a,o,l=Math.floor(s),c=s-l;this.closed?l+=l>0?0:(Math.floor(Math.abs(l)/r)+1)*r:0===c&&l===r-1&&(l=r-2,c=1),this.closed||l>0?a=i[(l-1)%r]:(To.subVectors(i[0],i[1]).add(i[0]),a=To);const h=i[l%r],u=i[(l+1)%r];if(this.closed||l+2<r?o=i[(l+2)%r]:(To.subVectors(i[r-1],i[r-2]).add(i[r-1]),o=To),"centripetal"===this.curveType||"chordal"===this.curveType){const t="chordal"===this.curveType?.5:.25;let e=Math.pow(a.distanceToSquared(h),t),n=Math.pow(h.distanceToSquared(u),t),i=Math.pow(u.distanceToSquared(o),t);n<1e-4&&(n=1),e<1e-4&&(e=n),i<1e-4&&(i=n),Eo.initNonuniformCatmullRom(a.x,h.x,u.x,o.x,e,n,i),Ao.initNonuniformCatmullRom(a.y,h.y,u.y,o.y,e,n,i),Lo.initNonuniformCatmullRom(a.z,h.z,u.z,o.z,e,n,i)}else"catmullrom"===this.curveType&&(Eo.initCatmullRom(a.x,h.x,u.x,o.x,this.tension),Ao.initCatmullRom(a.y,h.y,u.y,o.y,this.tension),Lo.initCatmullRom(a.z,h.z,u.z,o.z,this.tension));return n.set(Eo.calc(c),Ao.calc(c),Lo.calc(c)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.toArray())}return t.closed=this.closed,t.curveType=this.curveType,t.tension=this.tension,t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(new Nt().fromArray(n))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}}function Co(t,e,n,i,r){const s=.5*(i-e),a=.5*(r-n),o=t*t;return(2*n-2*i+s+a)*(t*o)+(-3*n+3*i-2*s-a)*o+s*t+n}function Po(t,e,n,i){return function(t,e){const n=1-t;return n*n*e}(t,e)+function(t,e){return 2*(1-t)*t*e}(t,n)+function(t,e){return t*t*e}(t,i)}function Do(t,e,n,i,r){return function(t,e){const n=1-t;return n*n*n*e}(t,e)+function(t,e){const n=1-t;return 3*n*n*t*e}(t,n)+function(t,e){return 3*(1-t)*t*t*e}(t,i)+function(t,e){return t*t*t*e}(t,r)}Ro.prototype.isCatmullRomCurve3=!0;class Io extends Mo{constructor(t=new vt,e=new vt,n=new vt,i=new vt){super(),this.type="CubicBezierCurve",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new vt){const n=e,i=this.v0,r=this.v1,s=this.v2,a=this.v3;return n.set(Do(t,i.x,r.x,s.x,a.x),Do(t,i.y,r.y,s.y,a.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}}Io.prototype.isCubicBezierCurve=!0;class No extends Mo{constructor(t=new Nt,e=new Nt,n=new Nt,i=new Nt){super(),this.type="CubicBezierCurve3",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new Nt){const n=e,i=this.v0,r=this.v1,s=this.v2,a=this.v3;return n.set(Do(t,i.x,r.x,s.x,a.x),Do(t,i.y,r.y,s.y,a.y),Do(t,i.z,r.z,s.z,a.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}}No.prototype.isCubicBezierCurve3=!0;class zo extends Mo{constructor(t=new vt,e=new vt){super(),this.type="LineCurve",this.v1=t,this.v2=e}getPoint(t,e=new vt){const n=e;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e){const n=e||new vt;return n.copy(this.v2).sub(this.v1).normalize(),n}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}zo.prototype.isLineCurve=!0;class Bo extends Mo{constructor(t=new Nt,e=new Nt){super(),this.type="LineCurve3",this.isLineCurve3=!0,this.v1=t,this.v2=e}getPoint(t,e=new Nt){const n=e;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}class Fo extends Mo{constructor(t=new vt,e=new vt,n=new vt){super(),this.type="QuadraticBezierCurve",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new vt){const n=e,i=this.v0,r=this.v1,s=this.v2;return n.set(Po(t,i.x,r.x,s.x),Po(t,i.y,r.y,s.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}Fo.prototype.isQuadraticBezierCurve=!0;class Oo extends Mo{constructor(t=new Nt,e=new Nt,n=new Nt){super(),this.type="QuadraticBezierCurve3",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new Nt){const n=e,i=this.v0,r=this.v1,s=this.v2;return n.set(Po(t,i.x,r.x,s.x),Po(t,i.y,r.y,s.y),Po(t,i.z,r.z,s.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}Oo.prototype.isQuadraticBezierCurve3=!0;class Uo extends Mo{constructor(t=[]){super(),this.type="SplineCurve",this.points=t}getPoint(t,e=new vt){const n=e,i=this.points,r=(i.length-1)*t,s=Math.floor(r),a=r-s,o=i[0===s?s:s-1],l=i[s],c=i[s>i.length-2?i.length-1:s+1],h=i[s>i.length-3?i.length-1:s+2];return n.set(Co(a,o.x,l.x,c.x,h.x),Co(a,o.y,l.y,c.y,h.y)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(new vt().fromArray(n))}return this}}Uo.prototype.isSplineCurve=!0;var Ho=Object.freeze({__proto__:null,ArcCurve:wo,CatmullRomCurve3:Ro,CubicBezierCurve:Io,CubicBezierCurve3:No,EllipseCurve:bo,LineCurve:zo,LineCurve3:Bo,QuadraticBezierCurve:Fo,QuadraticBezierCurve3:Oo,SplineCurve:Uo});class Go extends Mo{constructor(){super(),this.type="CurvePath",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){const t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new zo(e,t))}getPoint(t,e){const n=t*this.getLength(),i=this.getCurveLengths();let r=0;for(;r<i.length;){if(i[r]>=n){const t=i[r]-n,s=this.curves[r],a=s.getLength(),o=0===a?0:1-t/a;return s.getPointAt(o,e)}r++}return null}getLength(){const t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const t=[];let e=0;for(let n=0,i=this.curves.length;n<i;n++)e+=this.curves[n].getLength(),t.push(e);return this.cacheLengths=t,t}getSpacedPoints(t=40){const e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return this.autoClose&&e.push(e[0]),e}getPoints(t=12){const e=[];let n;for(let i=0,r=this.curves;i<r.length;i++){const s=r[i],a=s&&s.isEllipseCurve?2*t:s&&(s.isLineCurve||s.isLineCurve3)?1:s&&s.isSplineCurve?t*s.points.length:t,o=s.getPoints(a);for(let t=0;t<o.length;t++){const i=o[t];n&&n.equals(i)||(e.push(i),n=i)}}return this.autoClose&&e.length>1&&!e[e.length-1].equals(e[0])&&e.push(e[0]),e}copy(t){super.copy(t),this.curves=[];for(let e=0,n=t.curves.length;e<n;e++){const n=t.curves[e];this.curves.push(n.clone())}return this.autoClose=t.autoClose,this}toJSON(){const t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,n=this.curves.length;e<n;e++){const n=this.curves[e];t.curves.push(n.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.autoClose=t.autoClose,this.curves=[];for(let e=0,n=t.curves.length;e<n;e++){const n=t.curves[e];this.curves.push(new Ho[n.type]().fromJSON(n))}return this}}class ko extends Go{constructor(t){super(),this.type="Path",this.currentPoint=new vt,t&&this.setFromPoints(t)}setFromPoints(t){this.moveTo(t[0].x,t[0].y);for(let e=1,n=t.length;e<n;e++)this.lineTo(t[e].x,t[e].y);return this}moveTo(t,e){return this.currentPoint.set(t,e),this}lineTo(t,e){const n=new zo(this.currentPoint.clone(),new vt(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,n,i){const r=new Fo(this.currentPoint.clone(),new vt(t,e),new vt(n,i));return this.curves.push(r),this.currentPoint.set(n,i),this}bezierCurveTo(t,e,n,i,r,s){const a=new Io(this.currentPoint.clone(),new vt(t,e),new vt(n,i),new vt(r,s));return this.curves.push(a),this.currentPoint.set(r,s),this}splineThru(t){const e=[this.currentPoint.clone()].concat(t),n=new Uo(e);return this.curves.push(n),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,n,i,r,s){const a=this.currentPoint.x,o=this.currentPoint.y;return this.absarc(t+a,e+o,n,i,r,s),this}absarc(t,e,n,i,r,s){return this.absellipse(t,e,n,n,i,r,s),this}ellipse(t,e,n,i,r,s,a,o){const l=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(t+l,e+c,n,i,r,s,a,o),this}absellipse(t,e,n,i,r,s,a,o){const l=new bo(t,e,n,i,r,s,a,o);if(this.curves.length>0){const t=l.getPoint(0);t.equals(this.currentPoint)||this.lineTo(t.x,t.y)}this.curves.push(l);const c=l.getPoint(1);return this.currentPoint.copy(c),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}class Vo extends ko{constructor(t){super(t),this.uuid=ct(),this.type="Shape",this.holes=[]}getPointsHoles(t){const e=[];for(let n=0,i=this.holes.length;n<i;n++)e[n]=this.holes[n].getPoints(t);return e}extractPoints(t){return{shape:this.getPoints(t),holes:this.getPointsHoles(t)}}copy(t){super.copy(t),this.holes=[];for(let e=0,n=t.holes.length;e<n;e++){const n=t.holes[e];this.holes.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,n=this.holes.length;e<n;e++){const n=this.holes[e];t.holes.push(n.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.uuid=t.uuid,this.holes=[];for(let e=0,n=t.holes.length;e<n;e++){const n=t.holes[e];this.holes.push(new ko().fromJSON(n))}return this}}const Wo=function(t,e,n=2){const i=e&&e.length,r=i?e[0]*n:t.length;let s=jo(t,0,r,n,!0);const a=[];if(!s||s.next===s.prev)return a;let o,l,c,h,u,d,p;if(i&&(s=function(t,e,n,i){const r=[];let s,a,o,l,c;for(s=0,a=e.length;s<a;s++)o=e[s]*i,l=s<a-1?e[s+1]*i:t.length,c=jo(t,o,l,i,!1),c===c.next&&(c.steiner=!0),r.push(nl(c));for(r.sort(Ko),s=0;s<r.length;s++)$o(r[s],n),n=qo(n,n.next);return n}(t,e,s,n)),t.length>80*n){o=c=t[0],l=h=t[1];for(let e=n;e<r;e+=n)u=t[e],d=t[e+1],u<o&&(o=u),d<l&&(l=d),u>c&&(c=u),d>h&&(h=d);p=Math.max(c-o,h-l),p=0!==p?1/p:0}return Xo(s,a,n,o,l,p),a};function jo(t,e,n,i,r){let s,a;if(r===function(t,e,n,i){let r=0;for(let s=e,a=n-i;s<n;s+=i)r+=(t[a]-t[s])*(t[s+1]+t[a+1]),a=s;return r}(t,e,n,i)>0)for(s=e;s<n;s+=i)a=dl(s,t[s],t[s+1],a);else for(s=n-i;s>=e;s-=i)a=dl(s,t[s],t[s+1],a);return a&&al(a,a.next)&&(pl(a),a=a.next),a}function qo(t,e){if(!t)return t;e||(e=t);let n,i=t;do{if(n=!1,i.steiner||!al(i,i.next)&&0!==sl(i.prev,i,i.next))i=i.next;else{if(pl(i),i=e=i.prev,i===i.next)break;n=!0}}while(n||i!==e);return e}function Xo(t,e,n,i,r,s,a){if(!t)return;!a&&s&&function(t,e,n,i){let r=t;do{null===r.z&&(r.z=el(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){let e,n,i,r,s,a,o,l,c=1;do{for(n=t,t=null,s=null,a=0;n;){for(a++,i=n,o=0,e=0;e<c&&(o++,i=i.nextZ,i);e++);for(l=c;o>0||l>0&&i;)0!==o&&(0===l||!i||n.z<=i.z)?(r=n,n=n.nextZ,o--):(r=i,i=i.nextZ,l--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;n=i}s.nextZ=null,c*=2}while(a>1)}(r)}(t,i,r,s);let o,l,c=t;for(;t.prev!==t.next;)if(o=t.prev,l=t.next,s?Yo(t,i,r,s):Jo(t))e.push(o.i/n),e.push(t.i/n),e.push(l.i/n),pl(t),t=l.next,c=l.next;else if((t=l)===c){a?1===a?Xo(t=Zo(qo(t),e,n),e,n,i,r,s,2):2===a&&Qo(t,e,n,i,r,s):Xo(qo(t),e,n,i,r,s,1);break}}function Jo(t){const e=t.prev,n=t,i=t.next;if(sl(e,n,i)>=0)return!1;let r=t.next.next;for(;r!==t.prev;){if(il(e.x,e.y,n.x,n.y,i.x,i.y,r.x,r.y)&&sl(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function Yo(t,e,n,i){const r=t.prev,s=t,a=t.next;if(sl(r,s,a)>=0)return!1;const o=r.x<s.x?r.x<a.x?r.x:a.x:s.x<a.x?s.x:a.x,l=r.y<s.y?r.y<a.y?r.y:a.y:s.y<a.y?s.y:a.y,c=r.x>s.x?r.x>a.x?r.x:a.x:s.x>a.x?s.x:a.x,h=r.y>s.y?r.y>a.y?r.y:a.y:s.y>a.y?s.y:a.y,u=el(o,l,e,n,i),d=el(c,h,e,n,i);let p=t.prevZ,m=t.nextZ;for(;p&&p.z>=u&&m&&m.z<=d;){if(p!==t.prev&&p!==t.next&&il(r.x,r.y,s.x,s.y,a.x,a.y,p.x,p.y)&&sl(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,m!==t.prev&&m!==t.next&&il(r.x,r.y,s.x,s.y,a.x,a.y,m.x,m.y)&&sl(m.prev,m,m.next)>=0)return!1;m=m.nextZ}for(;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&il(r.x,r.y,s.x,s.y,a.x,a.y,p.x,p.y)&&sl(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;m&&m.z<=d;){if(m!==t.prev&&m!==t.next&&il(r.x,r.y,s.x,s.y,a.x,a.y,m.x,m.y)&&sl(m.prev,m,m.next)>=0)return!1;m=m.nextZ}return!0}function Zo(t,e,n){let i=t;do{const r=i.prev,s=i.next.next;!al(r,s)&&ol(r,i,i.next,s)&&hl(r,s)&&hl(s,r)&&(e.push(r.i/n),e.push(i.i/n),e.push(s.i/n),pl(i),pl(i.next),i=t=s),i=i.next}while(i!==t);return qo(i)}function Qo(t,e,n,i,r,s){let a=t;do{let t=a.next.next;for(;t!==a.prev;){if(a.i!==t.i&&rl(a,t)){let o=ul(a,t);return a=qo(a,a.next),o=qo(o,o.next),Xo(a,e,n,i,r,s),void Xo(o,e,n,i,r,s)}t=t.next}a=a.next}while(a!==t)}function Ko(t,e){return t.x-e.x}function $o(t,e){if(e=function(t,e){let n=e;const i=t.x,r=t.y;let s,a=-1/0;do{if(r<=n.y&&r>=n.next.y&&n.next.y!==n.y){const t=n.x+(r-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t<=i&&t>a){if(a=t,t===i){if(r===n.y)return n;if(r===n.next.y)return n.next}s=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!s)return null;if(i===a)return s;const o=s,l=s.x,c=s.y;let h,u=1/0;n=s;do{i>=n.x&&n.x>=l&&i!==n.x&&il(r<c?i:a,r,l,c,r<c?a:i,r,n.x,n.y)&&(h=Math.abs(r-n.y)/(i-n.x),hl(n,t)&&(h<u||h===u&&(n.x>s.x||n.x===s.x&&tl(s,n)))&&(s=n,u=h)),n=n.next}while(n!==o);return s}(t,e),e){const n=ul(e,t);qo(e,e.next),qo(n,n.next)}}function tl(t,e){return sl(t.prev,t,e.prev)<0&&sl(e.next,t,t.next)<0}function el(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 nl(t){let e=t,n=t;do{(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next}while(e!==t);return n}function il(t,e,n,i,r,s,a,o){return(r-a)*(e-o)-(t-a)*(s-o)>=0&&(t-a)*(i-o)-(n-a)*(e-o)>=0&&(n-a)*(s-o)-(r-a)*(i-o)>=0}function rl(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&ol(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(hl(t,e)&&hl(e,t)&&function(t,e){let n=t,i=!1;const r=(t.x+e.x)/2,s=(t.y+e.y)/2;do{n.y>s!=n.next.y>s&&n.next.y!==n.y&&r<(n.next.x-n.x)*(s-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next}while(n!==t);return i}(t,e)&&(sl(t.prev,t,e.prev)||sl(t,e.prev,e))||al(t,e)&&sl(t.prev,t,t.next)>0&&sl(e.prev,e,e.next)>0)}function sl(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function al(t,e){return t.x===e.x&&t.y===e.y}function ol(t,e,n,i){const r=cl(sl(t,e,n)),s=cl(sl(t,e,i)),a=cl(sl(n,i,t)),o=cl(sl(n,i,e));return r!==s&&a!==o||!(0!==r||!ll(t,n,e))||!(0!==s||!ll(t,i,e))||!(0!==a||!ll(n,t,i))||!(0!==o||!ll(n,e,i))}function ll(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function cl(t){return t>0?1:t<0?-1:0}function hl(t,e){return sl(t.prev,t,t.next)<0?sl(t,e,t.next)>=0&&sl(t,t.prev,e)>=0:sl(t,e,t.prev)<0||sl(t,t.next,e)<0}function ul(t,e){const n=new ml(t.i,t.x,t.y),i=new ml(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,n.next=r,r.prev=n,i.next=n,n.prev=i,s.next=i,i.prev=s,i}function dl(t,e,n,i){const r=new ml(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 pl(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 ml(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}class fl{static area(t){const e=t.length;let n=0;for(let 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}static isClockWise(t){return fl.area(t)<0}static triangulateShape(t,e){const n=[],i=[],r=[];gl(t),vl(n,t);let s=t.length;e.forEach(gl);for(let t=0;t<e.length;t++)i.push(s),s+=e[t].length,vl(n,e[t]);const a=Wo(n,i);for(let t=0;t<a.length;t+=3)r.push(a.slice(t,t+3));return r}}function gl(t){const e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function vl(t,e){for(let n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}class yl extends Tn{constructor(t=new Vo([new vt(.5,.5),new vt(-.5,.5),new vt(-.5,-.5),new vt(.5,-.5)]),e={}){super(),this.type="ExtrudeGeometry",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];const n=this,i=[],r=[];for(let e=0,n=t.length;e<n;e++){s(t[e])}function s(t){const s=[],a=void 0!==e.curveSegments?e.curveSegments:12,o=void 0!==e.steps?e.steps:1;let l=void 0!==e.depth?e.depth:1,c=void 0===e.bevelEnabled||e.bevelEnabled,h=void 0!==e.bevelThickness?e.bevelThickness:.2,u=void 0!==e.bevelSize?e.bevelSize:h-.1,d=void 0!==e.bevelOffset?e.bevelOffset:0,p=void 0!==e.bevelSegments?e.bevelSegments:3;const m=e.extrudePath,f=void 0!==e.UVGenerator?e.UVGenerator:xl;void 0!==e.amount&&(console.warn("THREE.ExtrudeBufferGeometry: amount has been renamed to depth."),l=e.amount);let g,v,y,x,_,M=!1;m&&(g=m.getSpacedPoints(o),M=!0,c=!1,v=m.computeFrenetFrames(o,!1),y=new Nt,x=new Nt,_=new Nt),c||(p=0,h=0,u=0,d=0);const b=t.extractPoints(a);let w=b.shape;const S=b.holes;if(!fl.isClockWise(w)){w=w.reverse();for(let t=0,e=S.length;t<e;t++){const e=S[t];fl.isClockWise(e)&&(S[t]=e.reverse())}}const T=fl.triangulateShape(w,S),E=w;for(let t=0,e=S.length;t<e;t++){const e=S[t];w=w.concat(e)}function A(t,e,n){return e||console.error("THREE.ExtrudeGeometry: vec does not exist"),e.clone().multiplyScalar(n).add(t)}const L=w.length,R=T.length;function C(t,e,n){let i,r,s;const a=t.x-e.x,o=t.y-e.y,l=n.x-t.x,c=n.y-t.y,h=a*a+o*o,u=a*c-o*l;if(Math.abs(u)>Number.EPSILON){const u=Math.sqrt(h),d=Math.sqrt(l*l+c*c),p=e.x-o/u,m=e.y+a/u,f=((n.x-c/d-p)*c-(n.y+l/d-m)*l)/(a*c-o*l);i=p+a*f-t.x,r=m+o*f-t.y;const g=i*i+r*r;if(g<=2)return new vt(i,r);s=Math.sqrt(g/2)}else{let t=!1;a>Number.EPSILON?l>Number.EPSILON&&(t=!0):a<-Number.EPSILON?l<-Number.EPSILON&&(t=!0):Math.sign(o)===Math.sign(c)&&(t=!0),t?(i=-o,r=a,s=Math.sqrt(h)):(i=a,r=o,s=Math.sqrt(h/2))}return new vt(i/s,r/s)}const P=[];for(let t=0,e=E.length,n=e-1,i=t+1;t<e;t++,n++,i++)n===e&&(n=0),i===e&&(i=0),P[t]=C(E[t],E[n],E[i]);const D=[];let I,N=P.concat();for(let t=0,e=S.length;t<e;t++){const e=S[t];I=[];for(let t=0,n=e.length,i=n-1,r=t+1;t<n;t++,i++,r++)i===n&&(i=0),r===n&&(r=0),I[t]=C(e[t],e[i],e[r]);D.push(I),N=N.concat(I)}for(let t=0;t<p;t++){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t<e;t++){const e=A(E[t],P[t],i);F(e.x,e.y,-n)}for(let t=0,e=S.length;t<e;t++){const e=S[t];I=D[t];for(let t=0,r=e.length;t<r;t++){const r=A(e[t],I[t],i);F(r.x,r.y,-n)}}}const z=u+d;for(let t=0;t<L;t++){const e=c?A(w[t],N[t],z):w[t];M?(x.copy(v.normals[0]).multiplyScalar(e.x),y.copy(v.binormals[0]).multiplyScalar(e.y),_.copy(g[0]).add(x).add(y),F(_.x,_.y,_.z)):F(e.x,e.y,0)}for(let t=1;t<=o;t++)for(let e=0;e<L;e++){const n=c?A(w[e],N[e],z):w[e];M?(x.copy(v.normals[t]).multiplyScalar(n.x),y.copy(v.binormals[t]).multiplyScalar(n.y),_.copy(g[t]).add(x).add(y),F(_.x,_.y,_.z)):F(n.x,n.y,l/o*t)}for(let t=p-1;t>=0;t--){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t<e;t++){const e=A(E[t],P[t],i);F(e.x,e.y,l+n)}for(let t=0,e=S.length;t<e;t++){const e=S[t];I=D[t];for(let t=0,r=e.length;t<r;t++){const r=A(e[t],I[t],i);M?F(r.x,r.y+g[o-1].y,g[o-1].x+n):F(r.x,r.y,l+n)}}}function B(t,e){let n=t.length;for(;--n>=0;){const i=n;let r=n-1;r<0&&(r=t.length-1);for(let t=0,n=o+2*p;t<n;t++){const n=L*t,s=L*(t+1);U(e+i+n,e+r+n,e+r+s,e+i+s)}}}function F(t,e,n){s.push(t),s.push(e),s.push(n)}function O(t,e,r){H(t),H(e),H(r);const s=i.length/3,a=f.generateTopUV(n,i,s-3,s-2,s-1);G(a[0]),G(a[1]),G(a[2])}function U(t,e,r,s){H(t),H(e),H(s),H(e),H(r),H(s);const a=i.length/3,o=f.generateSideWallUV(n,i,a-6,a-3,a-2,a-1);G(o[0]),G(o[1]),G(o[3]),G(o[1]),G(o[2]),G(o[3])}function H(t){i.push(s[3*t+0]),i.push(s[3*t+1]),i.push(s[3*t+2])}function G(t){r.push(t.x),r.push(t.y)}!function(){const t=i.length/3;if(c){let t=0,e=L*t;for(let t=0;t<R;t++){const n=T[t];O(n[2]+e,n[1]+e,n[0]+e)}t=o+2*p,e=L*t;for(let t=0;t<R;t++){const n=T[t];O(n[0]+e,n[1]+e,n[2]+e)}}else{for(let t=0;t<R;t++){const e=T[t];O(e[2],e[1],e[0])}for(let t=0;t<R;t++){const e=T[t];O(e[0]+L*o,e[1]+L*o,e[2]+L*o)}}n.addGroup(t,i.length/3-t,0)}(),function(){const t=i.length/3;let e=0;B(E,e),e+=E.length;for(let t=0,n=S.length;t<n;t++){const n=S[t];B(n,e),e+=n.length}n.addGroup(t,i.length/3-t,1)}()}this.setAttribute("position",new gn(i,3)),this.setAttribute("uv",new gn(r,2)),this.computeVertexNormals()}toJSON(){const t=super.toJSON();return function(t,e,n){if(n.shapes=[],Array.isArray(t))for(let e=0,i=t.length;e<i;e++){const i=t[e];n.shapes.push(i.uuid)}else n.shapes.push(t.uuid);void 0!==e.extrudePath&&(n.options.extrudePath=e.extrudePath.toJSON());return n}(this.parameters.shapes,this.parameters.options,t)}static fromJSON(t,e){const n=[];for(let i=0,r=t.shapes.length;i<r;i++){const r=e[t.shapes[i]];n.push(r)}const i=t.options.extrudePath;return void 0!==i&&(t.options.extrudePath=new Ho[i.type]().fromJSON(i)),new yl(n,t.options)}}const xl={generateTopUV:function(t,e,n,i,r){const s=e[3*n],a=e[3*n+1],o=e[3*i],l=e[3*i+1],c=e[3*r],h=e[3*r+1];return[new vt(s,a),new vt(o,l),new vt(c,h)]},generateSideWallUV:function(t,e,n,i,r,s){const a=e[3*n],o=e[3*n+1],l=e[3*n+2],c=e[3*i],h=e[3*i+1],u=e[3*i+2],d=e[3*r],p=e[3*r+1],m=e[3*r+2],f=e[3*s],g=e[3*s+1],v=e[3*s+2];return Math.abs(o-h)<Math.abs(a-c)?[new vt(a,1-l),new vt(c,1-u),new vt(d,1-m),new vt(f,1-v)]:[new vt(o,1-l),new vt(h,1-u),new vt(p,1-m),new vt(g,1-v)]}};class _l extends mo{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2;super([-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="IcosahedronGeometry",this.parameters={radius:t,detail:e}}static fromJSON(t){return new _l(t.radius,t.detail)}}class Ml extends Tn{constructor(t=[new vt(0,.5),new vt(.5,0),new vt(0,-.5)],e=12,n=0,i=2*Math.PI){super(),this.type="LatheGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e),i=ht(i,0,2*Math.PI);const r=[],s=[],a=[],o=1/e,l=new Nt,c=new vt;for(let r=0;r<=e;r++){const h=n+r*o*i,u=Math.sin(h),d=Math.cos(h);for(let n=0;n<=t.length-1;n++)l.x=t[n].x*u,l.y=t[n].y,l.z=t[n].x*d,s.push(l.x,l.y,l.z),c.x=r/e,c.y=n/(t.length-1),a.push(c.x,c.y)}for(let n=0;n<e;n++)for(let e=0;e<t.length-1;e++){const i=e+n*t.length,s=i,a=i+t.length,o=i+t.length+1,l=i+1;r.push(s,a,l),r.push(a,o,l)}if(this.setIndex(r),this.setAttribute("position",new gn(s,3)),this.setAttribute("uv",new gn(a,2)),this.computeVertexNormals(),i===2*Math.PI){const n=this.attributes.normal.array,i=new Nt,r=new Nt,s=new Nt,a=e*t.length*3;for(let e=0,o=0;e<t.length;e++,o+=3)i.x=n[o+0],i.y=n[o+1],i.z=n[o+2],r.x=n[a+o+0],r.y=n[a+o+1],r.z=n[a+o+2],s.addVectors(i,r).normalize(),n[o+0]=n[a+o+0]=s.x,n[o+1]=n[a+o+1]=s.y,n[o+2]=n[a+o+2]=s.z}}static fromJSON(t){return new Ml(t.points,t.segments,t.phiStart,t.phiLength)}}class bl extends mo{constructor(t=1,e=0){super([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="OctahedronGeometry",this.parameters={radius:t,detail:e}}static fromJSON(t){return new bl(t.radius,t.detail)}}class wl extends Tn{constructor(t=.5,e=1,n=8,i=1,r=0,s=2*Math.PI){super(),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:s},n=Math.max(3,n);const a=[],o=[],l=[],c=[];let h=t;const u=(e-t)/(i=Math.max(1,i)),d=new Nt,p=new vt;for(let t=0;t<=i;t++){for(let t=0;t<=n;t++){const i=r+t/n*s;d.x=h*Math.cos(i),d.y=h*Math.sin(i),o.push(d.x,d.y,d.z),l.push(0,0,1),p.x=(d.x/e+1)/2,p.y=(d.y/e+1)/2,c.push(p.x,p.y)}h+=u}for(let t=0;t<i;t++){const e=t*(n+1);for(let t=0;t<n;t++){const i=t+e,r=i,s=i+n+1,o=i+n+2,l=i+1;a.push(r,s,l),a.push(s,o,l)}}this.setIndex(a),this.setAttribute("position",new gn(o,3)),this.setAttribute("normal",new gn(l,3)),this.setAttribute("uv",new gn(c,2))}static fromJSON(t){return new wl(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}}class Sl extends Tn{constructor(t=new Vo([new vt(0,.5),new vt(-.5,-.5),new vt(.5,-.5)]),e=12){super(),this.type="ShapeGeometry",this.parameters={shapes:t,curveSegments:e};const n=[],i=[],r=[],s=[];let a=0,o=0;if(!1===Array.isArray(t))l(t);else for(let e=0;e<t.length;e++)l(t[e]),this.addGroup(a,o,e),a+=o,o=0;function l(t){const a=i.length/3,l=t.extractPoints(e);let c=l.shape;const h=l.holes;!1===fl.isClockWise(c)&&(c=c.reverse());for(let t=0,e=h.length;t<e;t++){const e=h[t];!0===fl.isClockWise(e)&&(h[t]=e.reverse())}const u=fl.triangulateShape(c,h);for(let t=0,e=h.length;t<e;t++){const e=h[t];c=c.concat(e)}for(let t=0,e=c.length;t<e;t++){const e=c[t];i.push(e.x,e.y,0),r.push(0,0,1),s.push(e.x,e.y)}for(let t=0,e=u.length;t<e;t++){const e=u[t],i=e[0]+a,r=e[1]+a,s=e[2]+a;n.push(i,r,s),o+=3}}this.setIndex(n),this.setAttribute("position",new gn(i,3)),this.setAttribute("normal",new gn(r,3)),this.setAttribute("uv",new gn(s,2))}toJSON(){const t=super.toJSON();return function(t,e){if(e.shapes=[],Array.isArray(t))for(let n=0,i=t.length;n<i;n++){const i=t[n];e.shapes.push(i.uuid)}else e.shapes.push(t.uuid);return e}(this.parameters.shapes,t)}static fromJSON(t,e){const n=[];for(let i=0,r=t.shapes.length;i<r;i++){const r=e[t.shapes[i]];n.push(r)}return new Sl(n,t.curveSegments)}}class Tl extends Tn{constructor(t=1,e=32,n=16,i=0,r=2*Math.PI,s=0,a=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:s,thetaLength:a},e=Math.max(3,Math.floor(e)),n=Math.max(2,Math.floor(n));const o=Math.min(s+a,Math.PI);let l=0;const c=[],h=new Nt,u=new Nt,d=[],p=[],m=[],f=[];for(let d=0;d<=n;d++){const g=[],v=d/n;let y=0;0==d&&0==s?y=.5/e:d==n&&o==Math.PI&&(y=-.5/e);for(let n=0;n<=e;n++){const o=n/e;h.x=-t*Math.cos(i+o*r)*Math.sin(s+v*a),h.y=t*Math.cos(s+v*a),h.z=t*Math.sin(i+o*r)*Math.sin(s+v*a),p.push(h.x,h.y,h.z),u.copy(h).normalize(),m.push(u.x,u.y,u.z),f.push(o+y,1-v),g.push(l++)}c.push(g)}for(let t=0;t<n;t++)for(let i=0;i<e;i++){const e=c[t][i+1],r=c[t][i],a=c[t+1][i],l=c[t+1][i+1];(0!==t||s>0)&&d.push(e,r,l),(t!==n-1||o<Math.PI)&&d.push(r,a,l)}this.setIndex(d),this.setAttribute("position",new gn(p,3)),this.setAttribute("normal",new gn(m,3)),this.setAttribute("uv",new gn(f,2))}static fromJSON(t){return new Tl(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}}class El extends mo{constructor(t=1,e=0){super([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="TetrahedronGeometry",this.parameters={radius:t,detail:e}}static fromJSON(t){return new El(t.radius,t.detail)}}class Al extends Tn{constructor(t=1,e=.4,n=8,i=6,r=2*Math.PI){super(),this.type="TorusGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},n=Math.floor(n),i=Math.floor(i);const s=[],a=[],o=[],l=[],c=new Nt,h=new Nt,u=new Nt;for(let s=0;s<=n;s++)for(let d=0;d<=i;d++){const p=d/i*r,m=s/n*Math.PI*2;h.x=(t+e*Math.cos(m))*Math.cos(p),h.y=(t+e*Math.cos(m))*Math.sin(p),h.z=e*Math.sin(m),a.push(h.x,h.y,h.z),c.x=t*Math.cos(p),c.y=t*Math.sin(p),u.subVectors(h,c).normalize(),o.push(u.x,u.y,u.z),l.push(d/i),l.push(s/n)}for(let t=1;t<=n;t++)for(let e=1;e<=i;e++){const n=(i+1)*t+e-1,r=(i+1)*(t-1)+e-1,a=(i+1)*(t-1)+e,o=(i+1)*t+e;s.push(n,r,o),s.push(r,a,o)}this.setIndex(s),this.setAttribute("position",new gn(a,3)),this.setAttribute("normal",new gn(o,3)),this.setAttribute("uv",new gn(l,2))}static fromJSON(t){return new Al(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}}class Ll extends Tn{constructor(t=1,e=.4,n=64,i=8,r=2,s=3){super(),this.type="TorusKnotGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:s},n=Math.floor(n),i=Math.floor(i);const a=[],o=[],l=[],c=[],h=new Nt,u=new Nt,d=new Nt,p=new Nt,m=new Nt,f=new Nt,g=new Nt;for(let a=0;a<=n;++a){const y=a/n*r*Math.PI*2;v(y,r,s,t,d),v(y+.01,r,s,t,p),f.subVectors(p,d),g.addVectors(p,d),m.crossVectors(f,g),g.crossVectors(m,f),m.normalize(),g.normalize();for(let t=0;t<=i;++t){const r=t/i*Math.PI*2,s=-e*Math.cos(r),p=e*Math.sin(r);h.x=d.x+(s*g.x+p*m.x),h.y=d.y+(s*g.y+p*m.y),h.z=d.z+(s*g.z+p*m.z),o.push(h.x,h.y,h.z),u.subVectors(h,d).normalize(),l.push(u.x,u.y,u.z),c.push(a/n),c.push(t/i)}}for(let t=1;t<=n;t++)for(let e=1;e<=i;e++){const n=(i+1)*(t-1)+(e-1),r=(i+1)*t+(e-1),s=(i+1)*t+e,o=(i+1)*(t-1)+e;a.push(n,r,o),a.push(r,s,o)}function v(t,e,n,i,r){const s=Math.cos(t),a=Math.sin(t),o=n/e*t,l=Math.cos(o);r.x=i*(2+l)*.5*s,r.y=i*(2+l)*a*.5,r.z=i*Math.sin(o)*.5}this.setIndex(a),this.setAttribute("position",new gn(o,3)),this.setAttribute("normal",new gn(l,3)),this.setAttribute("uv",new gn(c,2))}static fromJSON(t){return new Ll(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}}class Rl extends Tn{constructor(t=new Oo(new Nt(-1,-1,0),new Nt(-1,1,0),new Nt(1,1,0)),e=64,n=1,i=8,r=!1){super(),this.type="TubeGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r};const s=t.computeFrenetFrames(e,r);this.tangents=s.tangents,this.normals=s.normals,this.binormals=s.binormals;const a=new Nt,o=new Nt,l=new vt;let c=new Nt;const h=[],u=[],d=[],p=[];function m(r){c=t.getPointAt(r/e,c);const l=s.normals[r],d=s.binormals[r];for(let t=0;t<=i;t++){const e=t/i*Math.PI*2,r=Math.sin(e),s=-Math.cos(e);o.x=s*l.x+r*d.x,o.y=s*l.y+r*d.y,o.z=s*l.z+r*d.z,o.normalize(),u.push(o.x,o.y,o.z),a.x=c.x+n*o.x,a.y=c.y+n*o.y,a.z=c.z+n*o.z,h.push(a.x,a.y,a.z)}}!function(){for(let t=0;t<e;t++)m(t);m(!1===r?e:0),function(){for(let t=0;t<=e;t++)for(let n=0;n<=i;n++)l.x=t/e,l.y=n/i,d.push(l.x,l.y)}(),function(){for(let t=1;t<=e;t++)for(let e=1;e<=i;e++){const n=(i+1)*(t-1)+(e-1),r=(i+1)*t+(e-1),s=(i+1)*t+e,a=(i+1)*(t-1)+e;p.push(n,r,a),p.push(r,s,a)}}()}(),this.setIndex(p),this.setAttribute("position",new gn(h,3)),this.setAttribute("normal",new gn(u,3)),this.setAttribute("uv",new gn(d,2))}toJSON(){const t=super.toJSON();return t.path=this.parameters.path.toJSON(),t}static fromJSON(t){return new Rl(new Ho[t.path.type]().fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}}class Cl extends Tn{constructor(t=null){if(super(),this.type="WireframeGeometry",this.parameters={geometry:t},null!==t){const e=[],n=new Set,i=new Nt,r=new Nt;if(null!==t.index){const s=t.attributes.position,a=t.index;let o=t.groups;0===o.length&&(o=[{start:0,count:a.count,materialIndex:0}]);for(let t=0,l=o.length;t<l;++t){const l=o[t],c=l.start;for(let t=c,o=c+l.count;t<o;t+=3)for(let o=0;o<3;o++){const l=a.getX(t+o),c=a.getX(t+(o+1)%3);i.fromBufferAttribute(s,l),r.fromBufferAttribute(s,c),!0===Pl(i,r,n)&&(e.push(i.x,i.y,i.z),e.push(r.x,r.y,r.z))}}}else{const s=t.attributes.position;for(let t=0,a=s.count/3;t<a;t++)for(let a=0;a<3;a++){const o=3*t+a,l=3*t+(a+1)%3;i.fromBufferAttribute(s,o),r.fromBufferAttribute(s,l),!0===Pl(i,r,n)&&(e.push(i.x,i.y,i.z),e.push(r.x,r.y,r.z))}}this.setAttribute("position",new gn(e,3))}}}function Pl(t,e,n){const i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`,r=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`;return!0!==n.has(i)&&!0!==n.has(r)&&(n.add(i,r),!0)}var Dl=Object.freeze({__proto__:null,BoxGeometry:jn,BoxBufferGeometry:jn,CircleGeometry:ho,CircleBufferGeometry:ho,ConeGeometry:po,ConeBufferGeometry:po,CylinderGeometry:uo,CylinderBufferGeometry:uo,DodecahedronGeometry:fo,DodecahedronBufferGeometry:fo,EdgesGeometry:_o,ExtrudeGeometry:yl,ExtrudeBufferGeometry:yl,IcosahedronGeometry:_l,IcosahedronBufferGeometry:_l,LatheGeometry:Ml,LatheBufferGeometry:Ml,OctahedronGeometry:bl,OctahedronBufferGeometry:bl,PlaneGeometry:ui,PlaneBufferGeometry:ui,PolyhedronGeometry:mo,PolyhedronBufferGeometry:mo,RingGeometry:wl,RingBufferGeometry:wl,ShapeGeometry:Sl,ShapeBufferGeometry:Sl,SphereGeometry:Tl,SphereBufferGeometry:Tl,TetrahedronGeometry:El,TetrahedronBufferGeometry:El,TorusGeometry:Al,TorusBufferGeometry:Al,TorusKnotGeometry:Ll,TorusKnotBufferGeometry:Ll,TubeGeometry:Rl,TubeBufferGeometry:Rl,WireframeGeometry:Cl});class Il extends Ye{constructor(t){super(),this.type="ShadowMaterial",this.color=new nn(0),this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this}}Il.prototype.isShadowMaterial=!0;class Nl extends Ye{constructor(t){super(),this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new nn(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(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.flatShading=!1,this.setValues(t)}copy(t){return super.copy(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.flatShading=t.flatShading,this}}Nl.prototype.isMeshStandardMaterial=!0;class zl extends Nl{constructor(t){super(),this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new vt(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return ht(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(t){this.ior=(1+.4*t)/(1-.4*t)}}),this.sheenColor=new nn(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=0,this.attenuationColor=new nn(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new nn(1,1,1),this.specularColorMap=null,this._sheen=0,this._clearcoat=0,this._transmission=0,this.setValues(t)}get sheen(){return this._sheen}set sheen(t){this._sheen>0!=t>0&&this.version++,this._sheen=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=t}get transmission(){return this._transmission}set transmission(t){this._transmission>0!=t>0&&this.version++,this._transmission=t}copy(t){return super.copy(t),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.ior=t.ior,this.sheen=t.sheen,this.sheenColor.copy(t.sheenColor),this.sheenColorMap=t.sheenColorMap,this.sheenRoughness=t.sheenRoughness,this.sheenRoughnessMap=t.sheenRoughnessMap,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationColor.copy(t.attenuationColor),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularColor.copy(t.specularColor),this.specularColorMap=t.specularColorMap,this}}zl.prototype.isMeshPhysicalMaterial=!0;class Bl extends Ye{constructor(t){super(),this.type="MeshPhongMaterial",this.color=new nn(16777215),this.specular=new nn(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(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.flatShading=t.flatShading,this}}Bl.prototype.isMeshPhongMaterial=!0;class Fl extends Ye{constructor(t){super(),this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new nn(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.gradientMap=t.gradientMap,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.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this}}Fl.prototype.isMeshToonMaterial=!0;class Ol extends Ye{constructor(t){super(),this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(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.flatShading=t.flatShading,this}}Ol.prototype.isMeshNormalMaterial=!0;class Ul extends Ye{constructor(t){super(),this.type="MeshLambertMaterial",this.color=new nn(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.setValues(t)}copy(t){return super.copy(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}}Ul.prototype.isMeshLambertMaterial=!0;class Hl extends Ye{constructor(t){super(),this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new nn(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(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.flatShading=t.flatShading,this}}Hl.prototype.isMeshMatcapMaterial=!0;class Gl extends Va{constructor(t){super(),this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}copy(t){return super.copy(t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this}}Gl.prototype.isLineDashedMaterial=!0;var kl=Object.freeze({__proto__:null,ShadowMaterial:Il,SpriteMaterial:oa,RawShaderMaterial:bi,ShaderMaterial:Yn,PointsMaterial:to,MeshPhysicalMaterial:zl,MeshStandardMaterial:Nl,MeshPhongMaterial:Bl,MeshToonMaterial:Fl,MeshNormalMaterial:Ol,MeshLambertMaterial:Ul,MeshDepthMaterial:Hs,MeshDistanceMaterial:Gs,MeshBasicMaterial:rn,MeshMatcapMaterial:Hl,LineDashedMaterial:Gl,LineBasicMaterial:Va,Material:Ye});const Vl={arraySlice:function(t,e,n){return Vl.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?t:"number"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){const e=t.length,n=new Array(e);for(let t=0;t!==e;++t)n[t]=t;return n.sort(function(e,n){return t[e]-t[n]}),n},sortedArray:function(t,e,n){const i=t.length,r=new t.constructor(i);for(let s=0,a=0;a!==i;++s){const i=n[s]*e;for(let n=0;n!==e;++n)r[a++]=t[i+n]}return r},flattenJSON:function(t,e,n,i){let r=1,s=t[0];for(;void 0!==s&&void 0===s[i];)s=t[r++];if(void 0===s)return;let a=s[i];if(void 0!==a)if(Array.isArray(a))do{a=s[i],void 0!==a&&(e.push(s.time),n.push.apply(n,a)),s=t[r++]}while(void 0!==s);else if(void 0!==a.toArray)do{a=s[i],void 0!==a&&(e.push(s.time),a.toArray(n,n.length)),s=t[r++]}while(void 0!==s);else do{a=s[i],void 0!==a&&(e.push(s.time),n.push(a)),s=t[r++]}while(void 0!==s)},subclip:function(t,e,n,i,r=30){const s=t.clone();s.name=e;const a=[];for(let t=0;t<s.tracks.length;++t){const e=s.tracks[t],o=e.getValueSize(),l=[],c=[];for(let t=0;t<e.times.length;++t){const s=e.times[t]*r;if(!(s<n||s>=i)){l.push(e.times[t]);for(let n=0;n<o;++n)c.push(e.values[t*o+n])}}0!==l.length&&(e.times=Vl.convertArray(l,e.times.constructor),e.values=Vl.convertArray(c,e.values.constructor),a.push(e))}s.tracks=a;let o=1/0;for(let t=0;t<s.tracks.length;++t)o>s.tracks[t].times[0]&&(o=s.tracks[t].times[0]);for(let t=0;t<s.tracks.length;++t)s.tracks[t].shift(-1*o);return s.resetDuration(),s},makeClipAdditive:function(t,e=0,n=t,i=30){i<=0&&(i=30);const r=n.tracks.length,s=e/i;for(let e=0;e<r;++e){const i=n.tracks[e],r=i.ValueTypeName;if("bool"===r||"string"===r)continue;const a=t.tracks.find(function(t){return t.name===i.name&&t.ValueTypeName===r});if(void 0===a)continue;let o=0;const l=i.getValueSize();i.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(o=l/3);let c=0;const h=a.getValueSize();a.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=h/3);const u=i.times.length-1;let d;if(s<=i.times[0]){const t=o,e=l-o;d=Vl.arraySlice(i.values,t,e)}else if(s>=i.times[u]){const t=u*l+o,e=t+l-o;d=Vl.arraySlice(i.values,t,e)}else{const t=i.createInterpolant(),e=o,n=l-o;t.evaluate(s),d=Vl.arraySlice(t.resultBuffer,e,n)}if("quaternion"===r){new It().fromArray(d).normalize().conjugate().toArray(d)}const p=a.times.length;for(let t=0;t<p;++t){const e=t*h+c;if("quaternion"===r)It.multiplyQuaternionsFlat(a.values,e,d,0,a.values,e);else{const t=h-2*c;for(let n=0;n<t;++n)a.values[e+n]-=d[n]}}}return t.blendMode=q,t}};class Wl{constructor(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,this.settings=null,this.DefaultSettings_={}}evaluate(t){const e=this.parameterPositions;let n=this._cachedIndex,i=e[n],r=e[n-1];t:{e:{let s;n:{i:if(!(t<i)){for(let s=n+2;;){if(void 0===i){if(t<r)break i;return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,t,r)}if(n===s)break;if(r=i,i=e[++n],t<i)break e}s=e.length;break n}if(t>=r)break t;{const a=e[1];t<a&&(n=2,r=a);for(let s=n-2;;){if(void 0===r)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(n===s)break;if(i=r,r=e[--n-1],t>=r)break e}s=n,n=0}}for(;n<s;){const i=n+s>>>1;t<e[i]?s=i:n=i+1}if(i=e[n],r=e[n-1],void 0===r)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(void 0===i)return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,r,t)}this._cachedIndex=n,this.intervalChanged_(n,r,i)}return this.interpolate_(n,r,t,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){const e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,r=t*i;for(let t=0;t!==i;++t)e[t]=n[r+t];return e}interpolate_(){throw new Error("call to abstract method")}intervalChanged_(){}}Wl.prototype.beforeStart_=Wl.prototype.copySampleValue_,Wl.prototype.afterEnd_=Wl.prototype.copySampleValue_;class jl extends Wl{constructor(t,e,n,i){super(t,e,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:k,endingEnd:k}}intervalChanged_(t,e,n){const i=this.parameterPositions;let r=t-2,s=t+1,a=i[r],o=i[s];if(void 0===a)switch(this.getSettings_().endingStart){case V:r=t,a=2*e-n;break;case W:r=i.length-2,a=e+i[r]-i[r+1];break;default:r=t,a=n;}if(void 0===o)switch(this.getSettings_().endingEnd){case V:s=t,o=2*n-e;break;case W:s=1,o=n+i[1]-i[0];break;default:s=t-1,o=e;}const l=.5*(n-e),c=this.valueSize;this._weightPrev=l/(e-a),this._weightNext=l/(o-n),this._offsetPrev=r*c,this._offsetNext=s*c}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=t*a,l=o-a,c=this._offsetPrev,h=this._offsetNext,u=this._weightPrev,d=this._weightNext,p=(n-e)/(i-e),m=p*p,f=m*p,g=-u*f+2*u*m-u*p,v=(1+u)*f+(-1.5-2*u)*m+(-.5+u)*p+1,y=(-1-d)*f+(1.5+d)*m+.5*p,x=d*f-d*m;for(let t=0;t!==a;++t)r[t]=g*s[c+t]+v*s[l+t]+y*s[o+t]+x*s[h+t];return r}}class ql extends Wl{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=t*a,l=o-a,c=(n-e)/(i-e),h=1-c;for(let t=0;t!==a;++t)r[t]=s[l+t]*h+s[o+t]*c;return r}}class Xl extends Wl{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t){return this.copySampleValue_(t-1)}}class Jl{constructor(t,e,n,i){if(void 0===t)throw new Error("THREE.KeyframeTrack: track name is undefined");if(void 0===e||0===e.length)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+t);this.name=t,this.times=Vl.convertArray(e,this.TimeBufferType),this.values=Vl.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}static toJSON(t){const e=t.constructor;let n;if(e.toJSON!==this.toJSON)n=e.toJSON(t);else{n={name:t.name,times:Vl.convertArray(t.times,Array),values:Vl.convertArray(t.values,Array)};const e=t.getInterpolation();e!==t.DefaultInterpolation&&(n.interpolation=e)}return n.type=t.ValueTypeName,n}InterpolantFactoryMethodDiscrete(t){return new Xl(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new ql(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new jl(this.times,this.values,this.getValueSize(),t)}setInterpolation(t){let e;switch(t){case U:e=this.InterpolantFactoryMethodDiscrete;break;case H:e=this.InterpolantFactoryMethodLinear;break;case G:e=this.InterpolantFactoryMethodSmooth;}if(void 0===e){const e="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw new Error(e);this.setInterpolation(this.DefaultInterpolation)}return console.warn("THREE.KeyframeTrack:",e),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return U;case this.InterpolantFactoryMethodLinear:return H;case this.InterpolantFactoryMethodSmooth:return G;}}getValueSize(){return this.values.length/this.times.length}shift(t){if(0!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]+=t}return this}scale(t){if(1!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]*=t}return this}trim(t,e){const n=this.times,i=n.length;let r=0,s=i-1;for(;r!==i&&n[r]<t;)++r;for(;-1!==s&&n[s]>e;)--s;if(++s,0!==r||s!==i){r>=s&&(s=Math.max(s,1),r=s-1);const t=this.getValueSize();this.times=Vl.arraySlice(n,r,s),this.values=Vl.arraySlice(this.values,r*t,s*t)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);const n=this.times,i=this.values,r=n.length;0===r&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);let s=null;for(let e=0;e!==r;e++){const i=n[e];if("number"==typeof i&&isNaN(i)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,e,i),t=!1;break}if(null!==s&&s>i){console.error("THREE.KeyframeTrack: Out of order keys.",this,e,i,s),t=!1;break}s=i}if(void 0!==i&&Vl.isTypedArray(i))for(let e=0,n=i.length;e!==n;++e){const n=i[e];if(isNaN(n)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,e,n),t=!1;break}}return t}optimize(){const t=Vl.arraySlice(this.times),e=Vl.arraySlice(this.values),n=this.getValueSize(),i=this.getInterpolation()===G,r=t.length-1;let s=1;for(let a=1;a<r;++a){let r=!1;const o=t[a];if(o!==t[a+1]&&(1!==a||o!==t[0]))if(i)r=!0;else{const t=a*n,i=t-n,s=t+n;for(let a=0;a!==n;++a){const n=e[t+a];if(n!==e[i+a]||n!==e[s+a]){r=!0;break}}}if(r){if(a!==s){t[s]=t[a];const i=a*n,r=s*n;for(let t=0;t!==n;++t)e[r+t]=e[i+t]}++s}}if(r>0){t[s]=t[r];for(let t=r*n,i=s*n,a=0;a!==n;++a)e[i+a]=e[t+a];++s}return s!==t.length?(this.times=Vl.arraySlice(t,0,s),this.values=Vl.arraySlice(e,0,s*n)):(this.times=t,this.values=e),this}clone(){const t=Vl.arraySlice(this.times,0),e=Vl.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}Jl.prototype.TimeBufferType=Float32Array,Jl.prototype.ValueBufferType=Float32Array,Jl.prototype.DefaultInterpolation=H;class Yl extends Jl{}Yl.prototype.ValueTypeName="bool",Yl.prototype.ValueBufferType=Array,Yl.prototype.DefaultInterpolation=U,Yl.prototype.InterpolantFactoryMethodLinear=void 0,Yl.prototype.InterpolantFactoryMethodSmooth=void 0;class Zl extends Jl{}Zl.prototype.ValueTypeName="color";class Ql extends Jl{}Ql.prototype.ValueTypeName="number";class Kl extends Wl{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=(n-e)/(i-e);let l=t*a;for(let t=l+a;l!==t;l+=4)It.slerpFlat(r,0,s,l-a,s,l,o);return r}}class $l extends Jl{InterpolantFactoryMethodLinear(t){return new Kl(this.times,this.values,this.getValueSize(),t)}}$l.prototype.ValueTypeName="quaternion",$l.prototype.DefaultInterpolation=H,$l.prototype.InterpolantFactoryMethodSmooth=void 0;class tc extends Jl{}tc.prototype.ValueTypeName="string",tc.prototype.ValueBufferType=Array,tc.prototype.DefaultInterpolation=U,tc.prototype.InterpolantFactoryMethodLinear=void 0,tc.prototype.InterpolantFactoryMethodSmooth=void 0;class ec extends Jl{}ec.prototype.ValueTypeName="vector";class nc{constructor(t,e=-1,n,i=2500){this.name=t,this.tracks=n,this.duration=e,this.blendMode=i,this.uuid=ct(),this.duration<0&&this.resetDuration()}static parse(t){const e=[],n=t.tracks,i=1/(t.fps||1);for(let t=0,r=n.length;t!==r;++t)e.push(ic(n[t]).scale(i));const r=new this(t.name,t.duration,e,t.blendMode);return r.uuid=t.uuid,r}static toJSON(t){const e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let t=0,i=n.length;t!==i;++t)e.push(Jl.toJSON(n[t]));return i}static CreateFromMorphTargetSequence(t,e,n,i){const r=e.length,s=[];for(let t=0;t<r;t++){let a=[],o=[];a.push((t+r-1)%r,t,(t+1)%r),o.push(0,1,0);const l=Vl.getKeyframeOrder(a);a=Vl.sortedArray(a,1,l),o=Vl.sortedArray(o,1,l),i||0!==a[0]||(a.push(r),o.push(o[0])),s.push(new Ql(".morphTargetInfluences["+e[t].name+"]",a,o).scale(1/n))}return new this(t,-1,s)}static findByName(t,e){let n=t;if(!Array.isArray(t)){const e=t;n=e.geometry&&e.geometry.animations||e.animations}for(let t=0;t<n.length;t++)if(n[t].name===e)return n[t];return null}static CreateClipsFromMorphTargetSequences(t,e,n){const i={},r=/^([\w-]*?)([\d]+)$/;for(let e=0,n=t.length;e<n;e++){const n=t[e],s=n.name.match(r);if(s&&s.length>1){const t=s[1];let e=i[t];e||(i[t]=e=[]),e.push(n)}}const s=[];for(const t in i)s.push(this.CreateFromMorphTargetSequence(t,i[t],e,n));return s}static parseAnimation(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const n=function(t,e,n,i,r){if(0!==n.length){const s=[],a=[];Vl.flattenJSON(n,s,a,i),0!==s.length&&r.push(new t(e,s,a))}},i=[],r=t.name||"default",s=t.fps||30,a=t.blendMode;let o=t.length||-1;const l=t.hierarchy||[];for(let t=0;t<l.length;t++){const r=l[t].keys;if(r&&0!==r.length)if(r[0].morphTargets){const t={};let e;for(e=0;e<r.length;e++)if(r[e].morphTargets)for(let n=0;n<r[e].morphTargets.length;n++)t[r[e].morphTargets[n]]=-1;for(const n in t){const t=[],s=[];for(let i=0;i!==r[e].morphTargets.length;++i){const i=r[e];t.push(i.time),s.push(i.morphTarget===n?1:0)}i.push(new Ql(".morphTargetInfluence["+n+"]",t,s))}o=t.length*(s||1)}else{const s=".bones["+e[t].name+"]";n(ec,s+".position",r,"pos",i),n($l,s+".quaternion",r,"rot",i),n(ec,s+".scale",r,"scl",i)}}if(0===i.length)return null;return new this(r,o,i,a)}resetDuration(){let t=0;for(let e=0,n=this.tracks.length;e!==n;++e){const n=this.tracks[e];t=Math.max(t,n.times[n.times.length-1])}return this.duration=t,this}trim(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this}validate(){let t=!0;for(let e=0;e<this.tracks.length;e++)t=t&&this.tracks[e].validate();return t}optimize(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].optimize();return this}clone(){const t=[];for(let e=0;e<this.tracks.length;e++)t.push(this.tracks[e].clone());return new this.constructor(this.name,this.duration,t,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}}function ic(t){if(void 0===t.type)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");const e=function(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return Ql;case"vector":case"vector2":case"vector3":case"vector4":return ec;case"color":return Zl;case"quaternion":return $l;case"bool":case"boolean":return Yl;case"string":return tc;}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}(t.type);if(void 0===t.times){const e=[],n=[];Vl.flattenJSON(t.keys,e,n,"value"),t.times=e,t.values=n}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}const rc={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={}}};class sc{constructor(t,e,n){const i=this;let r,s=!1,a=0,o=0;const l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){o++,!1===s&&void 0!==i.onStart&&i.onStart(t,a,o),s=!0},this.itemEnd=function(t){a++,void 0!==i.onProgress&&i.onProgress(t,a,o),a===o&&(s=!1,void 0!==i.onLoad&&i.onLoad())},this.itemError=function(t){void 0!==i.onError&&i.onError(t)},this.resolveURL=function(t){return r?r(t):t},this.setURLModifier=function(t){return r=t,this},this.addHandler=function(t,e){return l.push(t,e),this},this.removeHandler=function(t){const e=l.indexOf(t);return-1!==e&&l.splice(e,2),this},this.getHandler=function(t){for(let e=0,n=l.length;e<n;e+=2){const n=l[e],i=l[e+1];if(n.global&&(n.lastIndex=0),n.test(t))return i}return null}}}const ac=new sc;class oc{constructor(t){this.manager=void 0!==t?t:ac,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(t,e){const n=this;return new Promise(function(i,r){n.load(t,i,e,r)})}parse(){}setCrossOrigin(t){return this.crossOrigin=t,this}setWithCredentials(t){return this.withCredentials=t,this}setPath(t){return this.path=t,this}setResourcePath(t){return this.resourcePath=t,this}setRequestHeader(t){return this.requestHeader=t,this}}const lc={};class cc extends oc{constructor(t){super(t)}load(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const r=rc.get(t);if(void 0!==r)return this.manager.itemStart(t),setTimeout(()=>{e&&e(r),this.manager.itemEnd(t)},0),r;if(void 0!==lc[t])return void lc[t].push({onLoad:e,onProgress:n,onError:i});lc[t]=[],lc[t].push({onLoad:e,onProgress:n,onError:i});const s=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"});fetch(s).then(e=>{if(200===e.status||0===e.status){0===e.status&&console.warn("THREE.FileLoader: HTTP Status 0 received.");const n=lc[t],i=e.body.getReader(),r=e.headers.get("Content-Length"),s=r?parseInt(r):0,a=0!==s;let o=0;return new ReadableStream({start(t){!function e(){i.read().then(({done:i,value:r})=>{if(i)t.close();else{o+=r.byteLength;const i=new ProgressEvent("progress",{lengthComputable:a,loaded:o,total:s});for(let t=0,e=n.length;t<e;t++){const e=n[t];e.onProgress&&e.onProgress(i)}t.enqueue(r),e()}})}()}})}throw Error(`fetch for "${e.url}" responded with ${e.status}: ${e.statusText}`)}).then(t=>{const e=new Response(t);switch(this.responseType){case"arraybuffer":return e.arrayBuffer();case"blob":return e.blob();case"document":return e.text().then(t=>new DOMParser().parseFromString(t,this.mimeType));case"json":return e.json();default:return e.text();}}).then(e=>{rc.add(t,e);const n=lc[t];delete lc[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onLoad&&i.onLoad(e)}this.manager.itemEnd(t)}).catch(e=>{const n=lc[t];delete lc[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onError&&i.onError(e)}this.manager.itemError(t),this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class hc extends oc{constructor(t){super(t)}load(t,e,n,i){void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const r=this,s=rc.get(t);if(void 0!==s)return r.manager.itemStart(t),setTimeout(function(){e&&e(s),r.manager.itemEnd(t)},0),s;const a=bt("img");function o(){c(),rc.add(t,this),e&&e(this),r.manager.itemEnd(t)}function l(e){c(),i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)}function c(){a.removeEventListener("load",o,!1),a.removeEventListener("error",l,!1)}return a.addEventListener("load",o,!1),a.addEventListener("error",l,!1),"data:"!==t.substr(0,5)&&void 0!==this.crossOrigin&&(a.crossOrigin=this.crossOrigin),r.manager.itemStart(t),a.src=t,a}}class uc extends oc{constructor(t){super(t)}load(t,e,n,i){const r=new ti,s=new hc(this.manager);s.setCrossOrigin(this.crossOrigin),s.setPath(this.path);let a=0;function o(n){s.load(t[n],function(t){r.images[n]=t,a++,6===a&&(r.needsUpdate=!0,e&&e(r))},void 0,i)}for(let e=0;e<t.length;++e)o(e);return r}}class dc extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new Ia,a=new cc(this.manager);return a.setResponseType("arraybuffer"),a.setRequestHeader(this.requestHeader),a.setPath(this.path),a.setWithCredentials(r.withCredentials),a.load(t,function(t){const n=r.parse(t);n&&(void 0!==n.image?s.image=n.image:void 0!==n.data&&(s.image.width=n.width,s.image.height=n.height,s.image.data=n.data),s.wrapS=void 0!==n.wrapS?n.wrapS:u,s.wrapT=void 0!==n.wrapT?n.wrapT:u,s.magFilter=void 0!==n.magFilter?n.magFilter:g,s.minFilter=void 0!==n.minFilter?n.minFilter:g,s.anisotropy=void 0!==n.anisotropy?n.anisotropy:1,void 0!==n.encoding&&(s.encoding=n.encoding),void 0!==n.flipY&&(s.flipY=n.flipY),void 0!==n.format&&(s.format=n.format),void 0!==n.type&&(s.type=n.type),void 0!==n.mipmaps&&(s.mipmaps=n.mipmaps,s.minFilter=y),1===n.mipmapCount&&(s.minFilter=g),void 0!==n.generateMipmaps&&(s.generateMipmaps=n.generateMipmaps),s.needsUpdate=!0,e&&e(s,n))},n,i),s}}class pc extends oc{constructor(t){super(t)}load(t,e,n,i){const r=new At,s=new hc(this.manager);return s.setCrossOrigin(this.crossOrigin),s.setPath(this.path),s.load(t,function(t){r.image=t,r.needsUpdate=!0,void 0!==e&&e(r)},n,i),r}}class mc extends Be{constructor(t,e=1){super(),this.type="Light",this.color=new nn(t),this.intensity=e}dispose(){}copy(t){return super.copy(t),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(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}}mc.prototype.isLight=!0;class fc extends mc{constructor(t,e,n){super(t,n),this.type="HemisphereLight",this.position.copy(Be.DefaultUp),this.updateMatrix(),this.groundColor=new nn(e)}copy(t){return mc.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}fc.prototype.isHemisphereLight=!0;const gc=new ue,vc=new Nt,yc=new Nt;class xc{constructor(t){this.camera=t,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new vt(512,512),this.map=null,this.mapPass=null,this.matrix=new ue,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new li,this._frameExtents=new vt(1,1),this._viewportCount=1,this._viewports=[new Rt(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,n=this.matrix;vc.setFromMatrixPosition(t.matrixWorld),e.position.copy(vc),yc.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(yc),e.updateMatrixWorld(),gc.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(gc),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(e.projectionMatrix),n.multiply(e.matrixWorldInverse)}getViewport(t){return this._viewports[t]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){const t={};return 0!==this.bias&&(t.bias=this.bias),0!==this.normalBias&&(t.normalBias=this.normalBias),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}}class _c extends xc{constructor(){super(new Qn(50,1,.5,500)),this.focus=1}updateMatrices(t){const e=this.camera,n=2*lt*t.angle*this.focus,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()),super.updateMatrices(t)}copy(t){return super.copy(t),this.focus=t.focus,this}}_c.prototype.isSpotLightShadow=!0;class Mc extends mc{constructor(t,e,n=0,i=Math.PI/3,r=0,s=1){super(t,e),this.type="SpotLight",this.position.copy(Be.DefaultUp),this.updateMatrix(),this.target=new Be,this.distance=n,this.angle=i,this.penumbra=r,this.decay=s,this.shadow=new _c}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){this.shadow.dispose()}copy(t){return super.copy(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}}Mc.prototype.isSpotLight=!0;const bc=new ue,wc=new Nt,Sc=new Nt;class Tc extends xc{constructor(){super(new Qn(90,1,.5,500)),this._frameExtents=new vt(4,2),this._viewportCount=6,this._viewports=[new Rt(2,1,1,1),new Rt(0,1,1,1),new Rt(3,1,1,1),new Rt(1,1,1,1),new Rt(3,0,1,1),new Rt(1,0,1,1)],this._cubeDirections=[new Nt(1,0,0),new Nt(-1,0,0),new Nt(0,0,1),new Nt(0,0,-1),new Nt(0,1,0),new Nt(0,-1,0)],this._cubeUps=[new Nt(0,1,0),new Nt(0,1,0),new Nt(0,1,0),new Nt(0,1,0),new Nt(0,0,1),new Nt(0,0,-1)]}updateMatrices(t,e=0){const n=this.camera,i=this.matrix,r=t.distance||n.far;r!==n.far&&(n.far=r,n.updateProjectionMatrix()),wc.setFromMatrixPosition(t.matrixWorld),n.position.copy(wc),Sc.copy(n.position),Sc.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(Sc),n.updateMatrixWorld(),i.makeTranslation(-wc.x,-wc.y,-wc.z),bc.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(bc)}}Tc.prototype.isPointLightShadow=!0;class Ec extends mc{constructor(t,e,n=0,i=1){super(t,e),this.type="PointLight",this.distance=n,this.decay=i,this.shadow=new Tc}get power(){return 4*this.intensity*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}Ec.prototype.isPointLight=!0;class Ac extends xc{constructor(){super(new Mi(-5,5,5,-5,.5,500))}}Ac.prototype.isDirectionalLightShadow=!0;class Lc extends mc{constructor(t,e){super(t,e),this.type="DirectionalLight",this.position.copy(Be.DefaultUp),this.updateMatrix(),this.target=new Be,this.shadow=new Ac}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}Lc.prototype.isDirectionalLight=!0;class Rc extends mc{constructor(t,e){super(t,e),this.type="AmbientLight"}}Rc.prototype.isAmbientLight=!0;class Cc extends mc{constructor(t,e,n=10,i=10){super(t,e),this.type="RectAreaLight",this.width=n,this.height=i}get power(){return this.intensity*this.width*this.height*Math.PI}set power(t){this.intensity=t/(this.width*this.height*Math.PI)}copy(t){return super.copy(t),this.width=t.width,this.height=t.height,this}toJSON(t){const e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}}Cc.prototype.isRectAreaLight=!0;class Pc{constructor(){this.coefficients=[];for(let t=0;t<9;t++)this.coefficients.push(new Nt)}set(t){for(let e=0;e<9;e++)this.coefficients[e].copy(t[e]);return this}zero(){for(let t=0;t<9;t++)this.coefficients[t].set(0,0,0);return this}getAt(t,e){const n=t.x,i=t.y,r=t.z,s=this.coefficients;return e.copy(s[0]).multiplyScalar(.282095),e.addScaledVector(s[1],.488603*i),e.addScaledVector(s[2],.488603*r),e.addScaledVector(s[3],.488603*n),e.addScaledVector(s[4],n*i*1.092548),e.addScaledVector(s[5],i*r*1.092548),e.addScaledVector(s[6],.315392*(3*r*r-1)),e.addScaledVector(s[7],n*r*1.092548),e.addScaledVector(s[8],.546274*(n*n-i*i)),e}getIrradianceAt(t,e){const n=t.x,i=t.y,r=t.z,s=this.coefficients;return e.copy(s[0]).multiplyScalar(.886227),e.addScaledVector(s[1],1.023328*i),e.addScaledVector(s[2],1.023328*r),e.addScaledVector(s[3],1.023328*n),e.addScaledVector(s[4],.858086*n*i),e.addScaledVector(s[5],.858086*i*r),e.addScaledVector(s[6],.743125*r*r-.247708),e.addScaledVector(s[7],.858086*n*r),e.addScaledVector(s[8],.429043*(n*n-i*i)),e}add(t){for(let e=0;e<9;e++)this.coefficients[e].add(t.coefficients[e]);return this}addScaledSH(t,e){for(let n=0;n<9;n++)this.coefficients[n].addScaledVector(t.coefficients[n],e);return this}scale(t){for(let e=0;e<9;e++)this.coefficients[e].multiplyScalar(t);return this}lerp(t,e){for(let n=0;n<9;n++)this.coefficients[n].lerp(t.coefficients[n],e);return this}equals(t){for(let e=0;e<9;e++)if(!this.coefficients[e].equals(t.coefficients[e]))return!1;return!0}copy(t){return this.set(t.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(t,e=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].fromArray(t,e+3*i);return this}toArray(t=[],e=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].toArray(t,e+3*i);return t}static getBasisAt(t,e){const n=t.x,i=t.y,r=t.z;e[0]=.282095,e[1]=.488603*i,e[2]=.488603*r,e[3]=.488603*n,e[4]=1.092548*n*i,e[5]=1.092548*i*r,e[6]=.315392*(3*r*r-1),e[7]=1.092548*n*r,e[8]=.546274*(n*n-i*i)}}Pc.prototype.isSphericalHarmonics3=!0;class Dc extends mc{constructor(t=new Pc,e=1){super(void 0,e),this.sh=t}copy(t){return super.copy(t),this.sh.copy(t.sh),this}fromJSON(t){return this.intensity=t.intensity,this.sh.fromArray(t.sh),this}toJSON(t){const e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}}Dc.prototype.isLightProbe=!0;class Ic extends oc{constructor(t){super(t),this.textures={}}load(t,e,n,i){const r=this,s=new cc(r.manager);s.setPath(r.path),s.setRequestHeader(r.requestHeader),s.setWithCredentials(r.withCredentials),s.load(t,function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}},n,i)}parse(t){const e=this.textures;function n(t){return void 0===e[t]&&console.warn("THREE.MaterialLoader: Undefined texture",t),e[t]}const i=new kl[t.type];if(void 0!==t.uuid&&(i.uuid=t.uuid),void 0!==t.name&&(i.name=t.name),void 0!==t.color&&void 0!==i.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.sheen&&(i.sheen=t.sheen),void 0!==t.sheenColor&&(i.sheenColor=new nn().setHex(t.sheenColor)),void 0!==t.sheenRoughness&&(i.sheenRoughness=t.sheenRoughness),void 0!==t.emissive&&void 0!==i.emissive&&i.emissive.setHex(t.emissive),void 0!==t.specular&&void 0!==i.specular&&i.specular.setHex(t.specular),void 0!==t.specularIntensity&&(i.specularIntensity=t.specularIntensity),void 0!==t.specularColor&&void 0!==i.specularColor&&i.specularColor.setHex(t.specularColor),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.transmission&&(i.transmission=t.transmission),void 0!==t.thickness&&(i.thickness=t.thickness),void 0!==t.attenuationDistance&&(i.attenuationDistance=t.attenuationDistance),void 0!==t.attenuationColor&&void 0!==i.attenuationColor&&i.attenuationColor.setHex(t.attenuationColor),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.shadowSide&&(i.shadowSide=t.shadowSide),void 0!==t.opacity&&(i.opacity=t.opacity),void 0!==t.format&&(i.format=t.format),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.stencilWrite&&(i.stencilWrite=t.stencilWrite),void 0!==t.stencilWriteMask&&(i.stencilWriteMask=t.stencilWriteMask),void 0!==t.stencilFunc&&(i.stencilFunc=t.stencilFunc),void 0!==t.stencilRef&&(i.stencilRef=t.stencilRef),void 0!==t.stencilFuncMask&&(i.stencilFuncMask=t.stencilFuncMask),void 0!==t.stencilFail&&(i.stencilFail=t.stencilFail),void 0!==t.stencilZFail&&(i.stencilZFail=t.stencilZFail),void 0!==t.stencilZPass&&(i.stencilZPass=t.stencilZPass),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.dithering&&(i.dithering=t.dithering),void 0!==t.alphaToCoverage&&(i.alphaToCoverage=t.alphaToCoverage),void 0!==t.premultipliedAlpha&&(i.premultipliedAlpha=t.premultipliedAlpha),void 0!==t.visible&&(i.visible=t.visible),void 0!==t.toneMapped&&(i.toneMapped=t.toneMapped),void 0!==t.userData&&(i.userData=t.userData),void 0!==t.vertexColors&&("number"==typeof t.vertexColors?i.vertexColors=t.vertexColors>0:i.vertexColors=t.vertexColors),void 0!==t.uniforms)for(const e in t.uniforms){const r=t.uniforms[e];switch(i.uniforms[e]={},r.type){case"t":i.uniforms[e].value=n(r.value);break;case"c":i.uniforms[e].value=new nn().setHex(r.value);break;case"v2":i.uniforms[e].value=new vt().fromArray(r.value);break;case"v3":i.uniforms[e].value=new Nt().fromArray(r.value);break;case"v4":i.uniforms[e].value=new Rt().fromArray(r.value);break;case"m3":i.uniforms[e].value=new yt().fromArray(r.value);break;case"m4":i.uniforms[e].value=new ue().fromArray(r.value);break;default:i.uniforms[e].value=r.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.extensions)for(const e in t.extensions)i.extensions[e]=t.extensions[e];if(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.matcap&&(i.matcap=n(t.matcap)),void 0!==t.alphaMap&&(i.alphaMap=n(t.alphaMap)),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){let e=t.normalScale;!1===Array.isArray(e)&&(e=[e,e]),i.normalScale=new vt().fromArray(e)}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.specularIntensityMap&&(i.specularIntensityMap=n(t.specularIntensityMap)),void 0!==t.specularColorMap&&(i.specularColorMap=n(t.specularColorMap)),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.refractionRatio&&(i.refractionRatio=t.refractionRatio),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)),void 0!==t.clearcoatMap&&(i.clearcoatMap=n(t.clearcoatMap)),void 0!==t.clearcoatRoughnessMap&&(i.clearcoatRoughnessMap=n(t.clearcoatRoughnessMap)),void 0!==t.clearcoatNormalMap&&(i.clearcoatNormalMap=n(t.clearcoatNormalMap)),void 0!==t.clearcoatNormalScale&&(i.clearcoatNormalScale=new vt().fromArray(t.clearcoatNormalScale)),void 0!==t.transmissionMap&&(i.transmissionMap=n(t.transmissionMap)),void 0!==t.thicknessMap&&(i.thicknessMap=n(t.thicknessMap)),void 0!==t.sheenColorMap&&(i.sheenColorMap=n(t.sheenColorMap)),void 0!==t.sheenRoughnessMap&&(i.sheenRoughnessMap=n(t.sheenRoughnessMap)),i}setTextures(t){return this.textures=t,this}}class Nc{static decodeText(t){if("undefined"!=typeof TextDecoder)return new TextDecoder().decode(t);let e="";for(let n=0,i=t.length;n<i;n++)e+=String.fromCharCode(t[n]);try{return decodeURIComponent(escape(e))}catch(t){return e}}static extractUrlBase(t){const e=t.lastIndexOf("/");return-1===e?"./":t.substr(0,e+1)}static resolveURL(t,e){return"string"!=typeof t||""===t?"":(/^https?:\/\//i.test(e)&&/^\//.test(t)&&(e=e.replace(/(^https?:\/\/[^\/]+).*/i,"$1")),/^(https?:)?\/\//i.test(t)||/^data:.*,.*$/i.test(t)||/^blob:.*$/i.test(t)?t:e+t)}}class zc extends Tn{constructor(){super(),this.type="InstancedBufferGeometry",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}clone(){return new this.constructor().copy(this)}toJSON(){const t=super.toJSON(this);return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}}zc.prototype.isInstancedBufferGeometry=!0;class Bc extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cc(r.manager);s.setPath(r.path),s.setRequestHeader(r.requestHeader),s.setWithCredentials(r.withCredentials),s.load(t,function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}},n,i)}parse(t){const e={},n={};function i(t,i){if(void 0!==e[i])return e[i];const r=t.interleavedBuffers[i],s=function(t,e){if(void 0!==n[e])return n[e];const i=t.arrayBuffers[e],r=new Uint32Array(i).buffer;return n[e]=r,r}(t,r.buffer),a=Mt(r.type,s),o=new ra(a,r.stride);return o.uuid=r.uuid,e[i]=o,o}const r=t.isInstancedBufferGeometry?new zc:new Tn,s=t.data.index;if(void 0!==s){const t=Mt(s.type,s.array);r.setIndex(new on(t,1))}const a=t.data.attributes;for(const e in a){const n=a[e];let s;if(n.isInterleavedBufferAttribute){const e=i(t.data,n.data);s=new aa(e,n.itemSize,n.offset,n.normalized)}else{const t=Mt(n.type,n.array);s=new(n.isInstancedBufferAttribute?Fa:on)(t,n.itemSize,n.normalized)}void 0!==n.name&&(s.name=n.name),void 0!==n.usage&&s.setUsage(n.usage),void 0!==n.updateRange&&(s.updateRange.offset=n.updateRange.offset,s.updateRange.count=n.updateRange.count),r.setAttribute(e,s)}const o=t.data.morphAttributes;if(o)for(const e in o){const n=o[e],s=[];for(let e=0,r=n.length;e<r;e++){const r=n[e];let a;if(r.isInterleavedBufferAttribute){const e=i(t.data,r.data);a=new aa(e,r.itemSize,r.offset,r.normalized)}else{const t=Mt(r.type,r.array);a=new on(t,r.itemSize,r.normalized)}void 0!==r.name&&(a.name=r.name),s.push(a)}r.morphAttributes[e]=s}t.data.morphTargetsRelative&&(r.morphTargetsRelative=!0);const l=t.data.groups||t.data.drawcalls||t.data.offsets;if(void 0!==l)for(let t=0,e=l.length;t!==e;++t){const e=l[t];r.addGroup(e.start,e.count,e.materialIndex)}const c=t.data.boundingSphere;if(void 0!==c){const t=new Nt;void 0!==c.center&&t.fromArray(c.center),r.boundingSphere=new ne(t,c.radius)}return t.name&&(r.name=t.name),t.userData&&(r.userData=t.userData),r}}const Fc={UVMapping:i,CubeReflectionMapping:r,CubeRefractionMapping:s,EquirectangularReflectionMapping:a,EquirectangularRefractionMapping:o,CubeUVReflectionMapping:l,CubeUVRefractionMapping:c},Oc={RepeatWrapping:h,ClampToEdgeWrapping:u,MirroredRepeatWrapping:d},Uc={NearestFilter:p,NearestMipmapNearestFilter:m,NearestMipmapLinearFilter:f,LinearFilter:g,LinearMipmapNearestFilter:v,LinearMipmapLinearFilter:y};class Hc extends oc{constructor(t){super(t),"undefined"==typeof createImageBitmap&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),"undefined"==typeof fetch&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(t){return this.options=t,this}load(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const r=this,s=rc.get(t);if(void 0!==s)return r.manager.itemStart(t),setTimeout(function(){e&&e(s),r.manager.itemEnd(t)},0),s;const a={};a.credentials="anonymous"===this.crossOrigin?"same-origin":"include",a.headers=this.requestHeader,fetch(t,a).then(function(t){return t.blob()}).then(function(t){return createImageBitmap(t,Object.assign(r.options,{colorSpaceConversion:"none"}))}).then(function(n){rc.add(t,n),e&&e(n),r.manager.itemEnd(t)}).catch(function(e){i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)}),r.manager.itemStart(t)}}let Gc;Hc.prototype.isImageBitmapLoader=!0;const kc={getContext:function(){return void 0===Gc&&(Gc=new(window.AudioContext||window.webkitAudioContext)),Gc},setContext:function(t){Gc=t}};class Vc extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cc(this.manager);s.setResponseType("arraybuffer"),s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(t,function(n){try{const t=n.slice(0);kc.getContext().decodeAudioData(t,function(t){e(t)})}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}},n,i)}}class Wc extends Dc{constructor(t,e,n=1){super(void 0,n);const i=new nn().set(t),r=new nn().set(e),s=new Nt(i.r,i.g,i.b),a=new Nt(r.r,r.g,r.b),o=Math.sqrt(Math.PI),l=o*Math.sqrt(.75);this.sh.coefficients[0].copy(s).add(a).multiplyScalar(o),this.sh.coefficients[1].copy(s).sub(a).multiplyScalar(l)}}Wc.prototype.isHemisphereLightProbe=!0;class jc extends Dc{constructor(t,e=1){super(void 0,e);const n=new nn().set(t);this.sh.coefficients[0].set(n.r,n.g,n.b).multiplyScalar(2*Math.sqrt(Math.PI))}}jc.prototype.isAmbientLightProbe=!0;const qc=new ue,Xc=new ue,Jc=new ue;class Yc{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Zc(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const e=Zc();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function Zc(){return("undefined"==typeof performance?Date:performance).now()}const Qc=new Nt,Kc=new It,$c=new Nt,th=new Nt;class eh extends Be{constructor(t){super(),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.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(t){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=t,this.connect(),this}setMediaElementSource(t){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(t),this.connect(),this}setMediaStreamSource(t){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(t),this.connect(),this}setBuffer(t){return this.buffer=t,this.sourceType="buffer",this.autoplay&&this.play(),this}play(t=0){if(!0===this.isPlaying)return void console.warn("THREE.Audio: Audio is already playing.");if(!1===this.hasPlaybackControl)return void console.warn("THREE.Audio: this Audio has no playback control.");this._startedAt=this.context.currentTime+t;const e=this.context.createBufferSource();return e.buffer=this.buffer,e.loop=this.loop,e.loopStart=this.loopStart,e.loopEnd=this.loopEnd,e.onended=this.onEnded.bind(this),e.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=e,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(!1!==this.hasPlaybackControl)return!0===this.isPlaying&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this;console.warn("THREE.Audio: this Audio has no playback control.")}stop(){if(!1!==this.hasPlaybackControl)return this._progress=0,this.source.stop(),this.source.onended=null,this.isPlaying=!1,this;console.warn("THREE.Audio: this Audio has no playback control.")}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let 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._connected=!0,this}disconnect(){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let 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._connected=!1,this}getFilters(){return this.filters}setFilters(t){return t||(t=[]),!0===this._connected?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){if(this.detune=t,void 0!==this.source.detune)return!0===this.isPlaying&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(t){return this.setFilters(t?[t]:[])}setPlaybackRate(t){if(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this;console.warn("THREE.Audio: this Audio has no playback control.")}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return!1===this.hasPlaybackControl?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop}setLoop(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.")}setLoopStart(t){return this.loopStart=t,this}setLoopEnd(t){return this.loopEnd=t,this}getVolume(){return this.gain.gain.value}setVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}}const nh=new Nt,ih=new It,rh=new Nt,sh=new Nt;class ah{constructor(t,e=2048){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=e,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let t=0;const e=this.getFrequencyData();for(let n=0;n<e.length;n++)t+=e[n];return t/e.length}}class oh{constructor(t,e,n){let i,r,s;switch(this.binding=t,this.valueSize=n,e){case"quaternion":i=this._slerp,r=this._slerpAdditive,s=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(6*n),this._workIndex=5;break;case"string":case"bool":i=this._select,r=this._select,s=this._setAdditiveIdentityOther,this.buffer=new Array(5*n);break;default:i=this._lerp,r=this._lerpAdditive,s=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(5*n);}this._mixBufferRegion=i,this._mixBufferRegionAdditive=r,this._setIdentity=s,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){const n=this.buffer,i=this.valueSize,r=t*i+i;let s=this.cumulativeWeight;if(0===s){for(let t=0;t!==i;++t)n[r+t]=n[t];s=e}else{s+=e;const t=e/s;this._mixBufferRegion(n,r,0,t,i)}this.cumulativeWeight=s}accumulateAdditive(t){const e=this.buffer,n=this.valueSize,i=n*this._addIndex;0===this.cumulativeWeightAdditive&&this._setIdentity(),this._mixBufferRegionAdditive(e,i,0,t,n),this.cumulativeWeightAdditive+=t}apply(t){const e=this.valueSize,n=this.buffer,i=t*e+e,r=this.cumulativeWeight,s=this.cumulativeWeightAdditive,a=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,r<1){const t=e*this._origIndex;this._mixBufferRegion(n,i,t,1-r,e)}s>0&&this._mixBufferRegionAdditive(n,i,this._addIndex*e,1,e);for(let t=e,r=e+e;t!==r;++t)if(n[t]!==n[t+e]){a.setValue(n,i);break}}saveOriginalState(){const t=this.binding,e=this.buffer,n=this.valueSize,i=n*this._origIndex;t.getValue(e,i);for(let t=n,r=i;t!==r;++t)e[t]=e[i+t%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const t=3*this.valueSize;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){const t=this._addIndex*this.valueSize,e=t+this.valueSize;for(let n=t;n<e;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){const t=this._origIndex*this.valueSize,e=this._addIndex*this.valueSize;for(let n=0;n<this.valueSize;n++)this.buffer[e+n]=this.buffer[t+n]}_select(t,e,n,i,r){if(i>=.5)for(let i=0;i!==r;++i)t[e+i]=t[n+i]}_slerp(t,e,n,i){It.slerpFlat(t,e,t,e,t,n,i)}_slerpAdditive(t,e,n,i,r){const s=this._workIndex*r;It.multiplyQuaternionsFlat(t,s,t,e,t,n),It.slerpFlat(t,e,t,e,t,s,i)}_lerp(t,e,n,i,r){const s=1-i;for(let a=0;a!==r;++a){const r=e+a;t[r]=t[r]*s+t[n+a]*i}}_lerpAdditive(t,e,n,i,r){for(let s=0;s!==r;++s){const r=e+s;t[r]=t[r]+t[n+s]*i}}}const lh="\\[\\]\\.:\\/",ch=new RegExp("[\\[\\]\\.:\\/]","g"),hh="[^\\[\\]\\.:\\/]",uh="[^"+lh.replace("\\.","")+"]",dh=/((?:WC+[\/:])*)/.source.replace("WC",hh),ph=/(WCOD+)?/.source.replace("WCOD",uh),mh=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",hh),fh=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",hh),gh=new RegExp("^"+dh+ph+mh+fh+"$"),vh=["material","materials","bones"];class yh{constructor(t,e,n){this.path=e,this.parsedPath=n||yh.parseTrackName(e),this.node=yh.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,n){return t&&t.isAnimationObjectGroup?new yh.Composite(t,e,n):new yh(t,e,n)}static sanitizeNodeName(t){return t.replace(/\s/g,"_").replace(ch,"")}static parseTrackName(t){const e=gh.exec(t);if(!e)throw new Error("PropertyBinding: Cannot parse trackName: "+t);const 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){const t=n.nodeName.substring(i+1);-1!==vh.indexOf(t)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=t)}if(null===n.propertyName||0===n.propertyName.length)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+t);return n}static findNode(t,e){if(!e||""===e||"."===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){const n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){const n=function(t){for(let i=0;i<t.length;i++){const r=t[i];if(r.name===e||r.uuid===e)return r;const s=n(r.children);if(s)return s}return null},i=n(t.children);if(i)return i}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(t,e){t[e]=this.targetObject[this.propertyName]}_getValue_array(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)t[e++]=n[i]}_getValue_arrayElement(t,e){t[e]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(t,e){this.resolvedProperty.toArray(t,e)}_setValue_direct(t,e){this.targetObject[this.propertyName]=t[e]}_setValue_direct_setNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++]}_setValue_array_setNeedsUpdate(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(t,e){this.resolvedProperty[this.propertyIndex]=t[e]}_setValue_arrayElement_setNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(t,e){this.resolvedProperty.fromArray(t,e)}_setValue_fromArray_setNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(t,e){this.bind(),this.getValue(t,e)}_setValue_unbound(t,e){this.bind(),this.setValue(t,e)}bind(){let t=this.node;const e=this.parsedPath,n=e.objectName,i=e.propertyName;let r=e.propertyIndex;if(t||(t=yh.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t)return void console.error("THREE.PropertyBinding: Trying to update node for track: "+this.path+" but it wasn't found.");if(n){let i=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(let e=0;e<t.length;e++)if(t[e].name===i){i=e;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!==i){if(void 0===t[i])return void console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,t);t=t[i]}}const s=t[i];if(void 0===s){const n=e.nodeName;return void console.error("THREE.PropertyBinding: Trying to update property for track: "+n+"."+i+" but it wasn't found.",t)}let a=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?a=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&&(a=this.Versioning.MatrixWorldNeedsUpdate);let o=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)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences on THREE.Geometry. Use THREE.BufferGeometry instead.",this);if(!t.geometry.morphAttributes)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);void 0!==t.morphTargetDictionary[r]&&(r=t.morphTargetDictionary[r])}o=this.BindingType.ArrayElement,this.resolvedProperty=s,this.propertyIndex=r}else void 0!==s.fromArray&&void 0!==s.toArray?(o=this.BindingType.HasFromToArray,this.resolvedProperty=s):Array.isArray(s)?(o=this.BindingType.EntireArray,this.resolvedProperty=s):this.propertyName=i;this.getValue=this.GetterByBindingType[o],this.setValue=this.SetterByBindingTypeAndVersioning[o][a]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}yh.Composite=class{constructor(t,e,n){const i=n||yh.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}getValue(t,e){this.bind();const n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&&i.getValue(t,e)}setValue(t,e){const n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,r=n.length;i!==r;++i)n[i].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}},yh.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},yh.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},yh.prototype.GetterByBindingType=[yh.prototype._getValue_direct,yh.prototype._getValue_array,yh.prototype._getValue_arrayElement,yh.prototype._getValue_toArray],yh.prototype.SetterByBindingTypeAndVersioning=[[yh.prototype._setValue_direct,yh.prototype._setValue_direct_setNeedsUpdate,yh.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[yh.prototype._setValue_array,yh.prototype._setValue_array_setNeedsUpdate,yh.prototype._setValue_array_setMatrixWorldNeedsUpdate],[yh.prototype._setValue_arrayElement,yh.prototype._setValue_arrayElement_setNeedsUpdate,yh.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[yh.prototype._setValue_fromArray,yh.prototype._setValue_fromArray_setNeedsUpdate,yh.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class xh{constructor(){this.uuid=ct(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;const t={};this._indicesByUUID=t;for(let e=0,n=arguments.length;e!==n;++e)t[arguments[e].uuid]=e;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};const e=this;this.stats={objects:{get total(){return e._objects.length},get inUse(){return this.total-e.nCachedObjects_}},get bindingsPerObject(){return e._bindings.length}}}add(){const t=this._objects,e=this._indicesByUUID,n=this._paths,i=this._parsedPaths,r=this._bindings,s=r.length;let a,o=t.length,l=this.nCachedObjects_;for(let c=0,h=arguments.length;c!==h;++c){const h=arguments[c],u=h.uuid;let d=e[u];if(void 0===d){d=o++,e[u]=d,t.push(h);for(let t=0,e=s;t!==e;++t)r[t].push(new yh(h,n[t],i[t]))}else if(d<l){a=t[d];const o=--l,c=t[o];e[c.uuid]=d,t[d]=c,e[u]=o,t[o]=h;for(let t=0,e=s;t!==e;++t){const e=r[t],s=e[o];let a=e[d];e[d]=s,void 0===a&&(a=new yh(h,n[t],i[t])),e[o]=a}}else t[d]!==a&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.")}this.nCachedObjects_=l}remove(){const t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length;let r=this.nCachedObjects_;for(let s=0,a=arguments.length;s!==a;++s){const a=arguments[s],o=a.uuid,l=e[o];if(void 0!==l&&l>=r){const s=r++,c=t[s];e[c.uuid]=l,t[l]=c,e[o]=s,t[s]=a;for(let t=0,e=i;t!==e;++t){const e=n[t],i=e[s],r=e[l];e[l]=i,e[s]=r}}}this.nCachedObjects_=r}uncache(){const t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length;let r=this.nCachedObjects_,s=t.length;for(let a=0,o=arguments.length;a!==o;++a){const o=arguments[a].uuid,l=e[o];if(void 0!==l)if(delete e[o],l<r){const a=--r,o=t[a],c=--s,h=t[c];e[o.uuid]=l,t[l]=o,e[h.uuid]=a,t[a]=h,t.pop();for(let t=0,e=i;t!==e;++t){const e=n[t],i=e[a],r=e[c];e[l]=i,e[a]=r,e.pop()}}else{const r=--s,a=t[r];r>0&&(e[a.uuid]=l),t[l]=a,t.pop();for(let t=0,e=i;t!==e;++t){const e=n[t];e[l]=e[r],e.pop()}}}this.nCachedObjects_=r}subscribe_(t,e){const n=this._bindingsIndicesByPath;let i=n[t];const r=this._bindings;if(void 0!==i)return r[i];const s=this._paths,a=this._parsedPaths,o=this._objects,l=o.length,c=this.nCachedObjects_,h=new Array(l);i=r.length,n[t]=i,s.push(t),a.push(e),r.push(h);for(let n=c,i=o.length;n!==i;++n){const i=o[n];h[n]=new yh(i,t,e)}return h}unsubscribe_(t){const e=this._bindingsIndicesByPath,n=e[t];if(void 0!==n){const i=this._paths,r=this._parsedPaths,s=this._bindings,a=s.length-1,o=s[a];e[t[a]]=n,s[n]=o,s.pop(),r[n]=r[a],r.pop(),i[n]=i[a],i.pop()}}}xh.prototype.isAnimationObjectGroup=!0;class _h{constructor(t,e,n=null,i=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=n,this.blendMode=i;const r=e.tracks,s=r.length,a=new Array(s),o={endingStart:k,endingEnd:k};for(let t=0;t!==s;++t){const e=r[t].createInterpolant(null);a[t]=e,e.settings=o}this._interpolantSettings=o,this._interpolants=a,this._propertyBindings=new Array(s),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=2201,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}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(t){return this._startTime=t,this}setLoop(t,e){return this.loop=t,this.repetitions=e,this}setEffectiveWeight(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(t){return this._scheduleFading(t,0,1)}fadeOut(t){return this._scheduleFading(t,1,0)}crossFadeFrom(t,e,n){if(t.fadeOut(e),this.fadeIn(e),n){const n=this._clip.duration,i=t._clip.duration,r=i/n,s=n/i;t.warp(1,r,e),this.warp(s,1,e)}return this}crossFadeTo(t,e,n){return t.crossFadeFrom(this,e,n)}stopFading(){const t=this._weightInterpolant;return null!==t&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}setEffectiveTimeScale(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(t){return this.timeScale=this._clip.duration/t,this.stopWarping()}syncWith(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()}halt(t){return this.warp(this._effectiveTimeScale,0,t)}warp(t,e,n){const i=this._mixer,r=i.time,s=this.timeScale;let a=this._timeScaleInterpolant;null===a&&(a=i._lendControlInterpolant(),this._timeScaleInterpolant=a);const o=a.parameterPositions,l=a.sampleValues;return o[0]=r,o[1]=r+n,l[0]=t/s,l[1]=e/s,this}stopWarping(){const t=this._timeScaleInterpolant;return null!==t&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(t,e,n,i){if(!this.enabled)return void this._updateWeight(t);const r=this._startTime;if(null!==r){const i=(t-r)*n;if(i<0||0===n)return;this._startTime=null,e=n*i}e*=this._updateTimeScale(t);const s=this._updateTime(e),a=this._updateWeight(t);if(a>0){const t=this._interpolants,e=this._propertyBindings;if(this.blendMode===q)for(let n=0,i=t.length;n!==i;++n)t[n].evaluate(s),e[n].accumulateAdditive(a);else for(let n=0,r=t.length;n!==r;++n)t[n].evaluate(s),e[n].accumulate(i,a)}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;const n=this._weightInterpolant;if(null!==n){const i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;const n=this._timeScaleInterpolant;if(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(t){const e=this._clip.duration,n=this.loop;let i=this.time+t,r=this._loopCount;const s=2202===n;if(0===t)return-1===r?i:s&&1==(1&r)?e-i:i;if(2200===n){-1===r&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(i>=e)i=e;else{if(!(i<0)){this.time=i;break t}i=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=i,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,s)):this._setEndings(0===this.repetitions,!0,s)),i>=e||i<0){const n=Math.floor(i/e);i-=e*n,r+=Math.abs(n);const a=this.repetitions-r;if(a<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,i=t>0?e:0,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:t>0?1:-1});else{if(1===a){const e=t<0;this._setEndings(e,!e,s)}else this._setEndings(!1,!1,s);this._loopCount=r,this.time=i,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:n})}}else this.time=i;if(s&&1==(1&r))return e-i}return i}_setEndings(t,e,n){const i=this._interpolantSettings;n?(i.endingStart=V,i.endingEnd=V):(i.endingStart=t?this.zeroSlopeAtStart?V:k:W,i.endingEnd=e?this.zeroSlopeAtEnd?V:k:W)}_scheduleFading(t,e,n){const i=this._mixer,r=i.time;let s=this._weightInterpolant;null===s&&(s=i._lendControlInterpolant(),this._weightInterpolant=s);const a=s.parameterPositions,o=s.sampleValues;return a[0]=r,o[0]=e,a[1]=r+t,o[1]=n,this}}class Mh extends rt{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){const n=t._localRoot||this._root,i=t._clip.tracks,r=i.length,s=t._propertyBindings,a=t._interpolants,o=n.uuid,l=this._bindingsByRootAndName;let c=l[o];void 0===c&&(c={},l[o]=c);for(let t=0;t!==r;++t){const r=i[t],l=r.name;let h=c[l];if(void 0!==h)s[t]=h;else{if(h=s[t],void 0!==h){null===h._cacheIndex&&(++h.referenceCount,this._addInactiveBinding(h,o,l));continue}const i=e&&e._propertyBindings[t].binding.parsedPath;h=new oh(yh.create(n,l,i),r.ValueTypeName,r.getValueSize()),++h.referenceCount,this._addInactiveBinding(h,o,l),s[t]=h}a[t].resultBuffer=h.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){const 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)}const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==n.useCount++&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.useCount&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}}_isActiveAction(t){const e=t._cacheIndex;return null!==e&&e<this._nActiveActions}_addInactiveAction(t,e,n){const i=this._actions,r=this._actionsByClip;let s=r[e];if(void 0===s)s={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,r[e]=s;else{const e=s.knownActions;t._byClipCacheIndex=e.length,e.push(t)}t._cacheIndex=i.length,i.push(t),s.actionByRoot[n]=t}_removeInactiveAction(t){const e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;const r=t._clip.uuid,s=this._actionsByClip,a=s[r],o=a.knownActions,l=o[o.length-1],c=t._byClipCacheIndex;l._byClipCacheIndex=c,o[c]=l,o.pop(),t._byClipCacheIndex=null;delete a.actionByRoot[(t._localRoot||this._root).uuid],0===o.length&&delete s[r],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.referenceCount&&this._removeInactiveBinding(n)}}_lendAction(t){const 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(t){const 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(t,e,n){const i=this._bindingsByRootAndName,r=this._bindings;let s=i[e];void 0===s&&(s={},i[e]=s),s[n]=t,t._cacheIndex=r.length,r.push(t)}_removeInactiveBinding(t){const e=this._bindings,n=t.binding,i=n.rootNode.uuid,r=n.path,s=this._bindingsByRootAndName,a=s[i],o=e[e.length-1],l=t._cacheIndex;o._cacheIndex=l,e[l]=o,e.pop(),delete a[r],0===Object.keys(a).length&&delete s[i]}_lendBinding(t){const 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(t){const 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(){const t=this._controlInterpolants,e=this._nActiveControlInterpolants++;let n=t[e];return void 0===n&&(n=new ql(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer),n.__cacheIndex=e,t[e]=n),n}_takeBackControlInterpolant(t){const e=this._controlInterpolants,n=t.__cacheIndex,i=--this._nActiveControlInterpolants,r=e[i];t.__cacheIndex=i,e[i]=t,r.__cacheIndex=n,e[n]=r}clipAction(t,e,n){const i=e||this._root,r=i.uuid;let s="string"==typeof t?nc.findByName(i,t):t;const a=null!==s?s.uuid:t,o=this._actionsByClip[a];let l=null;if(void 0===n&&(n=null!==s?s.blendMode:j),void 0!==o){const t=o.actionByRoot[r];if(void 0!==t&&t.blendMode===n)return t;l=o.knownActions[0],null===s&&(s=l._clip)}if(null===s)return null;const c=new _h(this,s,e,n);return this._bindAction(c,l),this._addInactiveAction(c,a,r),c}existingAction(t,e){const n=e||this._root,i=n.uuid,r="string"==typeof t?nc.findByName(n,t):t,s=r?r.uuid:t,a=this._actionsByClip[s];return void 0!==a&&a.actionByRoot[i]||null}stopAllAction(){const t=this._actions;for(let e=this._nActiveActions-1;e>=0;--e)t[e].stop();return this}update(t){t*=this.timeScale;const e=this._actions,n=this._nActiveActions,i=this.time+=t,r=Math.sign(t),s=this._accuIndex^=1;for(let a=0;a!==n;++a){e[a]._update(i,t,r,s)}const a=this._bindings,o=this._nActiveBindings;for(let t=0;t!==o;++t)a[t].apply(s);return this}setTime(t){this.time=0;for(let t=0;t<this._actions.length;t++)this._actions[t].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){const e=this._actions,n=t.uuid,i=this._actionsByClip,r=i[n];if(void 0!==r){const t=r.knownActions;for(let n=0,i=t.length;n!==i;++n){const i=t[n];this._deactivateAction(i);const r=i._cacheIndex,s=e[e.length-1];i._cacheIndex=null,i._byClipCacheIndex=null,s._cacheIndex=r,e[r]=s,e.pop(),this._removeInactiveBindingsForAction(i)}delete i[n]}}uncacheRoot(t){const e=t.uuid,n=this._actionsByClip;for(const t in n){const i=n[t].actionByRoot[e];void 0!==i&&(this._deactivateAction(i),this._removeInactiveAction(i))}const i=this._bindingsByRootAndName[e];if(void 0!==i)for(const t in i){const e=i[t];e.restoreOriginalState(),this._removeInactiveBinding(e)}}uncacheAction(t,e){const n=this.existingAction(t,e);null!==n&&(this._deactivateAction(n),this._removeInactiveAction(n))}}Mh.prototype._controlInterpolantsResultBuffer=new Float32Array(1);class bh{constructor(t){"string"==typeof t&&(console.warn("THREE.Uniform: Type parameter is no longer needed."),t=arguments[1]),this.value=t}clone(){return new bh(void 0===this.value.clone?this.value:this.value.clone())}}class wh extends ra{constructor(t,e,n=1){super(t,e),this.meshPerAttribute=n}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}clone(t){const e=super.clone(t);return e.meshPerAttribute=this.meshPerAttribute,e}toJSON(t){const e=super.toJSON(t);return e.isInstancedInterleavedBuffer=!0,e.meshPerAttribute=this.meshPerAttribute,e}}wh.prototype.isInstancedInterleavedBuffer=!0;class Sh{constructor(t,e,n,i,r){this.buffer=t,this.type=e,this.itemSize=n,this.elementSize=i,this.count=r,this.version=0}set needsUpdate(t){!0===t&&this.version++}setBuffer(t){return this.buffer=t,this}setType(t,e){return this.type=t,this.elementSize=e,this}setItemSize(t){return this.itemSize=t,this}setCount(t){return this.count=t,this}}Sh.prototype.isGLBufferAttribute=!0;function Th(t,e){return t.distance-e.distance}function Eh(t,e,n,i){if(t.layers.test(e.layers)&&t.raycast(e,n),!0===i){const i=t.children;for(let t=0,r=i.length;t<r;t++)Eh(i[t],e,n,!0)}}const Ah=new vt;class Lh{constructor(t=new vt(1/0,1/0),e=new vt(-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=Ah.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}clone(){return new this.constructor().copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(t){return this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}containsPoint(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y)}containsBox(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(t,e){return 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(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(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return Ah.copy(t).clamp(this.min,this.max).sub(t).length()}intersect(t){return this.min.max(t.min),this.max.min(t.max),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}Lh.prototype.isBox2=!0;const Rh=new Nt,Ch=new Nt;class Ph{constructor(t=new Nt,e=new Nt){this.start=t,this.end=e}set(t,e){return this.start.copy(t),this.end.copy(e),this}copy(t){return this.start.copy(t.start),this.end.copy(t.end),this}getCenter(t){return t.addVectors(this.start,this.end).multiplyScalar(.5)}delta(t){return t.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(t,e){return this.delta(e).multiplyScalar(t).add(this.start)}closestPointToPointParameter(t,e){Rh.subVectors(t,this.start),Ch.subVectors(this.end,this.start);const n=Ch.dot(Ch);let i=Ch.dot(Rh)/n;return e&&(i=ht(i,0,1)),i}closestPointToPoint(t,e,n){const i=this.closestPointToPointParameter(t,e);return this.delta(n).multiplyScalar(i).add(this.start)}applyMatrix4(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this}equals(t){return t.start.equals(this.start)&&t.end.equals(this.end)}clone(){return new this.constructor().copy(this)}}const Dh=new Nt;const Ih=new Nt,Nh=new ue,zh=new ue;class Bh extends Ka{constructor(t){const e=Fh(t),n=new Tn,i=[],r=[],s=new nn(0,0,1),a=new nn(0,1,0);for(let t=0;t<e.length;t++){const n=e[t];n.parent&&n.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),r.push(s.r,s.g,s.b),r.push(a.r,a.g,a.b))}n.setAttribute("position",new gn(i,3)),n.setAttribute("color",new gn(r,3));super(n,new Va({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0})),this.type="SkeletonHelper",this.isSkeletonHelper=!0,this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(t){const e=this.bones,n=this.geometry,i=n.getAttribute("position");zh.copy(this.root.matrixWorld).invert();for(let t=0,n=0;t<e.length;t++){const r=e[t];r.parent&&r.parent.isBone&&(Nh.multiplyMatrices(zh,r.matrixWorld),Ih.setFromMatrixPosition(Nh),i.setXYZ(n,Ih.x,Ih.y,Ih.z),Nh.multiplyMatrices(zh,r.parent.matrixWorld),Ih.setFromMatrixPosition(Nh),i.setXYZ(n+1,Ih.x,Ih.y,Ih.z),n+=2)}n.getAttribute("position").needsUpdate=!0,super.updateMatrixWorld(t)}}function Fh(t){const e=[];t&&t.isBone&&e.push(t);for(let n=0;n<t.children.length;n++)e.push.apply(e,Fh(t.children[n]));return e}const Oh=new Nt,Uh=new nn,Hh=new nn;class Gh extends Ka{constructor(t=10,e=10,n=4473924,i=8947848){n=new nn(n),i=new nn(i);const r=e/2,s=t/e,a=t/2,o=[],l=[];for(let t=0,c=0,h=-a;t<=e;t++,h+=s){o.push(-a,0,h,a,0,h),o.push(h,0,-a,h,0,a);const e=t===r?n:i;e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3}const c=new Tn;c.setAttribute("position",new gn(o,3)),c.setAttribute("color",new gn(l,3));super(c,new Va({vertexColors:!0,toneMapped:!1})),this.type="GridHelper"}}const kh=new Nt,Vh=new Nt,Wh=new Nt;const jh=new Nt,qh=new Zn;function Xh(t,e,n,i,r,s,a){jh.set(r,s,a).unproject(i);const o=e[t];if(void 0!==o){const t=n.getAttribute("position");for(let e=0,n=o.length;e<n;e++)t.setXYZ(o[e],jh.x,jh.y,jh.z)}}const Jh=new Ft;class Yh extends Ka{constructor(t,e=16776960){const 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 Tn;r.setIndex(new on(n,1)),r.setAttribute("position",new on(i,3)),super(r,new Va({color:e,toneMapped:!1})),this.object=t,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(t){if(void 0!==t&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&&Jh.setFromObject(this.object),Jh.isEmpty())return;const e=Jh.min,n=Jh.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()}setFromObject(t){return this.object=t,this.update(),this}copy(t){return Ka.prototype.copy.call(this,t),this.object=t.object,this}}const Zh=new Nt;let Qh,Kh;class $h extends Ka{constructor(t=1){const e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=new Tn;n.setAttribute("position",new gn(e,3)),n.setAttribute("color",new gn([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));super(n,new Va({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}setColors(t,e,n){const i=new nn,r=this.geometry.attributes.color.array;return i.set(t),i.toArray(r,0),i.toArray(r,3),i.set(e),i.toArray(r,6),i.toArray(r,9),i.set(n),i.toArray(r,12),i.toArray(r,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}const tu=new Float32Array(1),eu=new Int32Array(tu.buffer);Mo.create=function(t,e){return console.log("THREE.Curve.create() has been deprecated"),t.prototype=Object.create(Mo.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},ko.prototype.fromPoints=function(t){return console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints()."),this.setFromPoints(t)},Gh.prototype.setColors=function(){console.error("THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.")},Bh.prototype.update=function(){console.error("THREE.SkeletonHelper: update() no longer needs to be called.")},oc.prototype.extractUrlBase=function(t){return console.warn("THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead."),Nc.extractUrlBase(t)},oc.Handlers={add:function(){console.error("THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.")},get:function(){console.error("THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.")}},Lh.prototype.center=function(t){return console.warn("THREE.Box2: .center() has been renamed to .getCenter()."),this.getCenter(t)},Lh.prototype.empty=function(){return console.warn("THREE.Box2: .empty() has been renamed to .isEmpty()."),this.isEmpty()},Lh.prototype.isIntersectionBox=function(t){return console.warn("THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},Lh.prototype.size=function(t){return console.warn("THREE.Box2: .size() has been renamed to .getSize()."),this.getSize(t)},Ft.prototype.center=function(t){return console.warn("THREE.Box3: .center() has been renamed to .getCenter()."),this.getCenter(t)},Ft.prototype.empty=function(){return console.warn("THREE.Box3: .empty() has been renamed to .isEmpty()."),this.isEmpty()},Ft.prototype.isIntersectionBox=function(t){return console.warn("THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},Ft.prototype.isIntersectionSphere=function(t){return console.warn("THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},Ft.prototype.size=function(t){return console.warn("THREE.Box3: .size() has been renamed to .getSize()."),this.getSize(t)},ne.prototype.empty=function(){return console.warn("THREE.Sphere: .empty() has been renamed to .isEmpty()."),this.isEmpty()},li.prototype.setFromMatrix=function(t){return console.warn("THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix()."),this.setFromProjectionMatrix(t)},Ph.prototype.center=function(t){return console.warn("THREE.Line3: .center() has been renamed to .getCenter()."),this.getCenter(t)},yt.prototype.flattenToArrayOffset=function(t,e){return console.warn("THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},yt.prototype.multiplyVector3=function(t){return console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},yt.prototype.multiplyVector3Array=function(){console.error("THREE.Matrix3: .multiplyVector3Array() has been removed.")},yt.prototype.applyToBufferAttribute=function(t){return console.warn("THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},yt.prototype.applyToVector3Array=function(){console.error("THREE.Matrix3: .applyToVector3Array() has been removed.")},yt.prototype.getInverse=function(t){return console.warn("THREE.Matrix3: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead."),this.copy(t).invert()},ue.prototype.extractPosition=function(t){return console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition()."),this.copyPosition(t)},ue.prototype.flattenToArrayOffset=function(t,e){return console.warn("THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},ue.prototype.getPosition=function(){return console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead."),new Nt().setFromMatrixColumn(this,3)},ue.prototype.setRotationFromQuaternion=function(t){return console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion()."),this.makeRotationFromQuaternion(t)},ue.prototype.multiplyToArray=function(){console.warn("THREE.Matrix4: .multiplyToArray() has been removed.")},ue.prototype.multiplyVector3=function(t){return console.warn("THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},ue.prototype.multiplyVector4=function(t){return console.warn("THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},ue.prototype.multiplyVector3Array=function(){console.error("THREE.Matrix4: .multiplyVector3Array() has been removed.")},ue.prototype.rotateAxis=function(t){console.warn("THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead."),t.transformDirection(this)},ue.prototype.crossVector=function(t){return console.warn("THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},ue.prototype.translate=function(){console.error("THREE.Matrix4: .translate() has been removed.")},ue.prototype.rotateX=function(){console.error("THREE.Matrix4: .rotateX() has been removed.")},ue.prototype.rotateY=function(){console.error("THREE.Matrix4: .rotateY() has been removed.")},ue.prototype.rotateZ=function(){console.error("THREE.Matrix4: .rotateZ() has been removed.")},ue.prototype.rotateByAxis=function(){console.error("THREE.Matrix4: .rotateByAxis() has been removed.")},ue.prototype.applyToBufferAttribute=function(t){return console.warn("THREE.Matrix4: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},ue.prototype.applyToVector3Array=function(){console.error("THREE.Matrix4: .applyToVector3Array() has been removed.")},ue.prototype.makeFrustum=function(t,e,n,i,r,s){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,s)},ue.prototype.getInverse=function(t){return console.warn("THREE.Matrix4: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead."),this.copy(t).invert()},si.prototype.isIntersectionLine=function(t){return console.warn("THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine()."),this.intersectsLine(t)},It.prototype.multiplyVector3=function(t){return console.warn("THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead."),t.applyQuaternion(this)},It.prototype.inverse=function(){return console.warn("THREE.Quaternion: .inverse() has been renamed to invert()."),this.invert()},he.prototype.isIntersectionBox=function(t){return console.warn("THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},he.prototype.isIntersectionPlane=function(t){return console.warn("THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane()."),this.intersectsPlane(t)},he.prototype.isIntersectionSphere=function(t){return console.warn("THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},Xe.prototype.area=function(){return console.warn("THREE.Triangle: .area() has been renamed to .getArea()."),this.getArea()},Xe.prototype.barycoordFromPoint=function(t,e){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),this.getBarycoord(t,e)},Xe.prototype.midpoint=function(t){return console.warn("THREE.Triangle: .midpoint() has been renamed to .getMidpoint()."),this.getMidpoint(t)},Xe.prototypenormal=function(t){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),this.getNormal(t)},Xe.prototype.plane=function(t){return console.warn("THREE.Triangle: .plane() has been renamed to .getPlane()."),this.getPlane(t)},Xe.barycoordFromPoint=function(t,e,n,i,r){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),Xe.getBarycoord(t,e,n,i,r)},Xe.normal=function(t,e,n,i){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),Xe.getNormal(t,e,n,i)},Vo.prototype.extractAllPoints=function(t){return console.warn("THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead."),this.extractPoints(t)},Vo.prototype.extrude=function(t){return console.warn("THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead."),new yl(this,t)},Vo.prototype.makeGeometry=function(t){return console.warn("THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead."),new Sl(this,t)},vt.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},vt.prototype.distanceToManhattan=function(t){return console.warn("THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},vt.prototype.lengthManhattan=function(){return console.warn("THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},Nt.prototype.setEulerFromRotationMatrix=function(){console.error("THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.")},Nt.prototype.setEulerFromQuaternion=function(){console.error("THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.")},Nt.prototype.getPositionFromMatrix=function(t){return console.warn("THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition()."),this.setFromMatrixPosition(t)},Nt.prototype.getScaleFromMatrix=function(t){return console.warn("THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale()."),this.setFromMatrixScale(t)},Nt.prototype.getColumnFromMatrix=function(t,e){return console.warn("THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn()."),this.setFromMatrixColumn(e,t)},Nt.prototype.applyProjection=function(t){return console.warn("THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead."),this.applyMatrix4(t)},Nt.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},Nt.prototype.distanceToManhattan=function(t){return console.warn("THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},Nt.prototype.lengthManhattan=function(){return console.warn("THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},Rt.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},Rt.prototype.lengthManhattan=function(){return console.warn("THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},Be.prototype.getChildByName=function(t){return console.warn("THREE.Object3D: .getChildByName() has been renamed to .getObjectByName()."),this.getObjectByName(t)},Be.prototype.renderDepth=function(){console.warn("THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.")},Be.prototype.translate=function(t,e){return console.warn("THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead."),this.translateOnAxis(e,t)},Be.prototype.getWorldRotation=function(){console.error("THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.")},Be.prototype.applyMatrix=function(t){return console.warn("THREE.Object3D: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)},Object.defineProperties(Be.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.")}}}),Vn.prototype.setDrawMode=function(){console.error("THREE.Mesh: .setDrawMode() has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")},Object.defineProperties(Vn.prototype,{drawMode:{get:function(){return console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode."),0},set:function(){console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")}}}),Pa.prototype.initBones=function(){console.error("THREE.SkinnedMesh: initBones() has been removed.")},Qn.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(mc.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(on.prototype,{length:{get:function(){return console.warn("THREE.BufferAttribute: .length has been deprecated. Use .count instead."),this.array.length}},dynamic:{get:function(){return console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.usage===nt},set:function(){console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.setUsage(nt)}}}),on.prototype.setDynamic=function(t){return console.warn("THREE.BufferAttribute: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?nt:et),this},on.prototype.copyIndicesArray=function(){console.error("THREE.BufferAttribute: .copyIndicesArray() has been removed.")},on.prototype.setArray=function(){console.error("THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")},Tn.prototype.addIndex=function(t){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex()."),this.setIndex(t)},Tn.prototype.addAttribute=function(t,e){return console.warn("THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute()."),e&&e.isBufferAttribute||e&&e.isInterleavedBufferAttribute?"index"===t?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(e),this):this.setAttribute(t,e):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.setAttribute(t,new on(arguments[1],arguments[2])))},Tn.prototype.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)},Tn.prototype.clearDrawCalls=function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups()."),this.clearGroups()},Tn.prototype.computeOffsets=function(){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")},Tn.prototype.removeAttribute=function(t){return console.warn("THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute()."),this.deleteAttribute(t)},Tn.prototype.applyMatrix=function(t){return console.warn("THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)},Object.defineProperties(Tn.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}}}),ra.prototype.setDynamic=function(t){return console.warn("THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?nt:et),this},ra.prototype.setArray=function(){console.error("THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")},yl.prototype.getArrays=function(){console.error("THREE.ExtrudeGeometry: .getArrays() has been removed.")},yl.prototype.addShapeList=function(){console.error("THREE.ExtrudeGeometry: .addShapeList() has been removed.")},yl.prototype.addShape=function(){console.error("THREE.ExtrudeGeometry: .addShape() has been removed.")},ia.prototype.dispose=function(){console.error("THREE.Scene: .dispose() has been removed.")},bh.prototype.onUpdate=function(){return console.warn("THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead."),this},Object.defineProperties(Ye.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 nn}},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=1===t}},stencilMask:{get:function(){return console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask},set:function(t){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask=t}},vertexTangents:{get:function(){console.warn("THREE."+this.type+": .vertexTangents has been removed.")},set:function(){console.warn("THREE."+this.type+": .vertexTangents has been removed.")}}}),Object.defineProperties(Yn.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}}}),$s.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)},$s.prototype.animate=function(t){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop()."),this.setAnimationLoop(t)},$s.prototype.getCurrentRenderTarget=function(){return console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget()."),this.getRenderTarget()},$s.prototype.getMaxAnisotropy=function(){return console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy()."),this.capabilities.getMaxAnisotropy()},$s.prototype.getPrecision=function(){return console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision."),this.capabilities.precision},$s.prototype.resetGLState=function(){return console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset()."),this.state.reset()},$s.prototype.supportsFloatTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' )."),this.extensions.get("OES_texture_float")},$s.prototype.supportsHalfFloatTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' )."),this.extensions.get("OES_texture_half_float")},$s.prototype.supportsStandardDerivatives=function(){return console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' )."),this.extensions.get("OES_standard_derivatives")},$s.prototype.supportsCompressedTextureS3TC=function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' )."),this.extensions.get("WEBGL_compressed_texture_s3tc")},$s.prototype.supportsCompressedTexturePVRTC=function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' )."),this.extensions.get("WEBGL_compressed_texture_pvrtc")},$s.prototype.supportsBlendMinMax=function(){return console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' )."),this.extensions.get("EXT_blend_minmax")},$s.prototype.supportsVertexTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures."),this.capabilities.vertexTextures},$s.prototype.supportsInstancedArrays=function(){return console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' )."),this.extensions.get("ANGLE_instanced_arrays")},$s.prototype.enableScissorTest=function(t){console.warn("THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest()."),this.setScissorTest(t)},$s.prototype.initMaterial=function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")},$s.prototype.addPrePlugin=function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")},$s.prototype.addPostPlugin=function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")},$s.prototype.updateShadowMap=function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")},$s.prototype.setFaceCulling=function(){console.warn("THREE.WebGLRenderer: .setFaceCulling() has been removed.")},$s.prototype.allocTextureUnit=function(){console.warn("THREE.WebGLRenderer: .allocTextureUnit() has been removed.")},$s.prototype.setTexture=function(){console.warn("THREE.WebGLRenderer: .setTexture() has been removed.")},$s.prototype.setTexture2D=function(){console.warn("THREE.WebGLRenderer: .setTexture2D() has been removed.")},$s.prototype.setTextureCube=function(){console.warn("THREE.WebGLRenderer: .setTextureCube() has been removed.")},$s.prototype.getActiveMipMapLevel=function(){return console.warn("THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel()."),this.getActiveMipmapLevel()},Object.defineProperties($s.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.")}},context:{get:function(){return console.warn("THREE.WebGLRenderer: .context has been removed. Use .getContext() instead."),this.getContext()}},vr:{get:function(){return console.warn("THREE.WebGLRenderer: .vr has been renamed to .xr"),this.xr}},gammaInput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead."),!1},set:function(){console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.")}},gammaOutput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),!1},set:function(t){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),this.outputEncoding=!0===t?J:X}},toneMappingWhitePoint:{get:function(){return console.warn("THREE.WebGLRenderer: .toneMappingWhitePoint has been removed."),1},set:function(){console.warn("THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.")}}}),Object.defineProperties(ks.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(Ct.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}}}),eh.prototype.load=function(t){console.warn("THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.");const e=this;return new Vc().load(t,function(t){e.setBuffer(t)}),this},ah.prototype.getData=function(){return console.warn("THREE.AudioAnalyser: .getData() is now .getFrequencyData()."),this.getFrequencyData()},$n.prototype.updateCubeMap=function(t,e){return console.warn("THREE.CubeCamera: .updateCubeMap() is now .update()."),this.update(t,e)},$n.prototype.clear=function(t,e,n,i){return console.warn("THREE.CubeCamera: .clear() is now .renderTarget.clear()."),this.renderTarget.clear(t,e,n,i)},Tt.crossOrigin=void 0,Tt.loadTexture=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.");const r=new pc;r.setCrossOrigin(this.crossOrigin);const s=r.load(t,n,void 0,i);return e&&(s.mapping=e),s},Tt.loadTextureCube=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.");const r=new uc;r.setCrossOrigin(this.crossOrigin);const s=r.load(t,n,void 0,i);return e&&(s.mapping=e),s},Tt.loadCompressedTexture=function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")},Tt.loadCompressedTextureCube=function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")};const nu={createMultiMaterialObject:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},detach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},attach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")}};"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:e}})),"undefined"!=typeof window&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=e),t.ACESFilmicToneMapping=4,t.AddEquation=n,t.AddOperation=2,t.AdditiveAnimationBlendMode=q,t.AdditiveBlending=2,t.AlphaFormat=1021,t.AlwaysDepth=1,t.AlwaysStencilFunc=519,t.AmbientLight=Rc,t.AmbientLightProbe=jc,t.AnimationClip=nc,t.AnimationLoader=class extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cc(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(t,function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}},n,i)}parse(t){const e=[];for(let n=0;n<t.length;n++){const i=nc.parse(t[n]);e.push(i)}return e}},t.AnimationMixer=Mh,t.AnimationObjectGroup=xh,t.AnimationUtils=Vl,t.ArcCurve=wo,t.ArrayCamera=qs,t.ArrowHelper=class extends Be{constructor(t=new Nt(0,0,1),e=new Nt(0,0,0),n=1,i=16776960,r=.2*n,s=.2*r){super(),this.type="ArrowHelper",void 0===Qh&&(Qh=new Tn,Qh.setAttribute("position",new gn([0,0,0,0,1,0],3)),Kh=new uo(0,.5,1,5,1),Kh.translate(0,-.5,0)),this.position.copy(e),this.line=new Ya(Qh,new Va({color:i,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new Vn(Kh,new rn({color:i,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(n,r,s)}setDirection(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{Zh.set(t.z,0,-t.x).normalize();const e=Math.acos(t.y);this.quaternion.setFromAxisAngle(Zh,e)}}setLength(t,e=.2*t,n=.2*e){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}},t.Audio=eh,t.AudioAnalyser=ah,t.AudioContext=kc,t.AudioListener=class extends Be{constructor(){super(),this.type="AudioListener",this.context=kc.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new Yc}getInput(){return this.gain}removeFilter(){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(){return this.filter}setFilter(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(){return this.gain.gain.value}setMasterVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}updateMatrixWorld(t){super.updateMatrixWorld(t);const e=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Qc,Kc,$c),th.set(0,0,-1).applyQuaternion(Kc),e.positionX){const t=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(Qc.x,t),e.positionY.linearRampToValueAtTime(Qc.y,t),e.positionZ.linearRampToValueAtTime(Qc.z,t),e.forwardX.linearRampToValueAtTime(th.x,t),e.forwardY.linearRampToValueAtTime(th.y,t),e.forwardZ.linearRampToValueAtTime(th.z,t),e.upX.linearRampToValueAtTime(n.x,t),e.upY.linearRampToValueAtTime(n.y,t),e.upZ.linearRampToValueAtTime(n.z,t)}else e.setPosition(Qc.x,Qc.y,Qc.z),e.setOrientation(th.x,th.y,th.z,n.x,n.y,n.z)}},t.AudioLoader=Vc,t.AxesHelper=$h,t.AxisHelper=function(t){return console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper."),new $h(t)},t.BackSide=1,t.BasicDepthPacking=3200,t.BasicShadowMap=0,t.BinaryTextureLoader=function(t){return console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader."),new dc(t)},t.Bone=Da,t.BooleanKeyframeTrack=Yl,t.BoundingBoxHelper=function(t,e){return console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead."),new Yh(t,e)},t.Box2=Lh,t.Box3=Ft,t.Box3Helper=class extends Ka{constructor(t,e=16776960){const 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 Tn;i.setIndex(new on(n,1)),i.setAttribute("position",new gn([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)),super(i,new Va({color:e,toneMapped:!1})),this.box=t,this.type="Box3Helper",this.geometry.computeBoundingSphere()}updateMatrixWorld(t){const e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(t))}},t.BoxBufferGeometry=jn,t.BoxGeometry=jn,t.BoxHelper=Yh,t.BufferAttribute=on,t.BufferGeometry=Tn,t.BufferGeometryLoader=Bc,t.ByteType=1010,t.Cache=rc,t.Camera=Zn,t.CameraHelper=class extends Ka{constructor(t){const e=new Tn,n=new Va({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],r=[],s={},a=new nn(16755200),o=new nn(16711680),l=new nn(43775),c=new nn(16777215),h=new nn(3355443);function u(t,e,n){d(t,n),d(e,n)}function d(t,e){i.push(0,0,0),r.push(e.r,e.g,e.b),void 0===s[t]&&(s[t]=[]),s[t].push(i.length/3-1)}u("n1","n2",a),u("n2","n4",a),u("n4","n3",a),u("n3","n1",a),u("f1","f2",a),u("f2","f4",a),u("f4","f3",a),u("f3","f1",a),u("n1","f1",a),u("n2","f2",a),u("n3","f3",a),u("n4","f4",a),u("p","n1",o),u("p","n2",o),u("p","n3",o),u("p","n4",o),u("u1","u2",l),u("u2","u3",l),u("u3","u1",l),u("c","t",c),u("p","c",h),u("cn1","cn2",h),u("cn3","cn4",h),u("cf1","cf2",h),u("cf3","cf4",h),e.setAttribute("position",new gn(i,3)),e.setAttribute("color",new gn(r,3)),super(e,n),this.type="CameraHelper",this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=s,this.update()}update(){const t=this.geometry,e=this.pointMap;qh.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),Xh("c",e,t,qh,0,0,-1),Xh("t",e,t,qh,0,0,1),Xh("n1",e,t,qh,-1,-1,-1),Xh("n2",e,t,qh,1,-1,-1),Xh("n3",e,t,qh,-1,1,-1),Xh("n4",e,t,qh,1,1,-1),Xh("f1",e,t,qh,-1,-1,1),Xh("f2",e,t,qh,1,-1,1),Xh("f3",e,t,qh,-1,1,1),Xh("f4",e,t,qh,1,1,1),Xh("u1",e,t,qh,.7,1.1,-1),Xh("u2",e,t,qh,-.7,1.1,-1),Xh("u3",e,t,qh,0,2,-1),Xh("cf1",e,t,qh,-1,0,1),Xh("cf2",e,t,qh,1,0,1),Xh("cf3",e,t,qh,0,-1,1),Xh("cf4",e,t,qh,0,1,1),Xh("cn1",e,t,qh,-1,0,-1),Xh("cn2",e,t,qh,1,0,-1),Xh("cn3",e,t,qh,0,-1,-1),Xh("cn4",e,t,qh,0,1,-1),t.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}},t.CanvasRenderer=function(){console.error("THREE.CanvasRenderer has been removed")},t.CanvasTexture=co,t.CatmullRomCurve3=Ro,t.CineonToneMapping=3,t.CircleBufferGeometry=ho,t.CircleGeometry=ho,t.ClampToEdgeWrapping=u,t.Clock=Yc,t.Color=nn,t.ColorKeyframeTrack=Zl,t.CompressedTexture=lo,t.CompressedTextureLoader=class extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=[],a=new lo,o=new cc(this.manager);o.setPath(this.path),o.setResponseType("arraybuffer"),o.setRequestHeader(this.requestHeader),o.setWithCredentials(r.withCredentials);let l=0;function c(c){o.load(t[c],function(t){const n=r.parse(t,!0);s[c]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},l+=1,6===l&&(1===n.mipmapCount&&(a.minFilter=g),a.image=s,a.format=n.format,a.needsUpdate=!0,e&&e(a))},n,i)}if(Array.isArray(t))for(let e=0,n=t.length;e<n;++e)c(e);else o.load(t,function(t){const n=r.parse(t,!0);if(n.isCubemap){const t=n.mipmaps.length/n.mipmapCount;for(let e=0;e<t;e++){s[e]={mipmaps:[]};for(let t=0;t<n.mipmapCount;t++)s[e].mipmaps.push(n.mipmaps[e*n.mipmapCount+t]),s[e].format=n.format,s[e].width=n.width,s[e].height=n.height}a.image=s}else a.image.width=n.width,a.image.height=n.height,a.mipmaps=n.mipmaps;1===n.mipmapCount&&(a.minFilter=g),a.format=n.format,a.needsUpdate=!0,e&&e(a)},n,i);return a}},t.ConeBufferGeometry=po,t.ConeGeometry=po,t.CubeCamera=$n,t.CubeReflectionMapping=r,t.CubeRefractionMapping=s,t.CubeTexture=ti,t.CubeTextureLoader=uc,t.CubeUVReflectionMapping=l,t.CubeUVRefractionMapping=c,t.CubicBezierCurve=Io,t.CubicBezierCurve3=No,t.CubicInterpolant=jl,t.CullFaceBack=1,t.CullFaceFront=2,t.CullFaceFrontBack=3,t.CullFaceNone=0,t.Curve=Mo,t.CurvePath=Go,t.CustomBlending=5,t.CustomToneMapping=5,t.CylinderBufferGeometry=uo,t.CylinderGeometry=uo,t.Cylindrical=class{constructor(t=1,e=0,n=0){return this.radius=t,this.theta=e,this.y=n,this}set(t,e,n){return this.radius=t,this.theta=e,this.y=n,this}copy(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,n){return this.radius=Math.sqrt(t*t+n*n),this.theta=Math.atan2(t,n),this.y=e,this}clone(){return new this.constructor().copy(this)}},t.DataTexture=Ia,t.DataTexture2DArray=Qi,t.DataTexture3D=ir,t.DataTextureLoader=dc,t.DataUtils=class{static toHalfFloat(t){t>65504&&(console.warn("THREE.DataUtils.toHalfFloat(): value exceeds 65504."),t=65504),tu[0]=t;const e=eu[0];let n=e>>16&32768,i=e>>12&2047;const r=e>>23&255;return r<103?n:r>142?(n|=31744,n|=(255==r?0:1)&&8388607&e,n):r<113?(i|=2048,n|=(i>>114-r)+(i>>113-r&1),n):(n|=r-112<<10|i>>1,n+=1&i,n)}},t.DecrementStencilOp=7683,t.DecrementWrapStencilOp=34056,t.DefaultLoadingManager=ac,t.DepthFormat=A,t.DepthStencilFormat=L,t.DepthTexture=Zs,t.DirectionalLight=Lc,t.DirectionalLightHelper=class extends Be{constructor(t,e,n){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,void 0===e&&(e=1);let i=new Tn;i.setAttribute("position",new gn([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));const r=new Va({fog:!1,toneMapped:!1});this.lightPlane=new Ya(i,r),this.add(this.lightPlane),i=new Tn,i.setAttribute("position",new gn([0,0,0,0,0,1],3)),this.targetLine=new Ya(i,r),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){kh.setFromMatrixPosition(this.light.matrixWorld),Vh.setFromMatrixPosition(this.light.target.matrixWorld),Wh.subVectors(Vh,kh),this.lightPlane.lookAt(Vh),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(Vh),this.targetLine.scale.z=Wh.length()}},t.DiscreteInterpolant=Xl,t.DodecahedronBufferGeometry=fo,t.DodecahedronGeometry=fo,t.DoubleSide=2,t.DstAlphaFactor=206,t.DstColorFactor=208,t.DynamicBufferAttribute=function(t,e){return console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setUsage( THREE.DynamicDrawUsage ) instead."),new on(t,e).setUsage(nt)},t.DynamicCopyUsage=35050,t.DynamicDrawUsage=nt,t.DynamicReadUsage=35049,t.EdgesGeometry=_o,t.EdgesHelper=function(t,e){return console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead."),new Ka(new _o(t.geometry),new Va({color:void 0!==e?e:16777215}))},t.EllipseCurve=bo,t.EqualDepth=4,t.EqualStencilFunc=514,t.EquirectangularReflectionMapping=a,t.EquirectangularRefractionMapping=o,t.Euler=Me,t.EventDispatcher=rt,t.ExtrudeBufferGeometry=yl,t.ExtrudeGeometry=yl,t.FaceColors=1,t.FileLoader=cc,t.FlatShading=1,t.Float16BufferAttribute=fn,t.Float32Attribute=function(t,e){return console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead."),new gn(t,e)},t.Float32BufferAttribute=gn,t.Float64Attribute=function(t,e){return console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead."),new vn(t,e)},t.Float64BufferAttribute=vn,t.FloatType=b,t.Fog=na,t.FogExp2=ea,t.Font=function(){console.error("THREE.Font has been moved to /examples/jsm/loaders/FontLoader.js")},t.FontLoader=function(){console.error("THREE.FontLoader has been moved to /examples/jsm/loaders/FontLoader.js")},t.FrontSide=0,t.Frustum=li,t.GLBufferAttribute=Sh,t.GLSL1="100",t.GLSL3=it,t.GammaEncoding=Y,t.GreaterDepth=6,t.GreaterEqualDepth=5,t.GreaterEqualStencilFunc=518,t.GreaterStencilFunc=516,t.GridHelper=Gh,t.Group=Xs,t.HalfFloatType=w,t.HemisphereLight=fc,t.HemisphereLightHelper=class extends Be{constructor(t,e,n){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n;const i=new bl(e);i.rotateY(.5*Math.PI),this.material=new rn({wireframe:!0,fog:!1,toneMapped:!1}),void 0===this.color&&(this.material.vertexColors=!0);const r=i.getAttribute("position"),s=new Float32Array(3*r.count);i.setAttribute("color",new on(s,3)),this.add(new Vn(i,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){const t=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{const e=t.geometry.getAttribute("color");Uh.copy(this.light.color),Hh.copy(this.light.groundColor);for(let t=0,n=e.count;t<n;t++){const i=t<n/2?Uh:Hh;e.setXYZ(t,i.r,i.g,i.b)}e.needsUpdate=!0}t.lookAt(Oh.setFromMatrixPosition(this.light.matrixWorld).negate())}},t.HemisphereLightProbe=Wc,t.IcosahedronBufferGeometry=_l,t.IcosahedronGeometry=_l,t.ImageBitmapLoader=Hc,t.ImageLoader=hc,t.ImageUtils=Tt,t.ImmediateRenderObject=function(){console.error("THREE.ImmediateRenderObject has been removed.")},t.IncrementStencilOp=7682,t.IncrementWrapStencilOp=34055,t.InstancedBufferAttribute=Fa,t.InstancedBufferGeometry=zc,t.InstancedInterleavedBuffer=wh,t.InstancedMesh=ka,t.Int16Attribute=function(t,e){return console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead."),new un(t,e)},t.Int16BufferAttribute=un,t.Int32Attribute=function(t,e){return console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead."),new pn(t,e)},t.Int32BufferAttribute=pn,t.Int8Attribute=function(t,e){return console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead."),new ln(t,e)},t.Int8BufferAttribute=ln,t.IntType=1013,t.InterleavedBuffer=ra,t.InterleavedBufferAttribute=aa,t.Interpolant=Wl,t.InterpolateDiscrete=U,t.InterpolateLinear=H,t.InterpolateSmooth=G,t.InvertStencilOp=5386,t.JSONLoader=function(){console.error("THREE.JSONLoader has been removed.")},t.KeepStencilOp=tt,t.KeyframeTrack=Jl,t.LOD=Ta,t.LatheBufferGeometry=Ml,t.LatheGeometry=Ml,t.Layers=be,t.LensFlare=function(){console.error("THREE.LensFlare has been moved to /examples/jsm/objects/Lensflare.js")},t.LessDepth=2,t.LessEqualDepth=3,t.LessEqualStencilFunc=515,t.LessStencilFunc=513,t.Light=mc,t.LightProbe=Dc,t.Line=Ya,t.Line3=Ph,t.LineBasicMaterial=Va,t.LineCurve=zo,t.LineCurve3=Bo,t.LineDashedMaterial=Gl,t.LineLoop=$a,t.LinePieces=1,t.LineSegments=Ka,t.LineStrip=0,t.LinearEncoding=X,t.LinearFilter=g,t.LinearInterpolant=ql,t.LinearMipMapLinearFilter=1008,t.LinearMipMapNearestFilter=1007,t.LinearMipmapLinearFilter=y,t.LinearMipmapNearestFilter=v,t.LinearToneMapping=1,t.Loader=oc,t.LoaderUtils=Nc,t.LoadingManager=sc,t.LoopOnce=2200,t.LoopPingPong=2202,t.LoopRepeat=2201,t.LuminanceAlphaFormat=1025,t.LuminanceFormat=1024,t.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},t.Material=Ye,t.MaterialLoader=Ic,t.Math=gt,t.MathUtils=gt,t.Matrix3=yt,t.Matrix4=ue,t.MaxEquation=104,t.Mesh=Vn,t.MeshBasicMaterial=rn,t.MeshDepthMaterial=Hs,t.MeshDistanceMaterial=Gs,t.MeshFaceMaterial=function(t){return console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead."),t},t.MeshLambertMaterial=Ul,t.MeshMatcapMaterial=Hl,t.MeshNormalMaterial=Ol,t.MeshPhongMaterial=Bl,t.MeshPhysicalMaterial=zl,t.MeshStandardMaterial=Nl,t.MeshToonMaterial=Fl,t.MinEquation=103,t.MirroredRepeatWrapping=d,t.MixOperation=1,t.MultiMaterial=function(t=[]){return console.warn("THREE.MultiMaterial has been removed. Use an Array instead."),t.isMultiMaterial=!0,t.materials=t,t.clone=function(){return t.slice()},t},t.MultiplyBlending=4,t.MultiplyOperation=0,t.NearestFilter=p,t.NearestMipMapLinearFilter=1005,t.NearestMipMapNearestFilter=1004,t.NearestMipmapLinearFilter=f,t.NearestMipmapNearestFilter=m,t.NeverDepth=0,t.NeverStencilFunc=512,t.NoBlending=0,t.NoColors=0,t.NoToneMapping=0,t.NormalAnimationBlendMode=j,t.NormalBlending=1,t.NotEqualDepth=7,t.NotEqualStencilFunc=517,t.NumberKeyframeTrack=Ql,t.Object3D=Be,t.ObjectLoader=class extends oc{constructor(t){super(t)}load(t,e,n,i){const r=this,s=""===this.path?Nc.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||s;const a=new cc(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(t,function(n){let s=null;try{s=JSON.parse(n)}catch(e){return void 0!==i&&i(e),void console.error("THREE:ObjectLoader: Can't parse "+t+".",e.message)}const a=s.metadata;void 0!==a&&void 0!==a.type&&"geometry"!==a.type.toLowerCase()?r.parse(s,e):console.error("THREE.ObjectLoader: Can't load "+t)},n,i)}async loadAsync(t,e){const n=""===this.path?Nc.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||n;const i=new cc(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials);const r=await i.loadAsync(t,e),s=JSON.parse(r),a=s.metadata;if(void 0===a||void 0===a.type||"geometry"===a.type.toLowerCase())throw new Error("THREE.ObjectLoader: Can't load "+t);return await this.parseAsync(s)}parse(t,e){const n=this.parseAnimations(t.animations),i=this.parseShapes(t.shapes),r=this.parseGeometries(t.geometries,i),s=this.parseImages(t.images,function(){void 0!==e&&e(l)}),a=this.parseTextures(t.textures,s),o=this.parseMaterials(t.materials,a),l=this.parseObject(t.object,r,o,a,n),c=this.parseSkeletons(t.skeletons,l);if(this.bindSkeletons(l,c),void 0!==e){let t=!1;for(const e in s)if(s[e]instanceof HTMLImageElement){t=!0;break}!1===t&&e(l)}return l}async parseAsync(t){const e=this.parseAnimations(t.animations),n=this.parseShapes(t.shapes),i=this.parseGeometries(t.geometries,n),r=await this.parseImagesAsync(t.images),s=this.parseTextures(t.textures,r),a=this.parseMaterials(t.materials,s),o=this.parseObject(t.object,i,a,s,e),l=this.parseSkeletons(t.skeletons,o);return this.bindSkeletons(o,l),o}parseShapes(t){const e={};if(void 0!==t)for(let n=0,i=t.length;n<i;n++){const i=new Vo().fromJSON(t[n]);e[i.uuid]=i}return e}parseSkeletons(t,e){const n={},i={};if(e.traverse(function(t){t.isBone&&(i[t.uuid]=t)}),void 0!==t)for(let e=0,r=t.length;e<r;e++){const r=new Ba().fromJSON(t[e],i);n[r.uuid]=r}return n}parseGeometries(t,e){const n={};if(void 0!==t){const i=new Bc;for(let r=0,s=t.length;r<s;r++){let s;const a=t[r];switch(a.type){case"BufferGeometry":case"InstancedBufferGeometry":s=i.parse(a);break;case"Geometry":console.error("THREE.ObjectLoader: The legacy Geometry type is no longer supported.");break;default:a.type in Dl?s=Dl[a.type].fromJSON(a,e):console.warn(`THREE.ObjectLoader: Unsupported geometry type "${a.type}"`);}s.uuid=a.uuid,void 0!==a.name&&(s.name=a.name),!0===s.isBufferGeometry&&void 0!==a.userData&&(s.userData=a.userData),n[a.uuid]=s}}return n}parseMaterials(t,e){const n={},i={};if(void 0!==t){const r=new Ic;r.setTextures(e);for(let e=0,s=t.length;e<s;e++){const s=t[e];if("MultiMaterial"===s.type){const t=[];for(let e=0;e<s.materials.length;e++){const i=s.materials[e];void 0===n[i.uuid]&&(n[i.uuid]=r.parse(i)),t.push(n[i.uuid])}i[s.uuid]=t}else void 0===n[s.uuid]&&(n[s.uuid]=r.parse(s)),i[s.uuid]=n[s.uuid]}}return i}parseAnimations(t){const e={};if(void 0!==t)for(let n=0;n<t.length;n++){const i=t[n],r=nc.parse(i);e[r.uuid]=r}return e}parseImages(t,e){const n=this,i={};let r;function s(t){if("string"==typeof t){const e=t;return function(t){return n.manager.itemStart(t),r.load(t,function(){n.manager.itemEnd(t)},void 0,function(){n.manager.itemError(t),n.manager.itemEnd(t)})}(/^(\/\/)|([a-z]+:(\/\/)?)/i.test(e)?e:n.resourcePath+e)}return t.data?{data:Mt(t.type,t.data),width:t.width,height:t.height}:null}if(void 0!==t&&t.length>0){const n=new sc(e);r=new hc(n),r.setCrossOrigin(this.crossOrigin);for(let e=0,n=t.length;e<n;e++){const n=t[e],r=n.url;if(Array.isArray(r)){i[n.uuid]=[];for(let t=0,e=r.length;t<e;t++){const e=s(r[t]);null!==e&&(e instanceof HTMLImageElement?i[n.uuid].push(e):i[n.uuid].push(new Ia(e.data,e.width,e.height)))}}else{const t=s(n.url);null!==t&&(i[n.uuid]=t)}}}return i}async parseImagesAsync(t){const e=this,n={};let i;async function r(t){if("string"==typeof t){const n=t,r=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(n)?n:e.resourcePath+n;return await i.loadAsync(r)}return t.data?{data:Mt(t.type,t.data),width:t.width,height:t.height}:null}if(void 0!==t&&t.length>0){i=new hc(this.manager),i.setCrossOrigin(this.crossOrigin);for(let e=0,i=t.length;e<i;e++){const i=t[e],s=i.url;if(Array.isArray(s)){n[i.uuid]=[];for(let t=0,e=s.length;t<e;t++){const e=s[t],a=await r(e);null!==a&&(a instanceof HTMLImageElement?n[i.uuid].push(a):n[i.uuid].push(new Ia(a.data,a.width,a.height)))}}else{const t=await r(i.url);null!==t&&(n[i.uuid]=t)}}}return n}parseTextures(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])}const i={};if(void 0!==t)for(let r=0,s=t.length;r<s;r++){const s=t[r];let a;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);const o=e[s.image];Array.isArray(o)?(a=new ti(o),6===o.length&&(a.needsUpdate=!0)):(a=o&&o.data?new Ia(o.data,o.width,o.height):new At(o),o&&(a.needsUpdate=!0)),a.uuid=s.uuid,void 0!==s.name&&(a.name=s.name),void 0!==s.mapping&&(a.mapping=n(s.mapping,Fc)),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],Oc),a.wrapT=n(s.wrap[1],Oc)),void 0!==s.format&&(a.format=s.format),void 0!==s.type&&(a.type=s.type),void 0!==s.encoding&&(a.encoding=s.encoding),void 0!==s.minFilter&&(a.minFilter=n(s.minFilter,Uc)),void 0!==s.magFilter&&(a.magFilter=n(s.magFilter,Uc)),void 0!==s.anisotropy&&(a.anisotropy=s.anisotropy),void 0!==s.flipY&&(a.flipY=s.flipY),void 0!==s.premultiplyAlpha&&(a.premultiplyAlpha=s.premultiplyAlpha),void 0!==s.unpackAlignment&&(a.unpackAlignment=s.unpackAlignment),void 0!==s.userData&&(a.userData=s.userData),i[s.uuid]=a}return i}parseObject(t,e,n,i,r){let s,a,o;function l(t){return void 0===e[t]&&console.warn("THREE.ObjectLoader: Undefined geometry",t),e[t]}function c(t){if(void 0!==t){if(Array.isArray(t)){const e=[];for(let i=0,r=t.length;i<r;i++){const r=t[i];void 0===n[r]&&console.warn("THREE.ObjectLoader: Undefined material",r),e.push(n[r])}return e}return void 0===n[t]&&console.warn("THREE.ObjectLoader: Undefined material",t),n[t]}}function h(t){return void 0===i[t]&&console.warn("THREE.ObjectLoader: Undefined texture",t),i[t]}switch(t.type){case"Scene":s=new ia,void 0!==t.background&&(Number.isInteger(t.background)?s.background=new nn(t.background):s.background=h(t.background)),void 0!==t.environment&&(s.environment=h(t.environment)),void 0!==t.fog&&("Fog"===t.fog.type?s.fog=new na(t.fog.color,t.fog.near,t.fog.far):"FogExp2"===t.fog.type&&(s.fog=new ea(t.fog.color,t.fog.density)));break;case"PerspectiveCamera":s=new Qn(t.fov,t.aspect,t.near,t.far),void 0!==t.focus&&(s.focus=t.focus),void 0!==t.zoom&&(s.zoom=t.zoom),void 0!==t.filmGauge&&(s.filmGauge=t.filmGauge),void 0!==t.filmOffset&&(s.filmOffset=t.filmOffset),void 0!==t.view&&(s.view=Object.assign({},t.view));break;case"OrthographicCamera":s=new Mi(t.left,t.right,t.top,t.bottom,t.near,t.far),void 0!==t.zoom&&(s.zoom=t.zoom),void 0!==t.view&&(s.view=Object.assign({},t.view));break;case"AmbientLight":s=new Rc(t.color,t.intensity);break;case"DirectionalLight":s=new Lc(t.color,t.intensity);break;case"PointLight":s=new Ec(t.color,t.intensity,t.distance,t.decay);break;case"RectAreaLight":s=new Cc(t.color,t.intensity,t.width,t.height);break;case"SpotLight":s=new Mc(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case"HemisphereLight":s=new fc(t.color,t.groundColor,t.intensity);break;case"LightProbe":s=new Dc().fromJSON(t);break;case"SkinnedMesh":a=l(t.geometry),o=c(t.material),s=new Pa(a,o),void 0!==t.bindMode&&(s.bindMode=t.bindMode),void 0!==t.bindMatrix&&s.bindMatrix.fromArray(t.bindMatrix),void 0!==t.skeleton&&(s.skeleton=t.skeleton);break;case"Mesh":a=l(t.geometry),o=c(t.material),s=new Vn(a,o);break;case"InstancedMesh":a=l(t.geometry),o=c(t.material);const e=t.count,n=t.instanceMatrix,i=t.instanceColor;s=new ka(a,o,e),s.instanceMatrix=new Fa(new Float32Array(n.array),16),void 0!==i&&(s.instanceColor=new Fa(new Float32Array(i.array),i.itemSize));break;case"LOD":s=new Ta;break;case"Line":s=new Ya(l(t.geometry),c(t.material));break;case"LineLoop":s=new $a(l(t.geometry),c(t.material));break;case"LineSegments":s=new Ka(l(t.geometry),c(t.material));break;case"PointCloud":case"Points":s=new so(l(t.geometry),c(t.material));break;case"Sprite":s=new Ma(c(t.material));break;case"Group":s=new Xs;break;case"Bone":s=new Da;break;default:s=new Be;}if(s.uuid=t.uuid,void 0!==t.name&&(s.name=t.name),void 0!==t.matrix?(s.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&&(s.matrixAutoUpdate=t.matrixAutoUpdate),s.matrixAutoUpdate&&s.matrix.decompose(s.position,s.quaternion,s.scale)):(void 0!==t.position&&s.position.fromArray(t.position),void 0!==t.rotation&&s.rotation.fromArray(t.rotation),void 0!==t.quaternion&&s.quaternion.fromArray(t.quaternion),void 0!==t.scale&&s.scale.fromArray(t.scale)),void 0!==t.castShadow&&(s.castShadow=t.castShadow),void 0!==t.receiveShadow&&(s.receiveShadow=t.receiveShadow),t.shadow&&(void 0!==t.shadow.bias&&(s.shadow.bias=t.shadow.bias),void 0!==t.shadow.normalBias&&(s.shadow.normalBias=t.shadow.normalBias),void 0!==t.shadow.radius&&(s.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&&s.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&&(s.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&&(s.visible=t.visible),void 0!==t.frustumCulled&&(s.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&&(s.renderOrder=t.renderOrder),void 0!==t.userData&&(s.userData=t.userData),void 0!==t.layers&&(s.layers.mask=t.layers),void 0!==t.children){const a=t.children;for(let t=0;t<a.length;t++)s.add(this.parseObject(a[t],e,n,i,r))}if(void 0!==t.animations){const e=t.animations;for(let t=0;t<e.length;t++){const n=e[t];s.animations.push(r[n])}}if("LOD"===t.type){void 0!==t.autoUpdate&&(s.autoUpdate=t.autoUpdate);const e=t.levels;for(let t=0;t<e.length;t++){const n=e[t],i=s.getObjectByProperty("uuid",n.object);void 0!==i&&s.addLevel(i,n.distance)}}return s}bindSkeletons(t,e){0!==Object.keys(e).length&&t.traverse(function(t){if(!0===t.isSkinnedMesh&&void 0!==t.skeleton){const n=e[t.skeleton];void 0===n?console.warn("THREE.ObjectLoader: No skeleton found with UUID:",t.skeleton):t.bind(n,t.bindMatrix)}})}setTexturePath(t){return console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath()."),this.setResourcePath(t)}},t.ObjectSpaceNormalMap=1,t.OctahedronBufferGeometry=bl,t.OctahedronGeometry=bl,t.OneFactor=201,t.OneMinusDstAlphaFactor=207,t.OneMinusDstColorFactor=209,t.OneMinusSrcAlphaFactor=205,t.OneMinusSrcColorFactor=203,t.OrthographicCamera=Mi,t.PCFShadowMap=1,t.PCFSoftShadowMap=2,t.PMREMGenerator=Fi,t.ParametricGeometry=function(){return console.error("THREE.ParametricGeometry has been moved to /examples/jsm/geometries/ParametricGeometry.js"),new Tn},t.Particle=function(t){return console.warn("THREE.Particle has been renamed to THREE.Sprite."),new Ma(t)},t.ParticleBasicMaterial=function(t){return console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial."),new to(t)},t.ParticleSystem=function(t,e){return console.warn("THREE.ParticleSystem has been renamed to THREE.Points."),new so(t,e)},t.ParticleSystemMaterial=function(t){return console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial."),new to(t)},t.Path=ko,t.PerspectiveCamera=Qn,t.Plane=si,t.PlaneBufferGeometry=ui,t.PlaneGeometry=ui,t.PlaneHelper=class extends Ya{constructor(t,e=1,n=16776960){const i=n,r=new Tn;r.setAttribute("position",new gn([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(),super(r,new Va({color:i,toneMapped:!1})),this.type="PlaneHelper",this.plane=t,this.size=e;const s=new Tn;s.setAttribute("position",new gn([1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1],3)),s.computeBoundingSphere(),this.add(new Vn(s,new rn({color:i,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(t){let e=-this.plane.constant;Math.abs(e)<1e-8&&(e=1e-8),this.scale.set(.5*this.size,.5*this.size,e),this.children[0].material.side=e<0?1:0,this.lookAt(this.plane.normal),super.updateMatrixWorld(t)}},t.PointCloud=function(t,e){return console.warn("THREE.PointCloud has been renamed to THREE.Points."),new so(t,e)},t.PointCloudMaterial=function(t){return console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial."),new to(t)},t.PointLight=Ec,t.PointLightHelper=class extends Vn{constructor(t,e,n){super(new Tl(e,4,2),new rn({wireframe:!0,fog:!1,toneMapped:!1})),this.light=t,this.light.updateMatrixWorld(),this.color=n,this.type="PointLightHelper",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)}},t.Points=so,t.PointsMaterial=to,t.PolarGridHelper=class extends Ka{constructor(t=10,e=16,n=8,i=64,r=4473924,s=8947848){r=new nn(r),s=new nn(s);const a=[],o=[];for(let n=0;n<=e;n++){const i=n/e*(2*Math.PI),l=Math.sin(i)*t,c=Math.cos(i)*t;a.push(0,0,0),a.push(l,0,c);const h=1&n?r:s;o.push(h.r,h.g,h.b),o.push(h.r,h.g,h.b)}for(let e=0;e<=n;e++){const l=1&e?r:s,c=t-t/n*e;for(let t=0;t<i;t++){let e=t/i*(2*Math.PI),n=Math.sin(e)*c,r=Math.cos(e)*c;a.push(n,0,r),o.push(l.r,l.g,l.b),e=(t+1)/i*(2*Math.PI),n=Math.sin(e)*c,r=Math.cos(e)*c,a.push(n,0,r),o.push(l.r,l.g,l.b)}}const l=new Tn;l.setAttribute("position",new gn(a,3)),l.setAttribute("color",new gn(o,3));super(l,new Va({vertexColors:!0,toneMapped:!1})),this.type="PolarGridHelper"}},t.PolyhedronBufferGeometry=mo,t.PolyhedronGeometry=mo,t.PositionalAudio=class extends eh{constructor(t){super(t),this.panner=this.context.createPanner(),this.panner.panningModel="HRTF",this.panner.connect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(t){return this.panner.refDistance=t,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(t){return this.panner.rolloffFactor=t,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(t){return this.panner.distanceModel=t,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(t){return this.panner.maxDistance=t,this}setDirectionalCone(t,e,n){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=n,this}updateMatrixWorld(t){if(super.updateMatrixWorld(t),!0===this.hasPlaybackControl&&!1===this.isPlaying)return;this.matrixWorld.decompose(nh,ih,rh),sh.set(0,0,1).applyQuaternion(ih);const e=this.panner;if(e.positionX){const t=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(nh.x,t),e.positionY.linearRampToValueAtTime(nh.y,t),e.positionZ.linearRampToValueAtTime(nh.z,t),e.orientationX.linearRampToValueAtTime(sh.x,t),e.orientationY.linearRampToValueAtTime(sh.y,t),e.orientationZ.linearRampToValueAtTime(sh.z,t)}else e.setPosition(nh.x,nh.y,nh.z),e.setOrientation(sh.x,sh.y,sh.z)}},t.PropertyBinding=yh,t.PropertyMixer=oh,t.QuadraticBezierCurve=Fo,t.QuadraticBezierCurve3=Oo,t.Quaternion=It,t.QuaternionKeyframeTrack=$l,t.QuaternionLinearInterpolant=Kl,t.REVISION=e,t.RGBADepthPacking=3201,t.RGBAFormat=E,t.RGBAIntegerFormat=1033,t.RGBA_ASTC_10x10_Format=37819,t.RGBA_ASTC_10x5_Format=37816,t.RGBA_ASTC_10x6_Format=37817,t.RGBA_ASTC_10x8_Format=37818,t.RGBA_ASTC_12x10_Format=37820,t.RGBA_ASTC_12x12_Format=37821,t.RGBA_ASTC_4x4_Format=37808,t.RGBA_ASTC_5x4_Format=37809,t.RGBA_ASTC_5x5_Format=37810,t.RGBA_ASTC_6x5_Format=37811,t.RGBA_ASTC_6x6_Format=37812,t.RGBA_ASTC_8x5_Format=37813,t.RGBA_ASTC_8x6_Format=37814,t.RGBA_ASTC_8x8_Format=37815,t.RGBA_BPTC_Format=36492,t.RGBA_ETC2_EAC_Format=O,t.RGBA_PVRTC_2BPPV1_Format=B,t.RGBA_PVRTC_4BPPV1_Format=z,t.RGBA_S3TC_DXT1_Format=C,t.RGBA_S3TC_DXT3_Format=P,t.RGBA_S3TC_DXT5_Format=D,t.RGBDEncoding=$,t.RGBEEncoding=Z,t.RGBEFormat=1023,t.RGBFormat=T,t.RGBIntegerFormat=1032,t.RGBM16Encoding=K,t.RGBM7Encoding=Q,t.RGB_ETC1_Format=36196,t.RGB_ETC2_Format=F,t.RGB_PVRTC_2BPPV1_Format=N,t.RGB_PVRTC_4BPPV1_Format=I,t.RGB_S3TC_DXT1_Format=R,t.RGFormat=1030,t.RGIntegerFormat=1031,t.RawShaderMaterial=bi,t.Ray=he,t.Raycaster=class{constructor(t,e,n=0,i=1/0){this.ray=new he(t,e),this.near=n,this.far=i,this.camera=null,this.layers=new be,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(t,e){this.ray.set(t,e)}setFromCamera(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(),this.camera=e):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),this.camera=e):console.error("THREE.Raycaster: Unsupported camera type: "+e.type)}intersectObject(t,e=!0,n=[]){return Eh(t,this,n,e),n.sort(Th),n}intersectObjects(t,e=!0,n=[]){for(let i=0,r=t.length;i<r;i++)Eh(t[i],this,n,e);return n.sort(Th),n}},t.RectAreaLight=Cc,t.RedFormat=1028,t.RedIntegerFormat=1029,t.ReinhardToneMapping=2,t.RepeatWrapping=h,t.ReplaceStencilOp=7681,t.ReverseSubtractEquation=102,t.RingBufferGeometry=wl,t.RingGeometry=wl,t.SRGB8_ALPHA8_ASTC_10x10_Format=37851,t.SRGB8_ALPHA8_ASTC_10x5_Format=37848,t.SRGB8_ALPHA8_ASTC_10x6_Format=37849,t.SRGB8_ALPHA8_ASTC_10x8_Format=37850,t.SRGB8_ALPHA8_ASTC_12x10_Format=37852,t.SRGB8_ALPHA8_ASTC_12x12_Format=37853,t.SRGB8_ALPHA8_ASTC_4x4_Format=37840,t.SRGB8_ALPHA8_ASTC_5x4_Format=37841,t.SRGB8_ALPHA8_ASTC_5x5_Format=37842,t.SRGB8_ALPHA8_ASTC_6x5_Format=37843,t.SRGB8_ALPHA8_ASTC_6x6_Format=37844,t.SRGB8_ALPHA8_ASTC_8x5_Format=37845,t.SRGB8_ALPHA8_ASTC_8x6_Format=37846,t.SRGB8_ALPHA8_ASTC_8x8_Format=37847,t.Scene=ia,t.SceneUtils=nu,t.ShaderChunk=di,t.ShaderLib=mi,t.ShaderMaterial=Yn,t.ShadowMaterial=Il,t.Shape=Vo,t.ShapeBufferGeometry=Sl,t.ShapeGeometry=Sl,t.ShapePath=class{constructor(){this.type="ShapePath",this.color=new nn,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new ko,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,n,i){return this.currentPath.quadraticCurveTo(t,e,n,i),this}bezierCurveTo(t,e,n,i,r,s){return this.currentPath.bezierCurveTo(t,e,n,i,r,s),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t,e){function n(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n],r=new Vo;r.curves=i.curves,e.push(r)}return e}function i(t,e){const n=e.length;let i=!1;for(let r=n-1,s=0;s<n;r=s++){let n=e[r],a=e[s],o=a.x-n.x,l=a.y-n.y;if(Math.abs(l)>Number.EPSILON){if(l<0&&(n=e[s],o=-o,a=e[r],l=-l),t.y<n.y||t.y>a.y)continue;if(t.y===n.y){if(t.x===n.x)return!0}else{const e=l*(t.x-n.x)-o*(t.y-n.y);if(0===e)return!0;if(e<0)continue;i=!i}}else{if(t.y!==n.y)continue;if(a.x<=t.x&&t.x<=n.x||n.x<=t.x&&t.x<=a.x)return!0}}return i}const r=fl.isClockWise,s=this.subPaths;if(0===s.length)return[];if(!0===e)return n(s);let a,o,l;const c=[];if(1===s.length)return o=s[0],l=new Vo,l.curves=o.curves,c.push(l),c;let h=!r(s[0].getPoints());h=t?!h:h;const u=[],d=[];let p,m,f=[],g=0;d[g]=void 0,f[g]=[];for(let e=0,n=s.length;e<n;e++)o=s[e],p=o.getPoints(),a=r(p),a=t?!a:a,a?(!h&&d[g]&&g++,d[g]={s:new Vo,p:p},d[g].s.curves=o.curves,h&&g++,f[g]=[]):f[g].push({h:o,p:p[0]});if(!d[0])return n(s);if(d.length>1){let t=!1;const e=[];for(let t=0,e=d.length;t<e;t++)u[t]=[];for(let n=0,r=d.length;n<r;n++){const r=f[n];for(let s=0;s<r.length;s++){const a=r[s];let o=!0;for(let r=0;r<d.length;r++)i(a.p,d[r].p)&&(n!==r&&e.push({froms:n,tos:r,hole:s}),o?(o=!1,u[r].push(a)):t=!0);o&&u[n].push(a)}}e.length>0&&(t||(f=u))}for(let t=0,e=d.length;t<e;t++){l=d[t].s,c.push(l),m=f[t];for(let t=0,e=m.length;t<e;t++)l.holes.push(m[t].h)}return c}},t.ShapeUtils=fl,t.ShortType=1011,t.Skeleton=Ba,t.SkeletonHelper=Bh,t.SkinnedMesh=Pa,t.SmoothShading=2,t.Sphere=ne,t.SphereBufferGeometry=Tl,t.SphereGeometry=Tl,t.Spherical=class{constructor(t=1,e=0,n=0){return this.radius=t,this.phi=e,this.theta=n,this}set(t,e,n){return this.radius=t,this.phi=e,this.theta=n,this}copy(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}makeSafe(){const t=1e-6;return this.phi=Math.max(t,Math.min(Math.PI-t,this.phi)),this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(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(ht(e/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}},t.SphericalHarmonics3=Pc,t.SplineCurve=Uo,t.SpotLight=Mc,t.SpotLightHelper=class extends Be{constructor(t,e){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e;const n=new Tn,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];for(let t=0,e=1,n=32;t<n;t++,e++){const r=t/n*Math.PI*2,s=e/n*Math.PI*2;i.push(Math.cos(r),Math.sin(r),1,Math.cos(s),Math.sin(s),1)}n.setAttribute("position",new gn(i,3));const r=new Va({fog:!1,toneMapped:!1});this.cone=new Ka(n,r),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateMatrixWorld();const t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),Dh.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(Dh),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}},t.Sprite=Ma,t.SpriteMaterial=oa,t.SrcAlphaFactor=204,t.SrcAlphaSaturateFactor=210,t.SrcColorFactor=202,t.StaticCopyUsage=35046,t.StaticDrawUsage=et,t.StaticReadUsage=35045,t.StereoCamera=class{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new Qn,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new Qn,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(t){const e=this._cache;if(e.focus!==t.focus||e.fov!==t.fov||e.aspect!==t.aspect*this.aspect||e.near!==t.near||e.far!==t.far||e.zoom!==t.zoom||e.eyeSep!==this.eyeSep){e.focus=t.focus,e.fov=t.fov,e.aspect=t.aspect*this.aspect,e.near=t.near,e.far=t.far,e.zoom=t.zoom,e.eyeSep=this.eyeSep,Jc.copy(t.projectionMatrix);const n=e.eyeSep/2,i=n*e.near/e.focus,r=e.near*Math.tan(ot*e.fov*.5)/e.zoom;let s,a;Xc.elements[12]=-n,qc.elements[12]=n,s=-r*e.aspect+i,a=r*e.aspect+i,Jc.elements[0]=2*e.near/(a-s),Jc.elements[8]=(a+s)/(a-s),this.cameraL.projectionMatrix.copy(Jc),s=-r*e.aspect-i,a=r*e.aspect-i,Jc.elements[0]=2*e.near/(a-s),Jc.elements[8]=(a+s)/(a-s),this.cameraR.projectionMatrix.copy(Jc)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(Xc),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(qc)}},t.StreamCopyUsage=35042,t.StreamDrawUsage=35040,t.StreamReadUsage=35041,t.StringKeyframeTrack=tc,t.SubtractEquation=101,t.SubtractiveBlending=3,t.TOUCH={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},t.TangentSpaceNormalMap=0,t.TetrahedronBufferGeometry=El,t.TetrahedronGeometry=El,t.TextGeometry=function(){return console.error("THREE.TextGeometry has been moved to /examples/jsm/geometries/TextGeometry.js"),new Tn},t.Texture=At,t.TextureLoader=pc,t.TorusBufferGeometry=Al,t.TorusGeometry=Al,t.TorusKnotBufferGeometry=Ll,t.TorusKnotGeometry=Ll,t.Triangle=Xe,t.TriangleFanDrawMode=2,t.TriangleStripDrawMode=1,t.TrianglesDrawMode=0,t.TubeBufferGeometry=Rl,t.TubeGeometry=Rl,t.UVMapping=i,t.Uint16Attribute=function(t,e){return console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead."),new dn(t,e)},t.Uint16BufferAttribute=dn,t.Uint32Attribute=function(t,e){return console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead."),new mn(t,e)},t.Uint32BufferAttribute=mn,t.Uint8Attribute=function(t,e){return console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead."),new cn(t,e)},t.Uint8BufferAttribute=cn,t.Uint8ClampedAttribute=function(t,e){return console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead."),new hn(t,e)},t.Uint8ClampedBufferAttribute=hn,t.Uniform=bh,t.UniformsLib=pi,t.UniformsUtils=Jn,t.UnsignedByteType=x,t.UnsignedInt248Type=S,t.UnsignedIntType=M,t.UnsignedShort4444Type=1017,t.UnsignedShort5551Type=1018,t.UnsignedShort565Type=1019,t.UnsignedShortType=_,t.VSMShadowMap=3,t.Vector2=vt,t.Vector3=Nt,t.Vector4=Rt,t.VectorKeyframeTrack=ec,t.Vertex=function(t,e,n){return console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead."),new Nt(t,e,n)},t.VertexColors=2,t.VideoTexture=oo,t.WebGL1Renderer=ta,t.WebGLCubeRenderTarget=ei,t.WebGLMultipleRenderTargets=Pt,t.WebGLMultisampleRenderTarget=Dt,t.WebGLRenderTarget=Ct,t.WebGLRenderTargetCube=function(t,e,n){return console.warn("THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options )."),new ei(t,n)},t.WebGLRenderer=$s,t.WebGLUtils=js,t.WireframeGeometry=Cl,t.WireframeHelper=function(t,e){return console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead."),new Ka(new Cl(t.geometry),new Va({color:void 0!==e?e:16777215}))},t.WrapAroundEnding=W,t.XHRLoader=function(t){return console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader."),new cc(t)},t.ZeroCurvatureEnding=k,t.ZeroFactor=200,t.ZeroSlopeEnding=V,t.ZeroStencilOp=0,t.sRGBEncoding=J,Object.defineProperty(t,"__esModule",{value:!0})});(function(t,e){e(t.THREE=t.THREE||{})})(this,function(THREE){var Color=THREE.Color,Vector3=THREE.Vector3;class Face3{constructor(a,b,c,normal,color,materialIndex=0){this.a=a;this.b=b;this.c=c;this.normal=normal&&normal.isVector3?normal:new Vector3;this.vertexNormals=Array.isArray(normal)?normal:[];this.color=color&&color.isColor?color:new Color;this.vertexColors=Array.isArray(color)?color:[];this.materialIndex=materialIndex}clone(){return new this.constructor().copy(this)}copy(source){this.a=source.a;this.b=source.b;this.c=source.c;this.normal.copy(source.normal);this.color.copy(source.color);this.materialIndex=source.materialIndex;for(let i=0,il=source.vertexNormals.length;i<il;i++){this.vertexNormals[i]=source.vertexNormals[i].clone()}for(let i=0,il=source.vertexColors.length;i<il;i++){this.vertexColors[i]=source.vertexColors[i].clone()}return this}}THREE.Face3=Face3});(function(t,e){e(t.THREE=t.THREE||{})})(this,function(THREE){var Box3=THREE.Box3,BufferAttribute=THREE.BufferAttribute,BufferGeometry=THREE.BufferGeometry,Color=THREE.Color,EventDispatcher=THREE.EventDispatcher,Float32BufferAttribute=THREE.Float32BufferAttribute,Matrix3=THREE.Matrix3,Matrix4=THREE.Matrix4,MathUtils=THREE.MathUtils,Object3D=THREE.Object3D,Sphere=THREE.Sphere,Vector2=THREE.Vector2,Vector3=THREE.Vector3;const _m1=new Matrix4;const _obj=new Object3D;const _offset=new Vector3;class Geometry extends EventDispatcher{constructor(){super();this.uuid=MathUtils.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=false;this.verticesNeedUpdate=false;this.uvsNeedUpdate=false;this.normalsNeedUpdate=false;this.colorsNeedUpdate=false;this.lineDistancesNeedUpdate=false;this.groupsNeedUpdate=false}applyMatrix4(matrix){const normalMatrix=new Matrix3().getNormalMatrix(matrix);for(let i=0,il=this.vertices.length;i<il;i++){const vertex=this.vertices[i];vertex.applyMatrix4(matrix)}for(let i=0,il=this.faces.length;i<il;i++){const face=this.faces[i];face.normal.applyMatrix3(normalMatrix).normalize();for(let j=0,jl=face.vertexNormals.length;j<jl;j++){face.vertexNormals[j].applyMatrix3(normalMatrix).normalize()}}if(this.boundingBox!==null){this.computeBoundingBox()}if(this.boundingSphere!==null){this.computeBoundingSphere()}this.verticesNeedUpdate=true;this.normalsNeedUpdate=true;return this}rotateX(angle){_m1.makeRotationX(angle);this.applyMatrix4(_m1);return this}rotateY(angle){_m1.makeRotationY(angle);this.applyMatrix4(_m1);return this}rotateZ(angle){_m1.makeRotationZ(angle);this.applyMatrix4(_m1);return this}translate(x,y,z){_m1.makeTranslation(x,y,z);this.applyMatrix4(_m1);return this}scale(x,y,z){_m1.makeScale(x,y,z);this.applyMatrix4(_m1);return this}lookAt(vector){_obj.lookAt(vector);_obj.updateMatrix();this.applyMatrix4(_obj.matrix);return this}fromBufferGeometry(geometry){const scope=this;const index=geometry.index!==null?geometry.index:undefined;const attributes=geometry.attributes;if(attributes.position===undefined){console.error("THREE.Geometry.fromBufferGeometry(): Position attribute required for conversion.");return this}const position=attributes.position;const normal=attributes.normal;const color=attributes.color;const uv=attributes.uv;const uv2=attributes.uv2;if(uv2!==undefined)this.faceVertexUvs[1]=[];for(let i=0;i<position.count;i++){scope.vertices.push(new Vector3().fromBufferAttribute(position,i));if(color!==undefined){scope.colors.push(new Color().fromBufferAttribute(color,i))}}function addFace(a,b,c,materialIndex){const vertexColors=color===undefined?[]:[scope.colors[a].clone(),scope.colors[b].clone(),scope.colors[c].clone()];const vertexNormals=normal===undefined?[]:[new Vector3().fromBufferAttribute(normal,a),new Vector3().fromBufferAttribute(normal,b),new Vector3().fromBufferAttribute(normal,c)];const face=new Face3(a,b,c,vertexNormals,vertexColors,materialIndex);scope.faces.push(face);if(uv!==undefined){scope.faceVertexUvs[0].push([new Vector2().fromBufferAttribute(uv,a),new Vector2().fromBufferAttribute(uv,b),new Vector2().fromBufferAttribute(uv,c)])}if(uv2!==undefined){scope.faceVertexUvs[1].push([new Vector2().fromBufferAttribute(uv2,a),new Vector2().fromBufferAttribute(uv2,b),new Vector2().fromBufferAttribute(uv2,c)])}}const groups=geometry.groups;if(groups.length>0){for(let i=0;i<groups.length;i++){const group=groups[i];const start=group.start;const count=group.count;for(let j=start,jl=start+count;j<jl;j+=3){if(index!==undefined){addFace(index.getX(j),index.getX(j+1),index.getX(j+2),group.materialIndex)}else{addFace(j,j+1,j+2,group.materialIndex)}}}}else{if(index!==undefined){for(let i=0;i<index.count;i+=3){addFace(index.getX(i),index.getX(i+1),index.getX(i+2))}}else{for(let i=0;i<position.count;i+=3){addFace(i,i+1,i+2)}}}this.computeFaceNormals();if(geometry.boundingBox!==null){this.boundingBox=geometry.boundingBox.clone()}if(geometry.boundingSphere!==null){this.boundingSphere=geometry.boundingSphere.clone()}return this}center(){this.computeBoundingBox();this.boundingBox.getCenter(_offset).negate();this.translate(_offset.x,_offset.y,_offset.z);return this}normalize(){this.computeBoundingSphere();const center=this.boundingSphere.center;const radius=this.boundingSphere.radius;const s=radius===0?1:1/radius;const matrix=new Matrix4;matrix.set(s,0,0,-s*center.x,0,s,0,-s*center.y,0,0,s,-s*center.z,0,0,0,1);this.applyMatrix4(matrix);return this}computeFaceNormals(){const cb=new Vector3,ab=new Vector3;for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];const vA=this.vertices[face.a];const vB=this.vertices[face.b];const vC=this.vertices[face.c];cb.subVectors(vC,vB);ab.subVectors(vA,vB);cb.cross(ab);cb.normalize();face.normal.copy(cb)}}computeVertexNormals(areaWeighted=true){const vertices=new Array(this.vertices.length);for(let v=0,vl=this.vertices.length;v<vl;v++){vertices[v]=new Vector3}if(areaWeighted){const cb=new Vector3,ab=new Vector3;for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];const vA=this.vertices[face.a];const vB=this.vertices[face.b];const vC=this.vertices[face.c];cb.subVectors(vC,vB);ab.subVectors(vA,vB);cb.cross(ab);vertices[face.a].add(cb);vertices[face.b].add(cb);vertices[face.c].add(cb)}}else{this.computeFaceNormals();for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];vertices[face.a].add(face.normal);vertices[face.b].add(face.normal);vertices[face.c].add(face.normal)}}for(let v=0,vl=this.vertices.length;v<vl;v++){vertices[v].normalize()}for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];const vertexNormals=face.vertexNormals;if(vertexNormals.length===3){vertexNormals[0].copy(vertices[face.a]);vertexNormals[1].copy(vertices[face.b]);vertexNormals[2].copy(vertices[face.c])}else{vertexNormals[0]=vertices[face.a].clone();vertexNormals[1]=vertices[face.b].clone();vertexNormals[2]=vertices[face.c].clone()}}if(this.faces.length>0){this.normalsNeedUpdate=true}}computeFlatVertexNormals(){this.computeFaceNormals();for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];const vertexNormals=face.vertexNormals;if(vertexNormals.length===3){vertexNormals[0].copy(face.normal);vertexNormals[1].copy(face.normal);vertexNormals[2].copy(face.normal)}else{vertexNormals[0]=face.normal.clone();vertexNormals[1]=face.normal.clone();vertexNormals[2]=face.normal.clone()}}if(this.faces.length>0){this.normalsNeedUpdate=true}}computeMorphNormals(){for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];if(!face.__originalFaceNormal){face.__originalFaceNormal=face.normal.clone()}else{face.__originalFaceNormal.copy(face.normal)}if(!face.__originalVertexNormals)face.__originalVertexNormals=[];for(let i=0,il=face.vertexNormals.length;i<il;i++){if(!face.__originalVertexNormals[i]){face.__originalVertexNormals[i]=face.vertexNormals[i].clone()}else{face.__originalVertexNormals[i].copy(face.vertexNormals[i])}}}const tmpGeo=new Geometry;tmpGeo.faces=this.faces;for(let i=0,il=this.morphTargets.length;i<il;i++){if(!this.morphNormals[i]){this.morphNormals[i]={};this.morphNormals[i].faceNormals=[];this.morphNormals[i].vertexNormals=[];const dstNormalsFace=this.morphNormals[i].faceNormals;const dstNormalsVertex=this.morphNormals[i].vertexNormals;for(let f=0,fl=this.faces.length;f<fl;f++){const faceNormal=new Vector3;const vertexNormals={a:new Vector3,b:new Vector3,c:new Vector3};dstNormalsFace.push(faceNormal);dstNormalsVertex.push(vertexNormals)}}const morphNormals=this.morphNormals[i];tmpGeo.vertices=this.morphTargets[i].vertices;tmpGeo.computeFaceNormals();tmpGeo.computeVertexNormals();for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];const faceNormal=morphNormals.faceNormals[f];const vertexNormals=morphNormals.vertexNormals[f];faceNormal.copy(face.normal);vertexNormals.a.copy(face.vertexNormals[0]);vertexNormals.b.copy(face.vertexNormals[1]);vertexNormals.c.copy(face.vertexNormals[2])}}for(let f=0,fl=this.faces.length;f<fl;f++){const face=this.faces[f];face.normal=face.__originalFaceNormal;face.vertexNormals=face.__originalVertexNormals}}computeBoundingBox(){if(this.boundingBox===null){this.boundingBox=new Box3}this.boundingBox.setFromPoints(this.vertices)}computeBoundingSphere(){if(this.boundingSphere===null){this.boundingSphere=new Sphere}this.boundingSphere.setFromPoints(this.vertices)}merge(geometry,matrix,materialIndexOffset=0){if(!(geometry&&geometry.isGeometry)){console.error("THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.",geometry);return}let normalMatrix;const vertexOffset=this.vertices.length,vertices1=this.vertices,vertices2=geometry.vertices,faces1=this.faces,faces2=geometry.faces,colors1=this.colors,colors2=geometry.colors;if(matrix!==undefined){normalMatrix=new Matrix3().getNormalMatrix(matrix)}for(let i=0,il=vertices2.length;i<il;i++){const vertex=vertices2[i];const vertexCopy=vertex.clone();if(matrix!==undefined)vertexCopy.applyMatrix4(matrix);vertices1.push(vertexCopy)}for(let i=0,il=colors2.length;i<il;i++){colors1.push(colors2[i].clone())}for(let i=0,il=faces2.length;i<il;i++){const face=faces2[i];let normal,color;const faceVertexNormals=face.vertexNormals,faceVertexColors=face.vertexColors;const faceCopy=new Face3(face.a+vertexOffset,face.b+vertexOffset,face.c+vertexOffset);faceCopy.normal.copy(face.normal);if(normalMatrix!==undefined){faceCopy.normal.applyMatrix3(normalMatrix).normalize()}for(let j=0,jl=faceVertexNormals.length;j<jl;j++){normal=faceVertexNormals[j].clone();if(normalMatrix!==undefined){normal.applyMatrix3(normalMatrix).normalize()}faceCopy.vertexNormals.push(normal)}faceCopy.color.copy(face.color);for(let j=0,jl=faceVertexColors.length;j<jl;j++){color=faceVertexColors[j];faceCopy.vertexColors.push(color.clone())}faceCopy.materialIndex=face.materialIndex+materialIndexOffset;faces1.push(faceCopy)}for(let i=0,il=geometry.faceVertexUvs.length;i<il;i++){const faceVertexUvs2=geometry.faceVertexUvs[i];if(this.faceVertexUvs[i]===undefined)this.faceVertexUvs[i]=[];for(let j=0,jl=faceVertexUvs2.length;j<jl;j++){const uvs2=faceVertexUvs2[j],uvsCopy=[];for(let k=0,kl=uvs2.length;k<kl;k++){uvsCopy.push(uvs2[k].clone())}this.faceVertexUvs[i].push(uvsCopy)}}}mergeMesh(mesh){if(!(mesh&&mesh.isMesh)){console.error("THREE.Geometry.mergeMesh(): mesh not an instance of THREE.Mesh.",mesh);return}if(mesh.matrixAutoUpdate)mesh.updateMatrix();this.merge(mesh.geometry,mesh.matrix)}mergeVertices(precisionPoints=4){const verticesMap={};const unique=[],changes=[];const precision=Math.pow(10,precisionPoints);for(let i=0,il=this.vertices.length;i<il;i++){const v=this.vertices[i];const key=Math.round(v.x*precision)+"_"+Math.round(v.y*precision)+"_"+Math.round(v.z*precision);if(verticesMap[key]===undefined){verticesMap[key]=i;unique.push(this.vertices[i]);changes[i]=unique.length-1}else{changes[i]=changes[verticesMap[key]]}}const faceIndicesToRemove=[];for(let i=0,il=this.faces.length;i<il;i++){const face=this.faces[i];face.a=changes[face.a];face.b=changes[face.b];face.c=changes[face.c];const indices=[face.a,face.b,face.c];for(let n=0;n<3;n++){if(indices[n]===indices[(n+1)%3]){faceIndicesToRemove.push(i);break}}}for(let i=faceIndicesToRemove.length-1;i>=0;i--){const idx=faceIndicesToRemove[i];this.faces.splice(idx,1);for(let j=0,jl=this.faceVertexUvs.length;j<jl;j++){this.faceVertexUvs[j].splice(idx,1)}}const diff=this.vertices.length-unique.length;this.vertices=unique;return diff}setFromPoints(points){this.vertices=[];for(let i=0,l=points.length;i<l;i++){const point=points[i];this.vertices.push(new Vector3(point.x,point.y,point.z||0))}return this}sortFacesByMaterialIndex(){const faces=this.faces;const length=faces.length;for(let i=0;i<length;i++){faces[i]._id=i}function materialIndexSort(a,b){return a.materialIndex-b.materialIndex}faces.sort(materialIndexSort);const uvs1=this.faceVertexUvs[0];const uvs2=this.faceVertexUvs[1];let newUvs1,newUvs2;if(uvs1&&uvs1.length===length)newUvs1=[];if(uvs2&&uvs2.length===length)newUvs2=[];for(let i=0;i<length;i++){const id=faces[i]._id;if(newUvs1)newUvs1.push(uvs1[id]);if(newUvs2)newUvs2.push(uvs2[id])}if(newUvs1)this.faceVertexUvs[0]=newUvs1;if(newUvs2)this.faceVertexUvs[1]=newUvs2}toJSON(){const data={metadata:{version:4.5,type:"Geometry",generator:"Geometry.toJSON"}};data.uuid=this.uuid;data.type=this.type;if(this.name!=="")data.name=this.name;if(this.parameters!==undefined){const parameters=this.parameters;for(const key in parameters){if(parameters[key]!==undefined)data[key]=parameters[key]}return data}const vertices=[];for(let i=0;i<this.vertices.length;i++){const vertex=this.vertices[i];vertices.push(vertex.x,vertex.y,vertex.z)}const faces=[];const normals=[];const normalsHash={};const colors=[];const colorsHash={};const uvs=[];const uvsHash={};for(let i=0;i<this.faces.length;i++){const face=this.faces[i];const hasMaterial=true;const hasFaceUv=false;const hasFaceVertexUv=this.faceVertexUvs[0][i]!==undefined;const hasFaceNormal=face.normal.length()>0;const hasFaceVertexNormal=face.vertexNormals.length>0;const hasFaceColor=face.color.r!==1||face.color.g!==1||face.color.b!==1;const hasFaceVertexColor=face.vertexColors.length>0;let faceType=0;faceType=setBit(faceType,0,0);faceType=setBit(faceType,1,hasMaterial);faceType=setBit(faceType,2,hasFaceUv);faceType=setBit(faceType,3,hasFaceVertexUv);faceType=setBit(faceType,4,hasFaceNormal);faceType=setBit(faceType,5,hasFaceVertexNormal);faceType=setBit(faceType,6,hasFaceColor);faceType=setBit(faceType,7,hasFaceVertexColor);faces.push(faceType);faces.push(face.a,face.b,face.c);faces.push(face.materialIndex);if(hasFaceVertexUv){const faceVertexUvs=this.faceVertexUvs[0][i];faces.push(getUvIndex(faceVertexUvs[0]),getUvIndex(faceVertexUvs[1]),getUvIndex(faceVertexUvs[2]))}if(hasFaceNormal){faces.push(getNormalIndex(face.normal))}if(hasFaceVertexNormal){const vertexNormals=face.vertexNormals;faces.push(getNormalIndex(vertexNormals[0]),getNormalIndex(vertexNormals[1]),getNormalIndex(vertexNormals[2]))}if(hasFaceColor){faces.push(getColorIndex(face.color))}if(hasFaceVertexColor){const vertexColors=face.vertexColors;faces.push(getColorIndex(vertexColors[0]),getColorIndex(vertexColors[1]),getColorIndex(vertexColors[2]))}}function setBit(value,position,enabled){return enabled?value|1<<position:value&~(1<<position)}function getNormalIndex(normal){const hash=normal.x.toString()+normal.y.toString()+normal.z.toString();if(normalsHash[hash]!==undefined){return normalsHash[hash]}normalsHash[hash]=normals.length/3;normals.push(normal.x,normal.y,normal.z);return normalsHash[hash]}function getColorIndex(color){const hash=color.r.toString()+color.g.toString()+color.b.toString();if(colorsHash[hash]!==undefined){return colorsHash[hash]}colorsHash[hash]=colors.length;colors.push(color.getHex());return colorsHash[hash]}function getUvIndex(uv){const hash=uv.x.toString()+uv.y.toString();if(uvsHash[hash]!==undefined){return uvsHash[hash]}uvsHash[hash]=uvs.length/2;uvs.push(uv.x,uv.y);return uvsHash[hash]}data.data={};data.data.vertices=vertices;data.data.normals=normals;if(colors.length>0)data.data.colors=colors;if(uvs.length>0)data.data.uvs=[uvs];data.data.faces=faces;return data}clone(){return new Geometry().copy(this)}copy(source){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=source.name;const vertices=source.vertices;for(let i=0,il=vertices.length;i<il;i++){this.vertices.push(vertices[i].clone())}const colors=source.colors;for(let i=0,il=colors.length;i<il;i++){this.colors.push(colors[i].clone())}const faces=source.faces;for(let i=0,il=faces.length;i<il;i++){this.faces.push(faces[i].clone())}for(let i=0,il=source.faceVertexUvs.length;i<il;i++){const faceVertexUvs=source.faceVertexUvs[i];if(this.faceVertexUvs[i]===undefined){this.faceVertexUvs[i]=[]}for(let j=0,jl=faceVertexUvs.length;j<jl;j++){const uvs=faceVertexUvs[j],uvsCopy=[];for(let k=0,kl=uvs.length;k<kl;k++){const uv=uvs[k];uvsCopy.push(uv.clone())}this.faceVertexUvs[i].push(uvsCopy)}}const morphTargets=source.morphTargets;for(let i=0,il=morphTargets.length;i<il;i++){const morphTarget={};morphTarget.name=morphTargets[i].name;if(morphTargets[i].vertices!==undefined){morphTarget.vertices=[];for(let j=0,jl=morphTargets[i].vertices.length;j<jl;j++){morphTarget.vertices.push(morphTargets[i].vertices[j].clone())}}if(morphTargets[i].normals!==undefined){morphTarget.normals=[];for(let j=0,jl=morphTargets[i].normals.length;j<jl;j++){morphTarget.normals.push(morphTargets[i].normals[j].clone())}}this.morphTargets.push(morphTarget)}const morphNormals=source.morphNormals;for(let i=0,il=morphNormals.length;i<il;i++){const morphNormal={};if(morphNormals[i].vertexNormals!==undefined){morphNormal.vertexNormals=[];for(let j=0,jl=morphNormals[i].vertexNormals.length;j<jl;j++){const srcVertexNormal=morphNormals[i].vertexNormals[j];const destVertexNormal={};destVertexNormal.a=srcVertexNormal.a.clone();destVertexNormal.b=srcVertexNormal.b.clone();destVertexNormal.c=srcVertexNormal.c.clone();morphNormal.vertexNormals.push(destVertexNormal)}}if(morphNormals[i].faceNormals!==undefined){morphNormal.faceNormals=[];for(let j=0,jl=morphNormals[i].faceNormals.length;j<jl;j++){morphNormal.faceNormals.push(morphNormals[i].faceNormals[j].clone())}}this.morphNormals.push(morphNormal)}const skinWeights=source.skinWeights;for(let i=0,il=skinWeights.length;i<il;i++){this.skinWeights.push(skinWeights[i].clone())}const skinIndices=source.skinIndices;for(let i=0,il=skinIndices.length;i<il;i++){this.skinIndices.push(skinIndices[i].clone())}const lineDistances=source.lineDistances;for(let i=0,il=lineDistances.length;i<il;i++){this.lineDistances.push(lineDistances[i])}const boundingBox=source.boundingBox;if(boundingBox!==null){this.boundingBox=boundingBox.clone()}const boundingSphere=source.boundingSphere;if(boundingSphere!==null){this.boundingSphere=boundingSphere.clone()}this.elementsNeedUpdate=source.elementsNeedUpdate;this.verticesNeedUpdate=source.verticesNeedUpdate;this.uvsNeedUpdate=source.uvsNeedUpdate;this.normalsNeedUpdate=source.normalsNeedUpdate;this.colorsNeedUpdate=source.colorsNeedUpdate;this.lineDistancesNeedUpdate=source.lineDistancesNeedUpdate;this.groupsNeedUpdate=source.groupsNeedUpdate;return this}toBufferGeometry(){const geometry=new DirectGeometry().fromGeometry(this);const buffergeometry=new BufferGeometry;const positions=new Float32Array(geometry.vertices.length*3);buffergeometry.setAttribute("position",new BufferAttribute(positions,3).copyVector3sArray(geometry.vertices));if(geometry.normals.length>0){const normals=new Float32Array(geometry.normals.length*3);buffergeometry.setAttribute("normal",new BufferAttribute(normals,3).copyVector3sArray(geometry.normals))}if(geometry.colors.length>0){const colors=new Float32Array(geometry.colors.length*3);buffergeometry.setAttribute("color",new BufferAttribute(colors,3).copyColorsArray(geometry.colors))}if(geometry.uvs.length>0){const uvs=new Float32Array(geometry.uvs.length*2);buffergeometry.setAttribute("uv",new BufferAttribute(uvs,2).copyVector2sArray(geometry.uvs))}if(geometry.uvs2.length>0){const uvs2=new Float32Array(geometry.uvs2.length*2);buffergeometry.setAttribute("uv2",new BufferAttribute(uvs2,2).copyVector2sArray(geometry.uvs2))}buffergeometry.groups=geometry.groups;for(const name in geometry.morphTargets){const array=[];const morphTargets=geometry.morphTargets[name];for(let i=0,l=morphTargets.length;i<l;i++){const morphTarget=morphTargets[i];const attribute=new Float32BufferAttribute(morphTarget.data.length*3,3);attribute.name=morphTarget.name;array.push(attribute.copyVector3sArray(morphTarget.data))}buffergeometry.morphAttributes[name]=array}if(geometry.skinIndices.length>0){const skinIndices=new Float32BufferAttribute(geometry.skinIndices.length*4,4);buffergeometry.setAttribute("skinIndex",skinIndices.copyVector4sArray(geometry.skinIndices))}if(geometry.skinWeights.length>0){const skinWeights=new Float32BufferAttribute(geometry.skinWeights.length*4,4);buffergeometry.setAttribute("skinWeight",skinWeights.copyVector4sArray(geometry.skinWeights))}if(geometry.boundingSphere!==null){buffergeometry.boundingSphere=geometry.boundingSphere.clone()}if(geometry.boundingBox!==null){buffergeometry.boundingBox=geometry.boundingBox.clone()}return buffergeometry}computeTangents(){console.error("THREE.Geometry: .computeTangents() has been removed.")}computeLineDistances(){console.error("THREE.Geometry: .computeLineDistances() has been removed. Use THREE.Line.computeLineDistances() instead.")}applyMatrix(matrix){console.warn("THREE.Geometry: .applyMatrix() has been renamed to .applyMatrix4().");return this.applyMatrix4(matrix)}dispose(){this.dispatchEvent({type:"dispose"})}static createBufferGeometryFromObject(object){let buffergeometry=new BufferGeometry;const geometry=object.geometry;if(object.isPoints||object.isLine){const positions=new Float32BufferAttribute(geometry.vertices.length*3,3);const colors=new Float32BufferAttribute(geometry.colors.length*3,3);buffergeometry.setAttribute("position",positions.copyVector3sArray(geometry.vertices));buffergeometry.setAttribute("color",colors.copyColorsArray(geometry.colors));if(geometry.lineDistances&&geometry.lineDistances.length===geometry.vertices.length){const lineDistances=new Float32BufferAttribute(geometry.lineDistances.length,1);buffergeometry.setAttribute("lineDistance",lineDistances.copyArray(geometry.lineDistances))}if(geometry.boundingSphere!==null){buffergeometry.boundingSphere=geometry.boundingSphere.clone()}if(geometry.boundingBox!==null){buffergeometry.boundingBox=geometry.boundingBox.clone()}}else if(object.isMesh){buffergeometry=geometry.toBufferGeometry()}return buffergeometry}}Geometry.prototype.isGeometry=true;class DirectGeometry{constructor(){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=false;this.normalsNeedUpdate=false;this.colorsNeedUpdate=false;this.uvsNeedUpdate=false;this.groupsNeedUpdate=false}computeGroups(geometry){const groups=[];let group,i;let materialIndex=undefined;const faces=geometry.faces;for(i=0;i<faces.length;i++){const face=faces[i];if(face.materialIndex!==materialIndex){materialIndex=face.materialIndex;if(group!==undefined){group.count=i*3-group.start;groups.push(group)}group={start:i*3,materialIndex:materialIndex}}}if(group!==undefined){group.count=i*3-group.start;groups.push(group)}this.groups=groups}fromGeometry(geometry){const faces=geometry.faces;const vertices=geometry.vertices;const faceVertexUvs=geometry.faceVertexUvs;const hasFaceVertexUv=faceVertexUvs[0]&&faceVertexUvs[0].length>0;const hasFaceVertexUv2=faceVertexUvs[1]&&faceVertexUvs[1].length>0;const morphTargets=geometry.morphTargets;const morphTargetsLength=morphTargets.length;let morphTargetsPosition;if(morphTargetsLength>0){morphTargetsPosition=[];for(let i=0;i<morphTargetsLength;i++){morphTargetsPosition[i]={name:morphTargets[i].name,data:[]}}this.morphTargets.position=morphTargetsPosition}const morphNormals=geometry.morphNormals;const morphNormalsLength=morphNormals.length;let morphTargetsNormal;if(morphNormalsLength>0){morphTargetsNormal=[];for(let i=0;i<morphNormalsLength;i++){morphTargetsNormal[i]={name:morphNormals[i].name,data:[]}}this.morphTargets.normal=morphTargetsNormal}const skinIndices=geometry.skinIndices;const skinWeights=geometry.skinWeights;const hasSkinIndices=skinIndices.length===vertices.length;const hasSkinWeights=skinWeights.length===vertices.length;if(vertices.length>0&&faces.length===0){console.error("THREE.DirectGeometry: Faceless geometries are not supported.")}for(let i=0;i<faces.length;i++){const face=faces[i];this.vertices.push(vertices[face.a],vertices[face.b],vertices[face.c]);const vertexNormals=face.vertexNormals;if(vertexNormals.length===3){this.normals.push(vertexNormals[0],vertexNormals[1],vertexNormals[2])}else{const normal=face.normal;this.normals.push(normal,normal,normal)}const vertexColors=face.vertexColors;if(vertexColors.length===3){this.colors.push(vertexColors[0],vertexColors[1],vertexColors[2])}else{const color=face.color;this.colors.push(color,color,color)}if(hasFaceVertexUv===true){const vertexUvs=faceVertexUvs[0][i];if(vertexUvs!==undefined){this.uvs.push(vertexUvs[0],vertexUvs[1],vertexUvs[2])}else{console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv ",i);this.uvs.push(new Vector2,new Vector2,new Vector2)}}if(hasFaceVertexUv2===true){const vertexUvs=faceVertexUvs[1][i];if(vertexUvs!==undefined){this.uvs2.push(vertexUvs[0],vertexUvs[1],vertexUvs[2])}else{console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 ",i);this.uvs2.push(new Vector2,new Vector2,new Vector2)}}for(let j=0;j<morphTargetsLength;j++){const morphTarget=morphTargets[j].vertices;morphTargetsPosition[j].data.push(morphTarget[face.a],morphTarget[face.b],morphTarget[face.c])}for(let j=0;j<morphNormalsLength;j++){const morphNormal=morphNormals[j].vertexNormals[i];morphTargetsNormal[j].data.push(morphNormal.a,morphNormal.b,morphNormal.c)}if(hasSkinIndices){this.skinIndices.push(skinIndices[face.a],skinIndices[face.b],skinIndices[face.c])}if(hasSkinWeights){this.skinWeights.push(skinWeights[face.a],skinWeights[face.b],skinWeights[face.c])}}this.computeGroups(geometry);this.verticesNeedUpdate=geometry.verticesNeedUpdate;this.normalsNeedUpdate=geometry.normalsNeedUpdate;this.colorsNeedUpdate=geometry.colorsNeedUpdate;this.uvsNeedUpdate=geometry.uvsNeedUpdate;this.groupsNeedUpdate=geometry.groupsNeedUpdate;if(geometry.boundingSphere!==null){this.boundingSphere=geometry.boundingSphere.clone()}if(geometry.boundingBox!==null){this.boundingBox=geometry.boundingBox.clone()}return this}}THREE.Geometry=Geometry});(function(t,e){e(t.THREE=t.THREE||{})})(this,function(THREE){var AnimationClip=THREE.AnimationClip,Bone=THREE.Bone,Box3=THREE.Box3,BufferAttribute=THREE.BufferAttribute,BufferGeometry=THREE.BufferGeometry,ClampToEdgeWrapping=THREE.ClampToEdgeWrapping,Color=THREE.Color,DirectionalLight=THREE.DirectionalLight,DoubleSide=THREE.DoubleSide,FileLoader=THREE.FileLoader,FrontSide=THREE.FrontSide,Group=THREE.Group,ImageBitmapLoader=THREE.ImageBitmapLoader,InterleavedBuffer=THREE.InterleavedBuffer,InterleavedBufferAttribute=THREE.InterleavedBufferAttribute,Interpolant=THREE.Interpolant,InterpolateDiscrete=THREE.InterpolateDiscrete,InterpolateLinear=THREE.InterpolateLinear,Line=THREE.Line,LineBasicMaterial=THREE.LineBasicMaterial,LineLoop=THREE.LineLoop,LineSegments=THREE.LineSegments,LinearFilter=THREE.LinearFilter,LinearMipmapLinearFilter=THREE.LinearMipmapLinearFilter,LinearMipmapNearestFilter=THREE.LinearMipmapNearestFilter,Loader=THREE.Loader,LoaderUtils=THREE.LoaderUtils,Material=THREE.Material,MathUtils=THREE.MathUtils,Matrix4=THREE.Matrix4,Mesh=THREE.Mesh,MeshBasicMaterial=THREE.MeshBasicMaterial,MeshPhysicalMaterial=THREE.MeshPhysicalMaterial,MeshStandardMaterial=THREE.MeshStandardMaterial,MirroredRepeatWrapping=THREE.MirroredRepeatWrapping,NearestFilter=THREE.NearestFilter,NearestMipmapLinearFilter=THREE.NearestMipmapLinearFilter,NearestMipmapNearestFilter=THREE.NearestMipmapNearestFilter,NumberKeyframeTrack=THREE.NumberKeyframeTrack,Object3D=THREE.Object3D,OrthographicCamera=THREE.OrthographicCamera,PerspectiveCamera=THREE.PerspectiveCamera,PointLight=THREE.PointLight,Points=THREE.Points,PointsMaterial=THREE.PointsMaterial,PropertyBinding=THREE.PropertyBinding,Quaternion=THREE.Quaternion,QuaternionKeyframeTrack=THREE.QuaternionKeyframeTrack,RGBFormat=THREE.RGBFormat,RepeatWrapping=THREE.RepeatWrapping,Skeleton=THREE.Skeleton,SkinnedMesh=THREE.SkinnedMesh,Sphere=THREE.Sphere,SpotLight=THREE.SpotLight,TangentSpaceNormalMap=THREE.TangentSpaceNormalMap,Texture=THREE.Texture,TextureLoader=THREE.TextureLoader,TriangleFanDrawMode=THREE.TriangleFanDrawMode,TriangleStripDrawMode=THREE.TriangleStripDrawMode,Vector2=THREE.Vector2,Vector3=THREE.Vector3,VectorKeyframeTrack=THREE.VectorKeyframeTrack,sRGBEncoding=THREE.sRGBEncoding;class GLTFLoader extends Loader{constructor(manager){super(manager);this.dracoLoader=null;this.ktx2Loader=null;this.meshoptDecoder=null;this.pluginCallbacks=[];this.register(function(parser){return new GLTFMaterialsClearcoatExtension(parser)});this.register(function(parser){return new GLTFTextureBasisUExtension(parser)});this.register(function(parser){return new GLTFTextureWebPExtension(parser)});this.register(function(parser){return new GLTFMaterialsSheenExtension(parser)});this.register(function(parser){return new GLTFMaterialsTransmissionExtension(parser)});this.register(function(parser){return new GLTFMaterialsVolumeExtension(parser)});this.register(function(parser){return new GLTFMaterialsIorExtension(parser)});this.register(function(parser){return new GLTFMaterialsSpecularExtension(parser)});this.register(function(parser){return new GLTFLightsExtension(parser)});this.register(function(parser){return new GLTFMeshoptCompression(parser)})}load(url,onLoad,onProgress,onError){const scope=this;let resourcePath;if(this.resourcePath!==""){resourcePath=this.resourcePath}else if(this.path!==""){resourcePath=this.path}else{resourcePath=LoaderUtils.extractUrlBase(url)}this.manager.itemStart(url);const _onError=function(e){if(onError){onError(e)}else{console.error(e)}scope.manager.itemError(url);scope.manager.itemEnd(url)};const loader=new FileLoader(this.manager);loader.setPath(this.path);loader.setResponseType("arraybuffer");loader.setRequestHeader(this.requestHeader);loader.setWithCredentials(this.withCredentials);loader.load(url,function(data){try{scope.parse(data,resourcePath,function(gltf){onLoad(gltf);scope.manager.itemEnd(url)},_onError)}catch(e){_onError(e)}},onProgress,_onError)}setDRACOLoader(dracoLoader){this.dracoLoader=dracoLoader;return this}setDDSLoader(){throw new Error("THREE.GLTFLoader: \"MSFT_texture_dds\" no longer supported. Please update to \"KHR_texture_basisu\".")}setKTX2Loader(ktx2Loader){this.ktx2Loader=ktx2Loader;return this}setMeshoptDecoder(meshoptDecoder){this.meshoptDecoder=meshoptDecoder;return this}register(callback){if(this.pluginCallbacks.indexOf(callback)===-1){this.pluginCallbacks.push(callback)}return this}unregister(callback){if(this.pluginCallbacks.indexOf(callback)!==-1){this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(callback),1)}return this}parse(data,path,onLoad,onError){let content;const extensions={};const plugins={};if(typeof data==="string"){content=data}else{const magic=LoaderUtils.decodeText(new Uint8Array(data,0,4));if(magic===BINARY_EXTENSION_HEADER_MAGIC){try{extensions[EXTENSIONS.KHR_BINARY_GLTF]=new GLTFBinaryExtension(data)}catch(error){if(onError)onError(error);return}content=extensions[EXTENSIONS.KHR_BINARY_GLTF].content}else{content=LoaderUtils.decodeText(new Uint8Array(data))}}const json=JSON.parse(content);if(json.asset===undefined||json.asset.version[0]<2){if(onError)onError(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported."));return}const parser=new GLTFParser(json,{path:path||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});parser.fileLoader.setRequestHeader(this.requestHeader);for(let i=0;i<this.pluginCallbacks.length;i++){const plugin=this.pluginCallbacks[i](parser);plugins[plugin.name]=plugin;extensions[plugin.name]=true}if(json.extensionsUsed){for(let i=0;i<json.extensionsUsed.length;++i){const extensionName=json.extensionsUsed[i];const extensionsRequired=json.extensionsRequired||[];switch(extensionName){case EXTENSIONS.KHR_MATERIALS_UNLIT:extensions[extensionName]=new GLTFMaterialsUnlitExtension;break;case EXTENSIONS.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS:extensions[extensionName]=new GLTFMaterialsPbrSpecularGlossinessExtension;break;case EXTENSIONS.KHR_DRACO_MESH_COMPRESSION:extensions[extensionName]=new GLTFDracoMeshCompressionExtension(json,this.dracoLoader);break;case EXTENSIONS.KHR_TEXTURE_TRANSFORM:extensions[extensionName]=new GLTFTextureTransformExtension;break;case EXTENSIONS.KHR_MESH_QUANTIZATION:extensions[extensionName]=new GLTFMeshQuantizationExtension;break;default:if(extensionsRequired.indexOf(extensionName)>=0&&plugins[extensionName]===undefined){console.warn("THREE.GLTFLoader: Unknown extension \""+extensionName+"\".")}}}}parser.setExtensions(extensions);parser.setPlugins(plugins);parser.parse(onLoad,onError)}}function GLTFRegistry(){let objects={};return{get:function(key){return objects[key]},add:function(key,object){objects[key]=object},remove:function(key){delete objects[key]},removeAll:function(){objects={}}}}const EXTENSIONS={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS:"KHR_materials_pbrSpecularGlossiness",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression"};class GLTFLightsExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_LIGHTS_PUNCTUAL;this.cache={refs:{},uses:{}}}_markDefs(){const parser=this.parser;const nodeDefs=this.parser.json.nodes||[];for(let nodeIndex=0,nodeLength=nodeDefs.length;nodeIndex<nodeLength;nodeIndex++){const nodeDef=nodeDefs[nodeIndex];if(nodeDef.extensions&&nodeDef.extensions[this.name]&&nodeDef.extensions[this.name].light!==undefined){parser._addNodeRef(this.cache,nodeDef.extensions[this.name].light)}}}_loadLight(lightIndex){const parser=this.parser;const cacheKey="light:"+lightIndex;let dependency=parser.cache.get(cacheKey);if(dependency)return dependency;const json=parser.json;const extensions=json.extensions&&json.extensions[this.name]||{};const lightDefs=extensions.lights||[];const lightDef=lightDefs[lightIndex];let lightNode;const color=new Color(16777215);if(lightDef.color!==undefined)color.fromArray(lightDef.color);const range=lightDef.range!==undefined?lightDef.range:0;switch(lightDef.type){case"directional":lightNode=new DirectionalLight(color);lightNode.target.position.set(0,0,-1);lightNode.add(lightNode.target);break;case"point":lightNode=new PointLight(color);lightNode.distance=range;break;case"spot":lightNode=new SpotLight(color);lightNode.distance=range;lightDef.spot=lightDef.spot||{};lightDef.spot.innerConeAngle=lightDef.spot.innerConeAngle!==undefined?lightDef.spot.innerConeAngle:0;lightDef.spot.outerConeAngle=lightDef.spot.outerConeAngle!==undefined?lightDef.spot.outerConeAngle:Math.PI/4;lightNode.angle=lightDef.spot.outerConeAngle;lightNode.penumbra=1-lightDef.spot.innerConeAngle/lightDef.spot.outerConeAngle;lightNode.target.position.set(0,0,-1);lightNode.add(lightNode.target);break;default:throw new Error("THREE.GLTFLoader: Unexpected light type: "+lightDef.type);}lightNode.position.set(0,0,0);lightNode.decay=2;if(lightDef.intensity!==undefined)lightNode.intensity=lightDef.intensity;lightNode.name=parser.createUniqueName(lightDef.name||"light_"+lightIndex);dependency=Promise.resolve(lightNode);parser.cache.add(cacheKey,dependency);return dependency}createNodeAttachment(nodeIndex){const self=this;const parser=this.parser;const json=parser.json;const nodeDef=json.nodes[nodeIndex];const lightDef=nodeDef.extensions&&nodeDef.extensions[this.name]||{};const lightIndex=lightDef.light;if(lightIndex===undefined)return null;return this._loadLight(lightIndex).then(function(light){return parser._getNodeRef(self.cache,lightIndex,light)})}}class GLTFMaterialsUnlitExtension{constructor(){this.name=EXTENSIONS.KHR_MATERIALS_UNLIT}getMaterialType(){return MeshBasicMaterial}extendParams(materialParams,materialDef,parser){const pending=[];materialParams.color=new Color(1,1,1);materialParams.opacity=1;const metallicRoughness=materialDef.pbrMetallicRoughness;if(metallicRoughness){if(Array.isArray(metallicRoughness.baseColorFactor)){const array=metallicRoughness.baseColorFactor;materialParams.color.fromArray(array);materialParams.opacity=array[3]}if(metallicRoughness.baseColorTexture!==undefined){pending.push(parser.assignTexture(materialParams,"map",metallicRoughness.baseColorTexture))}}return Promise.all(pending)}}class GLTFMaterialsClearcoatExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_CLEARCOAT}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const pending=[];const extension=materialDef.extensions[this.name];if(extension.clearcoatFactor!==undefined){materialParams.clearcoat=extension.clearcoatFactor}if(extension.clearcoatTexture!==undefined){pending.push(parser.assignTexture(materialParams,"clearcoatMap",extension.clearcoatTexture))}if(extension.clearcoatRoughnessFactor!==undefined){materialParams.clearcoatRoughness=extension.clearcoatRoughnessFactor}if(extension.clearcoatRoughnessTexture!==undefined){pending.push(parser.assignTexture(materialParams,"clearcoatRoughnessMap",extension.clearcoatRoughnessTexture))}if(extension.clearcoatNormalTexture!==undefined){pending.push(parser.assignTexture(materialParams,"clearcoatNormalMap",extension.clearcoatNormalTexture));if(extension.clearcoatNormalTexture.scale!==undefined){const scale=extension.clearcoatNormalTexture.scale;materialParams.clearcoatNormalScale=new Vector2(scale,scale)}}return Promise.all(pending)}}class GLTFMaterialsSheenExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_SHEEN}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const pending=[];materialParams.sheenColor=new Color(0,0,0);materialParams.sheenRoughness=0;materialParams.sheen=1;const extension=materialDef.extensions[this.name];if(extension.sheenColorFactor!==undefined){materialParams.sheenColor.fromArray(extension.sheenColorFactor)}if(extension.sheenRoughnessFactor!==undefined){materialParams.sheenRoughness=extension.sheenRoughnessFactor}if(extension.sheenColorTexture!==undefined){pending.push(parser.assignTexture(materialParams,"sheenColorMap",extension.sheenColorTexture))}if(extension.sheenRoughnessTexture!==undefined){pending.push(parser.assignTexture(materialParams,"sheenRoughnessMap",extension.sheenRoughnessTexture))}return Promise.all(pending)}}class GLTFMaterialsTransmissionExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_TRANSMISSION}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const pending=[];const extension=materialDef.extensions[this.name];if(extension.transmissionFactor!==undefined){materialParams.transmission=extension.transmissionFactor}if(extension.transmissionTexture!==undefined){pending.push(parser.assignTexture(materialParams,"transmissionMap",extension.transmissionTexture))}return Promise.all(pending)}}class GLTFMaterialsVolumeExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_VOLUME}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const pending=[];const extension=materialDef.extensions[this.name];materialParams.thickness=extension.thicknessFactor!==undefined?extension.thicknessFactor:0;if(extension.thicknessTexture!==undefined){pending.push(parser.assignTexture(materialParams,"thicknessMap",extension.thicknessTexture))}materialParams.attenuationDistance=extension.attenuationDistance||0;const colorArray=extension.attenuationColor||[1,1,1];materialParams.attenuationColor=new Color(colorArray[0],colorArray[1],colorArray[2]);return Promise.all(pending)}}class GLTFMaterialsIorExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_IOR}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const extension=materialDef.extensions[this.name];materialParams.ior=extension.ior!==undefined?extension.ior:1.5;return Promise.resolve()}}class GLTFMaterialsSpecularExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_MATERIALS_SPECULAR}getMaterialType(materialIndex){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name])return null;return MeshPhysicalMaterial}extendMaterialParams(materialIndex,materialParams){const parser=this.parser;const materialDef=parser.json.materials[materialIndex];if(!materialDef.extensions||!materialDef.extensions[this.name]){return Promise.resolve()}const pending=[];const extension=materialDef.extensions[this.name];materialParams.specularIntensity=extension.specularFactor!==undefined?extension.specularFactor:1;if(extension.specularTexture!==undefined){pending.push(parser.assignTexture(materialParams,"specularIntensityMap",extension.specularTexture))}const colorArray=extension.specularColorFactor||[1,1,1];materialParams.specularColor=new Color(colorArray[0],colorArray[1],colorArray[2]);if(extension.specularColorTexture!==undefined){pending.push(parser.assignTexture(materialParams,"specularColorMap",extension.specularColorTexture).then(function(texture){texture.encoding=sRGBEncoding}))}return Promise.all(pending)}}class GLTFTextureBasisUExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.KHR_TEXTURE_BASISU}loadTexture(textureIndex){const parser=this.parser;const json=parser.json;const textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[this.name]){return null}const extension=textureDef.extensions[this.name];const source=json.images[extension.source];const loader=parser.options.ktx2Loader;if(!loader){if(json.extensionsRequired&&json.extensionsRequired.indexOf(this.name)>=0){throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures")}else{return null}}return parser.loadTextureImage(textureIndex,source,loader)}}class GLTFTextureWebPExtension{constructor(parser){this.parser=parser;this.name=EXTENSIONS.EXT_TEXTURE_WEBP;this.isSupported=null}loadTexture(textureIndex){const name=this.name;const parser=this.parser;const json=parser.json;const textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[name]){return null}const extension=textureDef.extensions[name];const source=json.images[extension.source];let loader=parser.textureLoader;if(source.uri){const handler=parser.options.manager.getHandler(source.uri);if(handler!==null)loader=handler}return this.detectSupport().then(function(isSupported){if(isSupported)return parser.loadTextureImage(textureIndex,source,loader);if(json.extensionsRequired&&json.extensionsRequired.indexOf(name)>=0){throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.")}return parser.loadTexture(textureIndex)})}detectSupport(){if(!this.isSupported){this.isSupported=new Promise(function(resolve){const image=new Image;image.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA";image.onload=image.onerror=function(){resolve(image.height===1)}})}return this.isSupported}}class GLTFMeshoptCompression{constructor(parser){this.name=EXTENSIONS.EXT_MESHOPT_COMPRESSION;this.parser=parser}loadBufferView(index){const json=this.parser.json;const bufferView=json.bufferViews[index];if(bufferView.extensions&&bufferView.extensions[this.name]){const extensionDef=bufferView.extensions[this.name];const buffer=this.parser.getDependency("buffer",extensionDef.buffer);const decoder=this.parser.options.meshoptDecoder;if(!decoder||!decoder.supported){if(json.extensionsRequired&&json.extensionsRequired.indexOf(this.name)>=0){throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files")}else{return null}}return Promise.all([buffer,decoder.ready]).then(function(res){const byteOffset=extensionDef.byteOffset||0;const byteLength=extensionDef.byteLength||0;const count=extensionDef.count;const stride=extensionDef.byteStride;const result=new ArrayBuffer(count*stride);const source=new Uint8Array(res[0],byteOffset,byteLength);decoder.decodeGltfBuffer(new Uint8Array(result),count,stride,source,extensionDef.mode,extensionDef.filter);return result})}else{return null}}}const BINARY_EXTENSION_HEADER_MAGIC="glTF";const BINARY_EXTENSION_HEADER_LENGTH=12;const BINARY_EXTENSION_CHUNK_TYPES={JSON:1313821514,BIN:5130562};class GLTFBinaryExtension{constructor(data){this.name=EXTENSIONS.KHR_BINARY_GLTF;this.content=null;this.body=null;const headerView=new DataView(data,0,BINARY_EXTENSION_HEADER_LENGTH);this.header={magic:LoaderUtils.decodeText(new Uint8Array(data.slice(0,4))),version:headerView.getUint32(4,true),length:headerView.getUint32(8,true)};if(this.header.magic!==BINARY_EXTENSION_HEADER_MAGIC){throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.")}else if(this.header.version<2){throw new Error("THREE.GLTFLoader: Legacy binary file detected.")}const chunkContentsLength=this.header.length-BINARY_EXTENSION_HEADER_LENGTH;const chunkView=new DataView(data,BINARY_EXTENSION_HEADER_LENGTH);let chunkIndex=0;while(chunkIndex<chunkContentsLength){const chunkLength=chunkView.getUint32(chunkIndex,true);chunkIndex+=4;const chunkType=chunkView.getUint32(chunkIndex,true);chunkIndex+=4;if(chunkType===BINARY_EXTENSION_CHUNK_TYPES.JSON){const contentArray=new Uint8Array(data,BINARY_EXTENSION_HEADER_LENGTH+chunkIndex,chunkLength);this.content=LoaderUtils.decodeText(contentArray)}else if(chunkType===BINARY_EXTENSION_CHUNK_TYPES.BIN){const byteOffset=BINARY_EXTENSION_HEADER_LENGTH+chunkIndex;this.body=data.slice(byteOffset,byteOffset+chunkLength)}chunkIndex+=chunkLength}if(this.content===null){throw new Error("THREE.GLTFLoader: JSON content not found.")}}}class GLTFDracoMeshCompressionExtension{constructor(json,dracoLoader){if(!dracoLoader){throw new Error("THREE.GLTFLoader: No DRACOLoader instance provided.")}this.name=EXTENSIONS.KHR_DRACO_MESH_COMPRESSION;this.json=json;this.dracoLoader=dracoLoader;this.dracoLoader.preload()}decodePrimitive(primitive,parser){const json=this.json;const dracoLoader=this.dracoLoader;const bufferViewIndex=primitive.extensions[this.name].bufferView;const gltfAttributeMap=primitive.extensions[this.name].attributes;const threeAttributeMap={};const attributeNormalizedMap={};const attributeTypeMap={};for(const attributeName in gltfAttributeMap){const threeAttributeName=ATTRIBUTES[attributeName]||attributeName.toLowerCase();threeAttributeMap[threeAttributeName]=gltfAttributeMap[attributeName]}for(const attributeName in primitive.attributes){const threeAttributeName=ATTRIBUTES[attributeName]||attributeName.toLowerCase();if(gltfAttributeMap[attributeName]!==undefined){const accessorDef=json.accessors[primitive.attributes[attributeName]];const componentType=WEBGL_COMPONENT_TYPES[accessorDef.componentType];attributeTypeMap[threeAttributeName]=componentType;attributeNormalizedMap[threeAttributeName]=accessorDef.normalized===true}}return parser.getDependency("bufferView",bufferViewIndex).then(function(bufferView){return new Promise(function(resolve){dracoLoader.decodeDracoFile(bufferView,function(geometry){for(const attributeName in geometry.attributes){const attribute=geometry.attributes[attributeName];const normalized=attributeNormalizedMap[attributeName];if(normalized!==undefined)attribute.normalized=normalized}resolve(geometry)},threeAttributeMap,attributeTypeMap)})})}}class GLTFTextureTransformExtension{constructor(){this.name=EXTENSIONS.KHR_TEXTURE_TRANSFORM}extendTexture(texture,transform){if(transform.texCoord!==undefined){console.warn("THREE.GLTFLoader: Custom UV sets in \""+this.name+"\" extension not yet supported.")}if(transform.offset===undefined&&transform.rotation===undefined&&transform.scale===undefined){return texture}texture=texture.clone();if(transform.offset!==undefined){texture.offset.fromArray(transform.offset)}if(transform.rotation!==undefined){texture.rotation=transform.rotation}if(transform.scale!==undefined){texture.repeat.fromArray(transform.scale)}texture.needsUpdate=true;return texture}}class GLTFMeshStandardSGMaterial extends MeshStandardMaterial{constructor(params){super();this.isGLTFSpecularGlossinessMaterial=true;const specularMapParsFragmentChunk=["#ifdef USE_SPECULARMAP","\tuniform sampler2D specularMap;","#endif"].join("\n");const glossinessMapParsFragmentChunk=["#ifdef USE_GLOSSINESSMAP","\tuniform sampler2D glossinessMap;","#endif"].join("\n");const specularMapFragmentChunk=["vec3 specularFactor = specular;","#ifdef USE_SPECULARMAP","\tvec4 texelSpecular = texture2D( specularMap, vUv );","\ttexelSpecular = sRGBToLinear( texelSpecular );","\t// reads channel RGB, compatible with a glTF Specular-Glossiness (RGBA) texture","\tspecularFactor *= texelSpecular.rgb;","#endif"].join("\n");const glossinessMapFragmentChunk=["float glossinessFactor = glossiness;","#ifdef USE_GLOSSINESSMAP","\tvec4 texelGlossiness = texture2D( glossinessMap, vUv );","\t// reads channel A, compatible with a glTF Specular-Glossiness (RGBA) texture","\tglossinessFactor *= texelGlossiness.a;","#endif"].join("\n");const lightPhysicalFragmentChunk=["PhysicalMaterial material;","material.diffuseColor = diffuseColor.rgb * ( 1. - max( specularFactor.r, max( specularFactor.g, specularFactor.b ) ) );","vec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );","float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );","material.roughness = max( 1.0 - glossinessFactor, 0.0525 ); // 0.0525 corresponds to the base mip of a 256 cubemap.","material.roughness += geometryRoughness;","material.roughness = min( material.roughness, 1.0 );","material.specularColor = specularFactor;"].join("\n");const uniforms={specular:{value:new Color().setHex(16777215)},glossiness:{value:1},specularMap:{value:null},glossinessMap:{value:null}};this._extraUniforms=uniforms;this.onBeforeCompile=function(shader){for(const uniformName in uniforms){shader.uniforms[uniformName]=uniforms[uniformName]}shader.fragmentShader=shader.fragmentShader.replace("uniform float roughness;","uniform vec3 specular;").replace("uniform float metalness;","uniform float glossiness;").replace("#include <roughnessmap_pars_fragment>",specularMapParsFragmentChunk).replace("#include <metalnessmap_pars_fragment>",glossinessMapParsFragmentChunk).replace("#include <roughnessmap_fragment>",specularMapFragmentChunk).replace("#include <metalnessmap_fragment>",glossinessMapFragmentChunk).replace("#include <lights_physical_fragment>",lightPhysicalFragmentChunk)};Object.defineProperties(this,{specular:{get:function(){return uniforms.specular.value},set:function(v){uniforms.specular.value=v}},specularMap:{get:function(){return uniforms.specularMap.value},set:function(v){uniforms.specularMap.value=v;if(v){this.defines.USE_SPECULARMAP=""}else{delete this.defines.USE_SPECULARMAP}}},glossiness:{get:function(){return uniforms.glossiness.value},set:function(v){uniforms.glossiness.value=v}},glossinessMap:{get:function(){return uniforms.glossinessMap.value},set:function(v){uniforms.glossinessMap.value=v;if(v){this.defines.USE_GLOSSINESSMAP="";this.defines.USE_UV=""}else{delete this.defines.USE_GLOSSINESSMAP;delete this.defines.USE_UV}}}});delete this.metalness;delete this.roughness;delete this.metalnessMap;delete this.roughnessMap;this.setValues(params)}copy(source){super.copy(source);this.specularMap=source.specularMap;this.specular.copy(source.specular);this.glossinessMap=source.glossinessMap;this.glossiness=source.glossiness;delete this.metalness;delete this.roughness;delete this.metalnessMap;delete this.roughnessMap;return this}}class GLTFMaterialsPbrSpecularGlossinessExtension{constructor(){this.name=EXTENSIONS.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS;this.specularGlossinessParams=["color","map","lightMap","lightMapIntensity","aoMap","aoMapIntensity","emissive","emissiveIntensity","emissiveMap","bumpMap","bumpScale","normalMap","normalMapType","displacementMap","displacementScale","displacementBias","specularMap","specular","glossinessMap","glossiness","alphaMap","envMap","envMapIntensity","refractionRatio"]}getMaterialType(){return GLTFMeshStandardSGMaterial}extendParams(materialParams,materialDef,parser){const pbrSpecularGlossiness=materialDef.extensions[this.name];materialParams.color=new Color(1,1,1);materialParams.opacity=1;const pending=[];if(Array.isArray(pbrSpecularGlossiness.diffuseFactor)){const array=pbrSpecularGlossiness.diffuseFactor;materialParams.color.fromArray(array);materialParams.opacity=array[3]}if(pbrSpecularGlossiness.diffuseTexture!==undefined){pending.push(parser.assignTexture(materialParams,"map",pbrSpecularGlossiness.diffuseTexture))}materialParams.emissive=new Color(0,0,0);materialParams.glossiness=pbrSpecularGlossiness.glossinessFactor!==undefined?pbrSpecularGlossiness.glossinessFactor:1;materialParams.specular=new Color(1,1,1);if(Array.isArray(pbrSpecularGlossiness.specularFactor)){materialParams.specular.fromArray(pbrSpecularGlossiness.specularFactor)}if(pbrSpecularGlossiness.specularGlossinessTexture!==undefined){const specGlossMapDef=pbrSpecularGlossiness.specularGlossinessTexture;pending.push(parser.assignTexture(materialParams,"glossinessMap",specGlossMapDef));pending.push(parser.assignTexture(materialParams,"specularMap",specGlossMapDef))}return Promise.all(pending)}createMaterial(materialParams){const material=new GLTFMeshStandardSGMaterial(materialParams);material.fog=true;material.color=materialParams.color;material.map=materialParams.map===undefined?null:materialParams.map;material.lightMap=null;material.lightMapIntensity=1;material.aoMap=materialParams.aoMap===undefined?null:materialParams.aoMap;material.aoMapIntensity=1;material.emissive=materialParams.emissive;material.emissiveIntensity=1;material.emissiveMap=materialParams.emissiveMap===undefined?null:materialParams.emissiveMap;material.bumpMap=materialParams.bumpMap===undefined?null:materialParams.bumpMap;material.bumpScale=1;material.normalMap=materialParams.normalMap===undefined?null:materialParams.normalMap;material.normalMapType=TangentSpaceNormalMap;if(materialParams.normalScale)material.normalScale=materialParams.normalScale;material.displacementMap=null;material.displacementScale=1;material.displacementBias=0;material.specularMap=materialParams.specularMap===undefined?null:materialParams.specularMap;material.specular=materialParams.specular;material.glossinessMap=materialParams.glossinessMap===undefined?null:materialParams.glossinessMap;material.glossiness=materialParams.glossiness;material.alphaMap=null;material.envMap=materialParams.envMap===undefined?null:materialParams.envMap;material.envMapIntensity=1;material.refractionRatio=0.98;return material}}class GLTFMeshQuantizationExtension{constructor(){this.name=EXTENSIONS.KHR_MESH_QUANTIZATION}}class GLTFCubicSplineInterpolant extends Interpolant{constructor(parameterPositions,sampleValues,sampleSize,resultBuffer){super(parameterPositions,sampleValues,sampleSize,resultBuffer)}copySampleValue_(index){const result=this.resultBuffer,values=this.sampleValues,valueSize=this.valueSize,offset=index*valueSize*3+valueSize;for(let i=0;i!==valueSize;i++){result[i]=values[offset+i]}return result}}GLTFCubicSplineInterpolant.prototype.beforeStart_=GLTFCubicSplineInterpolant.prototype.copySampleValue_;GLTFCubicSplineInterpolant.prototype.afterEnd_=GLTFCubicSplineInterpolant.prototype.copySampleValue_;GLTFCubicSplineInterpolant.prototype.interpolate_=function(i1,t0,t,t1){const result=this.resultBuffer;const values=this.sampleValues;const stride=this.valueSize;const stride2=stride*2;const stride3=stride*3;const td=t1-t0;const p=(t-t0)/td;const pp=p*p;const ppp=pp*p;const offset1=i1*stride3;const offset0=offset1-stride3;const s2=-2*ppp+3*pp;const s3=ppp-pp;const s0=1-s2;const s1=s3-pp+p;for(let i=0;i!==stride;i++){const p0=values[offset0+i+stride];const m0=values[offset0+i+stride2]*td;const p1=values[offset1+i+stride];const m1=values[offset1+i]*td;result[i]=s0*p0+s1*m0+s2*p1+s3*m1}return result};const _q=new Quaternion;class GLTFCubicSplineQuaternionInterpolant extends GLTFCubicSplineInterpolant{interpolate_(i1,t0,t,t1){const result=super.interpolate_(i1,t0,t,t1);_q.fromArray(result).normalize().toArray(result);return result}}const WEBGL_CONSTANTS={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123};const WEBGL_COMPONENT_TYPES={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};const WEBGL_FILTERS={9728:NearestFilter,9729:LinearFilter,9984:NearestMipmapNearestFilter,9985:LinearMipmapNearestFilter,9986:NearestMipmapLinearFilter,9987:LinearMipmapLinearFilter};const WEBGL_WRAPPINGS={33071:ClampToEdgeWrapping,33648:MirroredRepeatWrapping,10497:RepeatWrapping};const WEBGL_TYPE_SIZES={"SCALAR":1,"VEC2":2,"VEC3":3,"VEC4":4,"MAT2":4,"MAT3":9,"MAT4":16};const ATTRIBUTES={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"};const PATH_PROPERTIES={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"};const INTERPOLATION={CUBICSPLINE:undefined,LINEAR:InterpolateLinear,STEP:InterpolateDiscrete};const ALPHA_MODES={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function createDefaultMaterial(cache){if(cache["DefaultMaterial"]===undefined){cache["DefaultMaterial"]=new MeshStandardMaterial({color:16777215,emissive:0,metalness:1,roughness:1,transparent:false,depthTest:true,side:FrontSide})}return cache["DefaultMaterial"]}function addUnknownExtensionsToUserData(knownExtensions,object,objectDef){for(const name in objectDef.extensions){if(knownExtensions[name]===undefined){object.userData.gltfExtensions=object.userData.gltfExtensions||{};object.userData.gltfExtensions[name]=objectDef.extensions[name]}}}function assignExtrasToUserData(object,gltfDef){if(gltfDef.extras!==undefined){if(typeof gltfDef.extras==="object"){Object.assign(object.userData,gltfDef.extras)}else{console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+gltfDef.extras)}}}function addMorphTargets(geometry,targets,parser){let hasMorphPosition=false;let hasMorphNormal=false;for(let i=0,il=targets.length;i<il;i++){const target=targets[i];if(target.POSITION!==undefined)hasMorphPosition=true;if(target.NORMAL!==undefined)hasMorphNormal=true;if(hasMorphPosition&&hasMorphNormal)break}if(!hasMorphPosition&&!hasMorphNormal)return Promise.resolve(geometry);const pendingPositionAccessors=[];const pendingNormalAccessors=[];for(let i=0,il=targets.length;i<il;i++){const target=targets[i];if(hasMorphPosition){const pendingAccessor=target.POSITION!==undefined?parser.getDependency("accessor",target.POSITION):geometry.attributes.position;pendingPositionAccessors.push(pendingAccessor)}if(hasMorphNormal){const pendingAccessor=target.NORMAL!==undefined?parser.getDependency("accessor",target.NORMAL):geometry.attributes.normal;pendingNormalAccessors.push(pendingAccessor)}}return Promise.all([Promise.all(pendingPositionAccessors),Promise.all(pendingNormalAccessors)]).then(function(accessors){const morphPositions=accessors[0];const morphNormals=accessors[1];if(hasMorphPosition)geometry.morphAttributes.position=morphPositions;if(hasMorphNormal)geometry.morphAttributes.normal=morphNormals;geometry.morphTargetsRelative=true;return geometry})}function updateMorphTargets(mesh,meshDef){mesh.updateMorphTargets();if(meshDef.weights!==undefined){for(let i=0,il=meshDef.weights.length;i<il;i++){mesh.morphTargetInfluences[i]=meshDef.weights[i]}}if(meshDef.extras&&Array.isArray(meshDef.extras.targetNames)){const targetNames=meshDef.extras.targetNames;if(mesh.morphTargetInfluences.length===targetNames.length){mesh.morphTargetDictionary={};for(let i=0,il=targetNames.length;i<il;i++){mesh.morphTargetDictionary[targetNames[i]]=i}}else{console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.")}}}function createPrimitiveKey(primitiveDef){const dracoExtension=primitiveDef.extensions&&primitiveDef.extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION];let geometryKey;if(dracoExtension){geometryKey="draco:"+dracoExtension.bufferView+":"+dracoExtension.indices+":"+createAttributesKey(dracoExtension.attributes)}else{geometryKey=primitiveDef.indices+":"+createAttributesKey(primitiveDef.attributes)+":"+primitiveDef.mode}return geometryKey}function createAttributesKey(attributes){let attributesKey="";const keys=Object.keys(attributes).sort();for(let i=0,il=keys.length;i<il;i++){attributesKey+=keys[i]+":"+attributes[keys[i]]+";"}return attributesKey}function getNormalizedComponentScale(constructor){switch(constructor){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error("THREE.GLTFLoader: Unsupported normalized accessor component type.");}}class GLTFParser{constructor(json={},options={}){this.json=json;this.extensions={};this.plugins={};this.options=options;this.cache=new GLTFRegistry;this.associations=new Map;this.primitiveCache={};this.meshCache={refs:{},uses:{}};this.cameraCache={refs:{},uses:{}};this.lightCache={refs:{},uses:{}};this.textureCache={};this.nodeNamesUsed={};if(typeof createImageBitmap!=="undefined"&&/Firefox/.test(navigator.userAgent)===false){this.textureLoader=new ImageBitmapLoader(this.options.manager)}else{this.textureLoader=new TextureLoader(this.options.manager)}this.textureLoader.setCrossOrigin(this.options.crossOrigin);this.textureLoader.setRequestHeader(this.options.requestHeader);this.fileLoader=new FileLoader(this.options.manager);this.fileLoader.setResponseType("arraybuffer");if(this.options.crossOrigin==="use-credentials"){this.fileLoader.setWithCredentials(true)}}setExtensions(extensions){this.extensions=extensions}setPlugins(plugins){this.plugins=plugins}parse(onLoad,onError){const parser=this;const json=this.json;const extensions=this.extensions;this.cache.removeAll();this._invokeAll(function(ext){return ext._markDefs&&ext._markDefs()});Promise.all(this._invokeAll(function(ext){return ext.beforeRoot&&ext.beforeRoot()})).then(function(){return Promise.all([parser.getDependencies("scene"),parser.getDependencies("animation"),parser.getDependencies("camera")])}).then(function(dependencies){const result={scene:dependencies[0][json.scene||0],scenes:dependencies[0],animations:dependencies[1],cameras:dependencies[2],asset:json.asset,parser:parser,userData:{}};addUnknownExtensionsToUserData(extensions,result,json);assignExtrasToUserData(result,json);Promise.all(parser._invokeAll(function(ext){return ext.afterRoot&&ext.afterRoot(result)})).then(function(){onLoad(result)})}).catch(onError)}_markDefs(){const nodeDefs=this.json.nodes||[];const skinDefs=this.json.skins||[];const meshDefs=this.json.meshes||[];for(let skinIndex=0,skinLength=skinDefs.length;skinIndex<skinLength;skinIndex++){const joints=skinDefs[skinIndex].joints;for(let i=0,il=joints.length;i<il;i++){nodeDefs[joints[i]].isBone=true}}for(let nodeIndex=0,nodeLength=nodeDefs.length;nodeIndex<nodeLength;nodeIndex++){const nodeDef=nodeDefs[nodeIndex];if(nodeDef.mesh!==undefined){this._addNodeRef(this.meshCache,nodeDef.mesh);if(nodeDef.skin!==undefined){meshDefs[nodeDef.mesh].isSkinnedMesh=true}}if(nodeDef.camera!==undefined){this._addNodeRef(this.cameraCache,nodeDef.camera)}}}_addNodeRef(cache,index){if(index===undefined)return;if(cache.refs[index]===undefined){cache.refs[index]=cache.uses[index]=0}cache.refs[index]++}_getNodeRef(cache,index,object){if(cache.refs[index]<=1)return object;const ref=object.clone();const updateMappings=(original,clone)=>{const mappings=this.associations.get(original);if(mappings!=null){this.associations.set(clone,mappings)}for(const[i,child]of original.children.entries()){updateMappings(child,clone.children[i])}};updateMappings(object,ref);ref.name+="_instance_"+cache.uses[index]++;return ref}_invokeOne(func){const extensions=Object.values(this.plugins);extensions.push(this);for(let i=0;i<extensions.length;i++){const result=func(extensions[i]);if(result)return result}return null}_invokeAll(func){const extensions=Object.values(this.plugins);extensions.unshift(this);const pending=[];for(let i=0;i<extensions.length;i++){const result=func(extensions[i]);if(result)pending.push(result)}return pending}getDependency(type,index){const cacheKey=type+":"+index;let dependency=this.cache.get(cacheKey);if(!dependency){switch(type){case"scene":dependency=this.loadScene(index);break;case"node":dependency=this.loadNode(index);break;case"mesh":dependency=this._invokeOne(function(ext){return ext.loadMesh&&ext.loadMesh(index)});break;case"accessor":dependency=this.loadAccessor(index);break;case"bufferView":dependency=this._invokeOne(function(ext){return ext.loadBufferView&&ext.loadBufferView(index)});break;case"buffer":dependency=this.loadBuffer(index);break;case"material":dependency=this._invokeOne(function(ext){return ext.loadMaterial&&ext.loadMaterial(index)});break;case"texture":dependency=this._invokeOne(function(ext){return ext.loadTexture&&ext.loadTexture(index)});break;case"skin":dependency=this.loadSkin(index);break;case"animation":dependency=this.loadAnimation(index);break;case"camera":dependency=this.loadCamera(index);break;default:throw new Error("Unknown type: "+type);}this.cache.add(cacheKey,dependency)}return dependency}getDependencies(type){let dependencies=this.cache.get(type);if(!dependencies){const parser=this;const defs=this.json[type+(type==="mesh"?"es":"s")]||[];dependencies=Promise.all(defs.map(function(def,index){return parser.getDependency(type,index)}));this.cache.add(type,dependencies)}return dependencies}loadBuffer(bufferIndex){const bufferDef=this.json.buffers[bufferIndex];const loader=this.fileLoader;if(bufferDef.type&&bufferDef.type!=="arraybuffer"){throw new Error("THREE.GLTFLoader: "+bufferDef.type+" buffer type is not supported.")}if(bufferDef.uri===undefined&&bufferIndex===0){return Promise.resolve(this.extensions[EXTENSIONS.KHR_BINARY_GLTF].body)}const options=this.options;return new Promise(function(resolve,reject){loader.load(LoaderUtils.resolveURL(bufferDef.uri,options.path),resolve,undefined,function(){reject(new Error("THREE.GLTFLoader: Failed to load buffer \""+bufferDef.uri+"\"."))})})}loadBufferView(bufferViewIndex){const bufferViewDef=this.json.bufferViews[bufferViewIndex];return this.getDependency("buffer",bufferViewDef.buffer).then(function(buffer){const byteLength=bufferViewDef.byteLength||0;const byteOffset=bufferViewDef.byteOffset||0;return buffer.slice(byteOffset,byteOffset+byteLength)})}loadAccessor(accessorIndex){const parser=this;const json=this.json;const accessorDef=this.json.accessors[accessorIndex];if(accessorDef.bufferView===undefined&&accessorDef.sparse===undefined){return Promise.resolve(null)}const pendingBufferViews=[];if(accessorDef.bufferView!==undefined){pendingBufferViews.push(this.getDependency("bufferView",accessorDef.bufferView))}else{pendingBufferViews.push(null)}if(accessorDef.sparse!==undefined){pendingBufferViews.push(this.getDependency("bufferView",accessorDef.sparse.indices.bufferView));pendingBufferViews.push(this.getDependency("bufferView",accessorDef.sparse.values.bufferView))}return Promise.all(pendingBufferViews).then(function(bufferViews){const bufferView=bufferViews[0];const itemSize=WEBGL_TYPE_SIZES[accessorDef.type];const TypedArray=WEBGL_COMPONENT_TYPES[accessorDef.componentType];const elementBytes=TypedArray.BYTES_PER_ELEMENT;const itemBytes=elementBytes*itemSize;const byteOffset=accessorDef.byteOffset||0;const byteStride=accessorDef.bufferView!==undefined?json.bufferViews[accessorDef.bufferView].byteStride:undefined;const normalized=accessorDef.normalized===true;let array,bufferAttribute;if(byteStride&&byteStride!==itemBytes){const ibSlice=Math.floor(byteOffset/byteStride);const ibCacheKey="InterleavedBuffer:"+accessorDef.bufferView+":"+accessorDef.componentType+":"+ibSlice+":"+accessorDef.count;let ib=parser.cache.get(ibCacheKey);if(!ib){array=new TypedArray(bufferView,ibSlice*byteStride,accessorDef.count*byteStride/elementBytes);ib=new InterleavedBuffer(array,byteStride/elementBytes);parser.cache.add(ibCacheKey,ib)}bufferAttribute=new InterleavedBufferAttribute(ib,itemSize,byteOffset%byteStride/elementBytes,normalized)}else{if(bufferView===null){array=new TypedArray(accessorDef.count*itemSize)}else{array=new TypedArray(bufferView,byteOffset,accessorDef.count*itemSize)}bufferAttribute=new BufferAttribute(array,itemSize,normalized)}if(accessorDef.sparse!==undefined){const itemSizeIndices=WEBGL_TYPE_SIZES.SCALAR;const TypedArrayIndices=WEBGL_COMPONENT_TYPES[accessorDef.sparse.indices.componentType];const byteOffsetIndices=accessorDef.sparse.indices.byteOffset||0;const byteOffsetValues=accessorDef.sparse.values.byteOffset||0;const sparseIndices=new TypedArrayIndices(bufferViews[1],byteOffsetIndices,accessorDef.sparse.count*itemSizeIndices);const sparseValues=new TypedArray(bufferViews[2],byteOffsetValues,accessorDef.sparse.count*itemSize);if(bufferView!==null){bufferAttribute=new BufferAttribute(bufferAttribute.array.slice(),bufferAttribute.itemSize,bufferAttribute.normalized)}for(let i=0,il=sparseIndices.length;i<il;i++){const index=sparseIndices[i];bufferAttribute.setX(index,sparseValues[i*itemSize]);if(itemSize>=2)bufferAttribute.setY(index,sparseValues[i*itemSize+1]);if(itemSize>=3)bufferAttribute.setZ(index,sparseValues[i*itemSize+2]);if(itemSize>=4)bufferAttribute.setW(index,sparseValues[i*itemSize+3]);if(itemSize>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return bufferAttribute})}loadTexture(textureIndex){const json=this.json;const options=this.options;const textureDef=json.textures[textureIndex];const source=json.images[textureDef.source];let loader=this.textureLoader;if(source.uri){const handler=options.manager.getHandler(source.uri);if(handler!==null)loader=handler}return this.loadTextureImage(textureIndex,source,loader)}loadTextureImage(textureIndex,source,loader){const parser=this;const json=this.json;const options=this.options;const textureDef=json.textures[textureIndex];const cacheKey=(source.uri||source.bufferView)+":"+textureDef.sampler;if(this.textureCache[cacheKey]){return this.textureCache[cacheKey]}const URL=self.URL||self.webkitURL;let sourceURI=source.uri||"";let isObjectURL=false;if(source.bufferView!==undefined){sourceURI=parser.getDependency("bufferView",source.bufferView).then(function(bufferView){isObjectURL=true;const blob=new Blob([bufferView],{type:source.mimeType});sourceURI=URL.createObjectURL(blob);return sourceURI})}else if(source.uri===undefined){throw new Error("THREE.GLTFLoader: Image "+textureIndex+" is missing URI and bufferView")}const promise=Promise.resolve(sourceURI).then(function(sourceURI){return new Promise(function(resolve,reject){let onLoad=resolve;if(loader.isImageBitmapLoader===true){onLoad=function(imageBitmap){const texture=new Texture(imageBitmap);texture.needsUpdate=true;resolve(texture)}}loader.load(LoaderUtils.resolveURL(sourceURI,options.path),onLoad,undefined,reject)})}).then(function(texture){if(isObjectURL===true){URL.revokeObjectURL(sourceURI)}texture.flipY=false;if(textureDef.name)texture.name=textureDef.name;const samplers=json.samplers||{};const sampler=samplers[textureDef.sampler]||{};texture.magFilter=WEBGL_FILTERS[sampler.magFilter]||LinearFilter;texture.minFilter=WEBGL_FILTERS[sampler.minFilter]||LinearMipmapLinearFilter;texture.wrapS=WEBGL_WRAPPINGS[sampler.wrapS]||RepeatWrapping;texture.wrapT=WEBGL_WRAPPINGS[sampler.wrapT]||RepeatWrapping;parser.associations.set(texture,{textures:textureIndex});return texture}).catch(function(e){console.error("THREE.GLTFLoader: Couldn't load texture",sourceURI,e);return null});this.textureCache[cacheKey]=promise;return promise}assignTexture(materialParams,mapName,mapDef){const parser=this;return this.getDependency("texture",mapDef.index).then(function(texture){if(mapDef.texCoord!==undefined&&mapDef.texCoord!=0&&!(mapName==="aoMap"&&mapDef.texCoord==1)){console.warn("THREE.GLTFLoader: Custom UV set "+mapDef.texCoord+" for texture "+mapName+" not yet supported.")}if(parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM]){const transform=mapDef.extensions!==undefined?mapDef.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM]:undefined;if(transform){const gltfReference=parser.associations.get(texture);texture=parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM].extendTexture(texture,transform);parser.associations.set(texture,gltfReference)}}materialParams[mapName]=texture;return texture})}assignFinalMaterial(mesh){const geometry=mesh.geometry;let material=mesh.material;const useDerivativeTangents=geometry.attributes.tangent===undefined;const useVertexColors=geometry.attributes.color!==undefined;const useFlatShading=geometry.attributes.normal===undefined;if(mesh.isPoints){const cacheKey="PointsMaterial:"+material.uuid;let pointsMaterial=this.cache.get(cacheKey);if(!pointsMaterial){pointsMaterial=new PointsMaterial;Material.prototype.copy.call(pointsMaterial,material);pointsMaterial.color.copy(material.color);pointsMaterial.map=material.map;pointsMaterial.sizeAttenuation=false;this.cache.add(cacheKey,pointsMaterial)}material=pointsMaterial}else if(mesh.isLine){const cacheKey="LineBasicMaterial:"+material.uuid;let lineMaterial=this.cache.get(cacheKey);if(!lineMaterial){lineMaterial=new LineBasicMaterial;Material.prototype.copy.call(lineMaterial,material);lineMaterial.color.copy(material.color);this.cache.add(cacheKey,lineMaterial)}material=lineMaterial}if(useDerivativeTangents||useVertexColors||useFlatShading){let cacheKey="ClonedMaterial:"+material.uuid+":";if(material.isGLTFSpecularGlossinessMaterial)cacheKey+="specular-glossiness:";if(useDerivativeTangents)cacheKey+="derivative-tangents:";if(useVertexColors)cacheKey+="vertex-colors:";if(useFlatShading)cacheKey+="flat-shading:";let cachedMaterial=this.cache.get(cacheKey);if(!cachedMaterial){cachedMaterial=material.clone();if(useVertexColors)cachedMaterial.vertexColors=true;if(useFlatShading)cachedMaterial.flatShading=true;if(useDerivativeTangents){if(cachedMaterial.normalScale)cachedMaterial.normalScale.y*=-1;if(cachedMaterial.clearcoatNormalScale)cachedMaterial.clearcoatNormalScale.y*=-1}this.cache.add(cacheKey,cachedMaterial);this.associations.set(cachedMaterial,this.associations.get(material))}material=cachedMaterial}if(material.aoMap&&geometry.attributes.uv2===undefined&&geometry.attributes.uv!==undefined){geometry.setAttribute("uv2",geometry.attributes.uv)}mesh.material=material}getMaterialType(){return MeshStandardMaterial}loadMaterial(materialIndex){const parser=this;const json=this.json;const extensions=this.extensions;const materialDef=json.materials[materialIndex];let materialType;const materialParams={};const materialExtensions=materialDef.extensions||{};const pending=[];if(materialExtensions[EXTENSIONS.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS]){const sgExtension=extensions[EXTENSIONS.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS];materialType=sgExtension.getMaterialType();pending.push(sgExtension.extendParams(materialParams,materialDef,parser))}else if(materialExtensions[EXTENSIONS.KHR_MATERIALS_UNLIT]){const kmuExtension=extensions[EXTENSIONS.KHR_MATERIALS_UNLIT];materialType=kmuExtension.getMaterialType();pending.push(kmuExtension.extendParams(materialParams,materialDef,parser))}else{const metallicRoughness=materialDef.pbrMetallicRoughness||{};materialParams.color=new Color(1,1,1);materialParams.opacity=1;if(Array.isArray(metallicRoughness.baseColorFactor)){const array=metallicRoughness.baseColorFactor;materialParams.color.fromArray(array);materialParams.opacity=array[3]}if(metallicRoughness.baseColorTexture!==undefined){pending.push(parser.assignTexture(materialParams,"map",metallicRoughness.baseColorTexture))}materialParams.metalness=metallicRoughness.metallicFactor!==undefined?metallicRoughness.metallicFactor:1;materialParams.roughness=metallicRoughness.roughnessFactor!==undefined?metallicRoughness.roughnessFactor:1;if(metallicRoughness.metallicRoughnessTexture!==undefined){pending.push(parser.assignTexture(materialParams,"metalnessMap",metallicRoughness.metallicRoughnessTexture));pending.push(parser.assignTexture(materialParams,"roughnessMap",metallicRoughness.metallicRoughnessTexture))}materialType=this._invokeOne(function(ext){return ext.getMaterialType&&ext.getMaterialType(materialIndex)});pending.push(Promise.all(this._invokeAll(function(ext){return ext.extendMaterialParams&&ext.extendMaterialParams(materialIndex,materialParams)})))}if(materialDef.doubleSided===true){materialParams.side=DoubleSide}const alphaMode=materialDef.alphaMode||ALPHA_MODES.OPAQUE;if(alphaMode===ALPHA_MODES.BLEND){materialParams.transparent=true;materialParams.depthWrite=false}else{materialParams.format=RGBFormat;materialParams.transparent=false;if(alphaMode===ALPHA_MODES.MASK){materialParams.alphaTest=materialDef.alphaCutoff!==undefined?materialDef.alphaCutoff:0.5}}if(materialDef.normalTexture!==undefined&&materialType!==MeshBasicMaterial){pending.push(parser.assignTexture(materialParams,"normalMap",materialDef.normalTexture));materialParams.normalScale=new Vector2(1,1);if(materialDef.normalTexture.scale!==undefined){const scale=materialDef.normalTexture.scale;materialParams.normalScale.set(scale,scale)}}if(materialDef.occlusionTexture!==undefined&&materialType!==MeshBasicMaterial){pending.push(parser.assignTexture(materialParams,"aoMap",materialDef.occlusionTexture));if(materialDef.occlusionTexture.strength!==undefined){materialParams.aoMapIntensity=materialDef.occlusionTexture.strength}}if(materialDef.emissiveFactor!==undefined&&materialType!==MeshBasicMaterial){materialParams.emissive=new Color().fromArray(materialDef.emissiveFactor)}if(materialDef.emissiveTexture!==undefined&&materialType!==MeshBasicMaterial){pending.push(parser.assignTexture(materialParams,"emissiveMap",materialDef.emissiveTexture))}return Promise.all(pending).then(function(){let material;if(materialType===GLTFMeshStandardSGMaterial){material=extensions[EXTENSIONS.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS].createMaterial(materialParams)}else{material=new materialType(materialParams)}if(materialDef.name)material.name=materialDef.name;if(material.map)material.map.encoding=sRGBEncoding;if(material.emissiveMap)material.emissiveMap.encoding=sRGBEncoding;assignExtrasToUserData(material,materialDef);parser.associations.set(material,{materials:materialIndex});if(materialDef.extensions)addUnknownExtensionsToUserData(extensions,material,materialDef);return material})}createUniqueName(originalName){const sanitizedName=PropertyBinding.sanitizeNodeName(originalName||"");let name=sanitizedName;for(let i=1;this.nodeNamesUsed[name];++i){name=sanitizedName+"_"+i}this.nodeNamesUsed[name]=true;return name}loadGeometries(primitives){const parser=this;const extensions=this.extensions;const cache=this.primitiveCache;function createDracoPrimitive(primitive){return extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(primitive,parser).then(function(geometry){return addPrimitiveAttributes(geometry,primitive,parser)})}const pending=[];for(let i=0,il=primitives.length;i<il;i++){const primitive=primitives[i];const cacheKey=createPrimitiveKey(primitive);const cached=cache[cacheKey];if(cached){pending.push(cached.promise)}else{let geometryPromise;if(primitive.extensions&&primitive.extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION]){geometryPromise=createDracoPrimitive(primitive)}else{geometryPromise=addPrimitiveAttributes(new BufferGeometry,primitive,parser)}cache[cacheKey]={primitive:primitive,promise:geometryPromise};pending.push(geometryPromise)}}return Promise.all(pending)}loadMesh(meshIndex){const parser=this;const json=this.json;const extensions=this.extensions;const meshDef=json.meshes[meshIndex];const primitives=meshDef.primitives;const pending=[];for(let i=0,il=primitives.length;i<il;i++){const material=primitives[i].material===undefined?createDefaultMaterial(this.cache):this.getDependency("material",primitives[i].material);pending.push(material)}pending.push(parser.loadGeometries(primitives));return Promise.all(pending).then(function(results){const materials=results.slice(0,results.length-1);const geometries=results[results.length-1];const meshes=[];for(let i=0,il=geometries.length;i<il;i++){const geometry=geometries[i];const primitive=primitives[i];let mesh;const material=materials[i];if(primitive.mode===WEBGL_CONSTANTS.TRIANGLES||primitive.mode===WEBGL_CONSTANTS.TRIANGLE_STRIP||primitive.mode===WEBGL_CONSTANTS.TRIANGLE_FAN||primitive.mode===undefined){mesh=meshDef.isSkinnedMesh===true?new SkinnedMesh(geometry,material):new Mesh(geometry,material);if(mesh.isSkinnedMesh===true&&!mesh.geometry.attributes.skinWeight.normalized){mesh.normalizeSkinWeights()}if(primitive.mode===WEBGL_CONSTANTS.TRIANGLE_STRIP){mesh.geometry=toTrianglesDrawMode(mesh.geometry,TriangleStripDrawMode)}else if(primitive.mode===WEBGL_CONSTANTS.TRIANGLE_FAN){mesh.geometry=toTrianglesDrawMode(mesh.geometry,TriangleFanDrawMode)}}else if(primitive.mode===WEBGL_CONSTANTS.LINES){mesh=new LineSegments(geometry,material)}else if(primitive.mode===WEBGL_CONSTANTS.LINE_STRIP){mesh=new Line(geometry,material)}else if(primitive.mode===WEBGL_CONSTANTS.LINE_LOOP){mesh=new LineLoop(geometry,material)}else if(primitive.mode===WEBGL_CONSTANTS.POINTS){mesh=new Points(geometry,material)}else{throw new Error("THREE.GLTFLoader: Primitive mode unsupported: "+primitive.mode)}if(Object.keys(mesh.geometry.morphAttributes).length>0){updateMorphTargets(mesh,meshDef)}mesh.name=parser.createUniqueName(meshDef.name||"mesh_"+meshIndex);assignExtrasToUserData(mesh,meshDef);if(primitive.extensions)addUnknownExtensionsToUserData(extensions,mesh,primitive);parser.assignFinalMaterial(mesh);meshes.push(mesh)}for(let i=0,il=meshes.length;i<il;i++){parser.associations.set(meshes[i],{meshes:meshIndex,primitives:i})}if(meshes.length===1){return meshes[0]}const group=new Group;parser.associations.set(group,{meshes:meshIndex});for(let i=0,il=meshes.length;i<il;i++){group.add(meshes[i])}return group})}loadCamera(cameraIndex){let camera;const cameraDef=this.json.cameras[cameraIndex];const params=cameraDef[cameraDef.type];if(!params){console.warn("THREE.GLTFLoader: Missing camera parameters.");return}if(cameraDef.type==="perspective"){camera=new PerspectiveCamera(MathUtils.radToDeg(params.yfov),params.aspectRatio||1,params.znear||1,params.zfar||2e6)}else if(cameraDef.type==="orthographic"){camera=new OrthographicCamera(-params.xmag,params.xmag,params.ymag,-params.ymag,params.znear,params.zfar)}if(cameraDef.name)camera.name=this.createUniqueName(cameraDef.name);assignExtrasToUserData(camera,cameraDef);return Promise.resolve(camera)}loadSkin(skinIndex){const skinDef=this.json.skins[skinIndex];const skinEntry={joints:skinDef.joints};if(skinDef.inverseBindMatrices===undefined){return Promise.resolve(skinEntry)}return this.getDependency("accessor",skinDef.inverseBindMatrices).then(function(accessor){skinEntry.inverseBindMatrices=accessor;return skinEntry})}loadAnimation(animationIndex){const json=this.json;const animationDef=json.animations[animationIndex];const pendingNodes=[];const pendingInputAccessors=[];const pendingOutputAccessors=[];const pendingSamplers=[];const pendingTargets=[];for(let i=0,il=animationDef.channels.length;i<il;i++){const channel=animationDef.channels[i];const sampler=animationDef.samplers[channel.sampler];const target=channel.target;const name=target.node!==undefined?target.node:target.id;const input=animationDef.parameters!==undefined?animationDef.parameters[sampler.input]:sampler.input;const output=animationDef.parameters!==undefined?animationDef.parameters[sampler.output]:sampler.output;pendingNodes.push(this.getDependency("node",name));pendingInputAccessors.push(this.getDependency("accessor",input));pendingOutputAccessors.push(this.getDependency("accessor",output));pendingSamplers.push(sampler);pendingTargets.push(target)}return Promise.all([Promise.all(pendingNodes),Promise.all(pendingInputAccessors),Promise.all(pendingOutputAccessors),Promise.all(pendingSamplers),Promise.all(pendingTargets)]).then(function(dependencies){const nodes=dependencies[0];const inputAccessors=dependencies[1];const outputAccessors=dependencies[2];const samplers=dependencies[3];const targets=dependencies[4];const tracks=[];for(let i=0,il=nodes.length;i<il;i++){const node=nodes[i];const inputAccessor=inputAccessors[i];const outputAccessor=outputAccessors[i];const sampler=samplers[i];const target=targets[i];if(node===undefined)continue;node.updateMatrix();node.matrixAutoUpdate=true;let TypedKeyframeTrack;switch(PATH_PROPERTIES[target.path]){case PATH_PROPERTIES.weights:TypedKeyframeTrack=NumberKeyframeTrack;break;case PATH_PROPERTIES.rotation:TypedKeyframeTrack=QuaternionKeyframeTrack;break;case PATH_PROPERTIES.position:case PATH_PROPERTIES.scale:default:TypedKeyframeTrack=VectorKeyframeTrack;break;}const targetName=node.name?node.name:node.uuid;const interpolation=sampler.interpolation!==undefined?INTERPOLATION[sampler.interpolation]:InterpolateLinear;const targetNames=[];if(PATH_PROPERTIES[target.path]===PATH_PROPERTIES.weights){node.traverse(function(object){if(object.isMesh===true&&object.morphTargetInfluences){targetNames.push(object.name?object.name:object.uuid)}})}else{targetNames.push(targetName)}let outputArray=outputAccessor.array;if(outputAccessor.normalized){const scale=getNormalizedComponentScale(outputArray.constructor);const scaled=new Float32Array(outputArray.length);for(let j=0,jl=outputArray.length;j<jl;j++){scaled[j]=outputArray[j]*scale}outputArray=scaled}for(let j=0,jl=targetNames.length;j<jl;j++){const track=new TypedKeyframeTrack(targetNames[j]+"."+PATH_PROPERTIES[target.path],inputAccessor.array,outputArray,interpolation);if(sampler.interpolation==="CUBICSPLINE"){track.createInterpolant=function InterpolantFactoryMethodGLTFCubicSpline(result){const interpolantType=this instanceof QuaternionKeyframeTrack?GLTFCubicSplineQuaternionInterpolant:GLTFCubicSplineInterpolant;return new interpolantType(this.times,this.values,this.getValueSize()/3,result)};track.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=true}tracks.push(track)}}const name=animationDef.name?animationDef.name:"animation_"+animationIndex;return new AnimationClip(name,undefined,tracks)})}createNodeMesh(nodeIndex){const json=this.json;const parser=this;const nodeDef=json.nodes[nodeIndex];if(nodeDef.mesh===undefined)return null;return parser.getDependency("mesh",nodeDef.mesh).then(function(mesh){const node=parser._getNodeRef(parser.meshCache,nodeDef.mesh,mesh);if(nodeDef.weights!==undefined){node.traverse(function(o){if(!o.isMesh)return;for(let i=0,il=nodeDef.weights.length;i<il;i++){o.morphTargetInfluences[i]=nodeDef.weights[i]}})}return node})}loadNode(nodeIndex){const json=this.json;const extensions=this.extensions;const parser=this;const nodeDef=json.nodes[nodeIndex];const nodeName=nodeDef.name?parser.createUniqueName(nodeDef.name):"";return function(){const pending=[];const meshPromise=parser._invokeOne(function(ext){return ext.createNodeMesh&&ext.createNodeMesh(nodeIndex)});if(meshPromise){pending.push(meshPromise)}if(nodeDef.camera!==undefined){pending.push(parser.getDependency("camera",nodeDef.camera).then(function(camera){return parser._getNodeRef(parser.cameraCache,nodeDef.camera,camera)}))}parser._invokeAll(function(ext){return ext.createNodeAttachment&&ext.createNodeAttachment(nodeIndex)}).forEach(function(promise){pending.push(promise)});return Promise.all(pending)}().then(function(objects){let node;if(nodeDef.isBone===true){node=new Bone}else if(objects.length>1){node=new Group}else if(objects.length===1){node=objects[0]}else{node=new Object3D}if(node!==objects[0]){for(let i=0,il=objects.length;i<il;i++){node.add(objects[i])}}if(nodeDef.name){node.userData.name=nodeDef.name;node.name=nodeName}assignExtrasToUserData(node,nodeDef);if(nodeDef.extensions)addUnknownExtensionsToUserData(extensions,node,nodeDef);if(nodeDef.matrix!==undefined){const matrix=new Matrix4;matrix.fromArray(nodeDef.matrix);node.applyMatrix4(matrix)}else{if(nodeDef.translation!==undefined){node.position.fromArray(nodeDef.translation)}if(nodeDef.rotation!==undefined){node.quaternion.fromArray(nodeDef.rotation)}if(nodeDef.scale!==undefined){node.scale.fromArray(nodeDef.scale)}}if(!parser.associations.has(node)){parser.associations.set(node,{})}parser.associations.get(node).nodes=nodeIndex;return node})}loadScene(sceneIndex){const json=this.json;const extensions=this.extensions;const sceneDef=this.json.scenes[sceneIndex];const parser=this;const scene=new Group;if(sceneDef.name)scene.name=parser.createUniqueName(sceneDef.name);assignExtrasToUserData(scene,sceneDef);if(sceneDef.extensions)addUnknownExtensionsToUserData(extensions,scene,sceneDef);const nodeIds=sceneDef.nodes||[];const pending=[];for(let i=0,il=nodeIds.length;i<il;i++){pending.push(buildNodeHierarchy(nodeIds[i],scene,json,parser))}return Promise.all(pending).then(function(){const reduceAssociations=node=>{const reducedAssociations=new Map;for(const[key,value]of parser.associations){if(key instanceof Material||key instanceof Texture){reducedAssociations.set(key,value)}}node.traverse(node=>{const mappings=parser.associations.get(node);if(mappings!=null){reducedAssociations.set(node,mappings)}});return reducedAssociations};parser.associations=reduceAssociations(scene);return scene})}}function buildNodeHierarchy(nodeId,parentObject,json,parser){const nodeDef=json.nodes[nodeId];return parser.getDependency("node",nodeId).then(function(node){if(nodeDef.skin===undefined)return node;let skinEntry;return parser.getDependency("skin",nodeDef.skin).then(function(skin){skinEntry=skin;const pendingJoints=[];for(let i=0,il=skinEntry.joints.length;i<il;i++){pendingJoints.push(parser.getDependency("node",skinEntry.joints[i]))}return Promise.all(pendingJoints)}).then(function(jointNodes){node.traverse(function(mesh){if(!mesh.isMesh)return;const bones=[];const boneInverses=[];for(let j=0,jl=jointNodes.length;j<jl;j++){const jointNode=jointNodes[j];if(jointNode){bones.push(jointNode);const mat=new Matrix4;if(skinEntry.inverseBindMatrices!==undefined){mat.fromArray(skinEntry.inverseBindMatrices.array,j*16)}boneInverses.push(mat)}else{console.warn("THREE.GLTFLoader: Joint \"%s\" could not be found.",skinEntry.joints[j])}}mesh.bind(new Skeleton(bones,boneInverses),mesh.matrixWorld)});return node})}).then(function(node){parentObject.add(node);const pending=[];if(nodeDef.children){const children=nodeDef.children;for(let i=0,il=children.length;i<il;i++){const child=children[i];pending.push(buildNodeHierarchy(child,node,json,parser))}}return Promise.all(pending)})}function computeBounds(geometry,primitiveDef,parser){const attributes=primitiveDef.attributes;const box=new Box3;if(attributes.POSITION!==undefined){const accessor=parser.json.accessors[attributes.POSITION];const min=accessor.min;const max=accessor.max;if(min!==undefined&&max!==undefined){box.set(new Vector3(min[0],min[1],min[2]),new Vector3(max[0],max[1],max[2]));if(accessor.normalized){const boxScale=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[accessor.componentType]);box.min.multiplyScalar(boxScale);box.max.multiplyScalar(boxScale)}}else{console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");return}}else{return}const targets=primitiveDef.targets;if(targets!==undefined){const maxDisplacement=new Vector3;const vector=new Vector3;for(let i=0,il=targets.length;i<il;i++){const target=targets[i];if(target.POSITION!==undefined){const accessor=parser.json.accessors[target.POSITION];const min=accessor.min;const max=accessor.max;if(min!==undefined&&max!==undefined){vector.setX(Math.max(Math.abs(min[0]),Math.abs(max[0])));vector.setY(Math.max(Math.abs(min[1]),Math.abs(max[1])));vector.setZ(Math.max(Math.abs(min[2]),Math.abs(max[2])));if(accessor.normalized){const boxScale=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[accessor.componentType]);vector.multiplyScalar(boxScale)}maxDisplacement.max(vector)}else{console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.")}}}box.expandByVector(maxDisplacement)}geometry.boundingBox=box;const sphere=new Sphere;box.getCenter(sphere.center);sphere.radius=box.min.distanceTo(box.max)/2;geometry.boundingSphere=sphere}function addPrimitiveAttributes(geometry,primitiveDef,parser){const attributes=primitiveDef.attributes;const pending=[];function assignAttributeAccessor(accessorIndex,attributeName){return parser.getDependency("accessor",accessorIndex).then(function(accessor){geometry.setAttribute(attributeName,accessor)})}for(const gltfAttributeName in attributes){const threeAttributeName=ATTRIBUTES[gltfAttributeName]||gltfAttributeName.toLowerCase();if(threeAttributeName in geometry.attributes)continue;pending.push(assignAttributeAccessor(attributes[gltfAttributeName],threeAttributeName))}if(primitiveDef.indices!==undefined&&!geometry.index){const accessor=parser.getDependency("accessor",primitiveDef.indices).then(function(accessor){geometry.setIndex(accessor)});pending.push(accessor)}assignExtrasToUserData(geometry,primitiveDef);computeBounds(geometry,primitiveDef,parser);return Promise.all(pending).then(function(){return primitiveDef.targets!==undefined?addMorphTargets(geometry,primitiveDef.targets,parser):geometry})}function toTrianglesDrawMode(geometry,drawMode){let index=geometry.getIndex();if(index===null){const indices=[];const position=geometry.getAttribute("position");if(position!==undefined){for(let i=0;i<position.count;i++){indices.push(i)}geometry.setIndex(indices);index=geometry.getIndex()}else{console.error("THREE.GLTFLoader.toTrianglesDrawMode(): Undefined position attribute. Processing not possible.");return geometry}}const numberOfTriangles=index.count-2;const newIndices=[];if(drawMode===TriangleFanDrawMode){for(let i=1;i<=numberOfTriangles;i++){newIndices.push(index.getX(0));newIndices.push(index.getX(i));newIndices.push(index.getX(i+1))}}else{for(let i=0;i<numberOfTriangles;i++){if(i%2===0){newIndices.push(index.getX(i));newIndices.push(index.getX(i+1));newIndices.push(index.getX(i+2))}else{newIndices.push(index.getX(i+2));newIndices.push(index.getX(i+1));newIndices.push(index.getX(i))}}}if(newIndices.length/3!==numberOfTriangles){console.error("THREE.GLTFLoader.toTrianglesDrawMode(): Unable to generate correct amount of triangles.")}const newGeometry=geometry.clone();newGeometry.setIndex(newIndices);return newGeometry}THREE.GLTFLoader=GLTFLoader});(function(t,e){e(t.THREE=t.THREE||{})})(this,function(THREE){var Object3D=THREE.Object3D;var deviceMax=Number.POSITIVE_INFINITY;var deviceMin=Number.NEGATIVE_INFINITY;class CSS3DObject extends Object3D{constructor(element){super();this.containerElement=document.createElement("div");this.containerElement.style.position="absolute";this.containerElement.style.pointerEvents="none";this.containerElement.style.overflow="hidden";this.cameraElement=document.createElement("div");this.containerElement.appendChild(this.cameraElement);this.cameraElement.style.transformStyle="preserve-3d";this.cameraElement.style.position="absolute";this.cameraElement.style.pointerEvents="none";this.element=element||document.createElement("div");this.cameraElement.appendChild(this.element);this.element.style.position="absolute";this.element.style.pointerEvents="none";this.contentWidth=100;this.contentHeight=100;this.vertices=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];this.projectedVertices=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];this.addEventListener("removed",function(){this.traverse(function(object){if(object.containerElement instanceof Element&&object.containerElement.parentNode!==null)object.containerElement.parentNode.removeChild(object.containerElement)})})}copy(source,recursive){super.copy(source,recursive);this.element=source.element.cloneNode(true);return this}updateVertices(){this.vertices[0].set(-this.contentWidth*0.5,+this.contentHeight*0.5,0);this.vertices[1].set(+this.contentWidth*0.5,+this.contentHeight*0.5,0);this.vertices[2].set(+this.contentWidth*0.5,-this.contentHeight*0.5,0);this.vertices[3].set(-this.contentWidth*0.5,-this.contentHeight*0.5,0)}projectVertices(camera){if(this.matrixWorldNeedsUpdate)this.updateMatrixWorld();projectVertices(this,camera);var pv=this.projectedVertices;this.isDrawable=true;pv=pv.filter(function(p){return p.z<0});var x=0,y=0;var max=0,min=0;pv.forEach(function(p){if(p.x<-1)x-=1;else if(p.x>1)x+=1;if(p.y<-1)y-=1;else if(p.y>1)y+=1;max=Math.max(p.x*camera.aspect,p.y,max);min=Math.min(p.x*camera.aspect,p.y,min)});this.isVisible=this.isDrawable&&Math.abs(x)<pv.length&&Math.abs(y)<pv.length&&max<deviceMax&&min>deviceMin}}CSS3DObject.prototype.isCSS3DObject=true;THREE.CSS3DObject=CSS3DObject;class CSS3DQuad extends Object3D{constructor(element){super();this.contentWidth=100;this.contentHeight=100;this.vertices=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];this.projectedVertices=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];this.containerElement=document.createElement("div");this.containerElement.style.position="absolute";this.containerElement.style.pointerEvents="none";this.containerElement.style.overflow="hidden";this.element=element||document.createElement("div");this.containerElement.appendChild(this.element);this.element.style.position="absolute";this.element.style.pointerEvents="none"}copy(source,recursive){super.copy(source,recursive);for(var i=0;i<4;i++)this.vertices[i].copy(source.vertices[i]);return this}projectVertices(camera){if(this.matrixWorldNeedsUpdate)this.updateMatrixWorld();projectVertices(this,camera);var pv=this.projectedVertices;this.isDrawable=pv[0].z<0&&pv[1].z<0&&pv[2].z<0&&pv[3].z<0;var x=0,y=0;var max=0,min=0;pv.forEach(function(p){if(p.x<-1)x-=1;else if(p.x>1)x+=1;if(p.y<-1)y-=1;else if(p.y>1)y+=1;max=Math.max(p.x*camera.aspect,p.y,max);min=Math.min(p.x*camera.aspect,p.y,min)});this.isVisible=this.isDrawable&&Math.abs(x)<pv.length&&Math.abs(y)<pv.length&&max<deviceMax&&min>deviceMin}}CSS3DQuad.prototype.isCSS3DQuad=true;THREE.CSS3DQuad=CSS3DQuad;class CSS3DRectangle extends CSS3DQuad{constructor(element){super(element)}updateVertices(){this.vertices[0].set(-this.contentWidth*0.5,+this.contentHeight*0.5,0);this.vertices[1].set(+this.contentWidth*0.5,+this.contentHeight*0.5,0);this.vertices[2].set(+this.contentWidth*0.5,-this.contentHeight*0.5,0);this.vertices[3].set(-this.contentWidth*0.5,-this.contentHeight*0.5,0)}}CSS3DRectangle.prototype.isCSS3DRectangle=true;THREE.CSS3DRectangle=CSS3DRectangle;var _matrix=new THREE.Matrix4;class CSS3DRenderer{constructor(){var _this=this;var _width,_height;var _widthHalf,_heightHalf;var _fov;var _cameraStyle;var cache={objects:new WeakMap};var domElement=document.createElement("div");domElement.style.overflow="hidden";this.domElement=domElement;this.getSize=function(){return{width:_width,height:_height}};this.render=function(scene,camera){_fov=camera.projectionMatrix.elements[5]*_heightHalf;if(scene.autoUpdate===true)scene.updateMatrixWorld();_cameraStyle="translateZ("+_fov+"px)"+getCameraCSSMatrix(camera.matrixWorldInverse)+"translate("+_widthHalf+"px,"+_heightHalf+"px)";renderObject(scene,scene,camera)};this.setSize=function(width,height){_width=width;_height=height;_widthHalf=_width/2;_heightHalf=_height/2;domElement.style.width=_width+"px";domElement.style.height=_height+"px"};function renderObject(object,scene,camera){if(object.isCSS3DObject||object.isCSS3DQuad){object.onBeforeRender(_this,scene,camera);var cachedObject=cache.objects.get(object)||{};var cacheChanged=false;if(object.isVisible){if(object.isCSS3DQuad){var pv=object.projectedVertices;var x0=(1+pv[0].x)*0.5*_width,y0=(1-pv[0].y)*0.5*_height,x1=(1+pv[1].x)*0.5*_width,y1=(1-pv[1].y)*0.5*_height,x2=(1+pv[2].x)*0.5*_width,y2=(1-pv[2].y)*0.5*_height,x3=(1+pv[3].x)*0.5*_width,y3=(1-pv[3].y)*0.5*_height;createQuadMatrix(object.contentWidth,object.contentHeight,x0,y0,x1,y1,x3,y3,x2,y2,_matrix.elements);var elementStyle=getQuadCSSMatrix(_matrix);if(cachedObject.elementStyle!=elementStyle){cachedObject.elementStyle=object.element.style.transform=elementStyle;cacheChanged=true}if(cachedObject.width!==_width||cachedObject.height!==_height){object.containerElement.style.width=(cachedObject.width=_width)+"px";object.containerElement.style.height=(cachedObject.height=_height)+"px";cacheChanged=true}}else{var elementStyle=getObjectCSSMatrix(object.matrixWorld);if(cachedObject.cameraFov!==_fov){object.containerElement.style.perspective=(cachedObject.cameraFov=_fov)+"px";cacheChanged=true}if(cachedObject.width!==_width||cachedObject.height!==_height){object.cameraElement.style.width=object.containerElement.style.width=(cachedObject.width=_width)+"px";object.cameraElement.style.height=object.containerElement.style.height=(cachedObject.height=_height)+"px";cacheChanged=true}if(cachedObject.cameraStyle!==_cameraStyle){cachedObject.cameraStyle=object.cameraElement.style.transform=_cameraStyle;cacheChanged=true}if(cachedObject.elementStyle!==elementStyle){cachedObject.elementStyle=object.element.style.transform=elementStyle;cacheChanged=true}}object.containerElement.style.left="0"}else{object.containerElement.style.left=_width+"px"}if(cacheChanged)cache.objects.set(object,cachedObject);object.containerElement.style.display=object.visible?"":"none";if(object.containerElement.parentNode!==domElement)domElement.appendChild(object.containerElement);object.onAfterRender(_this,scene,camera)}for(var i=0,l=object.children.length;i<l;i++)renderObject(object.children[i],scene,camera)}function epsilon(value){return value<1e-10&&value>-1e-10?0:value}function getCameraCSSMatrix(matrix){var elements=matrix.elements;return"matrix3d("+epsilon(elements[0])+","+epsilon(-elements[1])+","+epsilon(elements[2])+","+epsilon(elements[3])+","+epsilon(elements[4])+","+epsilon(-elements[5])+","+epsilon(elements[6])+","+epsilon(elements[7])+","+epsilon(elements[8])+","+epsilon(-elements[9])+","+epsilon(elements[10])+","+epsilon(elements[11])+","+epsilon(elements[12])+","+epsilon(-elements[13])+","+epsilon(elements[14])+","+epsilon(elements[15])+")"}function getObjectCSSMatrix(matrix){var elements=matrix.elements;var matrix3d="matrix3d("+epsilon(elements[0])+","+epsilon(elements[1])+","+epsilon(elements[2])+","+epsilon(elements[3])+","+epsilon(-elements[4])+","+epsilon(-elements[5])+","+epsilon(-elements[6])+","+epsilon(-elements[7])+","+epsilon(elements[8])+","+epsilon(elements[9])+","+epsilon(elements[10])+","+epsilon(elements[11])+","+epsilon(elements[12])+","+epsilon(elements[13])+","+epsilon(elements[14])+","+epsilon(elements[15])+")";return"translate(-50%,-50%)"+matrix3d}function getQuadCSSMatrix(matrix){var elements=matrix.elements;var matrix3d="matrix3d("+epsilon(elements[0])+","+epsilon(elements[1])+","+epsilon(elements[2])+","+epsilon(elements[3])+","+epsilon(elements[4])+","+epsilon(elements[5])+","+epsilon(elements[6])+","+epsilon(elements[7])+","+epsilon(elements[8])+","+epsilon(elements[9])+","+epsilon(elements[10])+","+epsilon(elements[11])+","+epsilon(elements[12])+","+epsilon(elements[13])+","+epsilon(elements[14])+","+epsilon(elements[15])+")";return matrix3d}}};THREE.CSS3DRenderer=CSS3DRenderer;function projectVertices(object,camera){for(var index=0;index<object.vertices.length;index++){var vertex=object.vertices[index];var projectedVertex=object.projectedVertices[index];projectedVertex.copy(vertex);projectedVertex.applyMatrix4(object.matrixWorld);projectedVertex.applyMatrix4(camera.matrixWorldInverse);var z=projectedVertex.z;projectedVertex.applyMatrix4(camera.projectionMatrix);projectedVertex.z=z}}function setArray(){var a=arguments[0];for(var i=1;i<arguments.length;i++)a[i-1]=arguments[i];return a}function copyArray(t,s){for(var i=0;i<s.length;i++)t[i]=s[i];return t}function adjugate(m,out){setArray(out,m[4]*m[8]-m[5]*m[7],m[2]*m[7]-m[1]*m[8],m[1]*m[5]-m[2]*m[4],m[5]*m[6]-m[3]*m[8],m[0]*m[8]-m[2]*m[6],m[2]*m[3]-m[0]*m[5],m[3]*m[7]-m[4]*m[6],m[1]*m[6]-m[0]*m[7],m[0]*m[4]-m[1]*m[3])}function multmm(a,b,out){for(var i=0;i!=3;++i){for(var j=0;j!=3;++j){var cij=0;for(var k=0;k!=3;++k){cij+=a[3*i+k]*b[3*k+j]}out[3*i+j]=cij}}}function multmv(m,v,out){return setArray(out,m[0]*v[0]+m[1]*v[1]+m[2]*v[2],m[3]*v[0]+m[4]*v[1]+m[5]*v[2],m[6]*v[0]+m[7]*v[1]+m[8]*v[2])}var m=new Array(9);var m2=new Array(9);var mAdj=new Array(9);var p=new Array(3);var v=new Array(3);var s=new Array(9);var d=new Array(9);var sAdj=new Array(9);var t=new Array(9);function basisToPoints(x1,y1,x2,y2,x3,y3,x4,y4,out){setArray(m,x1,x2,x3,y1,y2,y3,1,1,1);adjugate(m,mAdj);setArray(p,x4,y4,1);multmv(mAdj,p,v);setArray(m2,v[0],0,0,0,v[1],0,0,0,v[2]);return multmm(m,m2,out)}function general2DProjection(x1s,y1s,x1d,y1d,x2s,y2s,x2d,y2d,x3s,y3s,x3d,y3d,x4s,y4s,x4d,y4d,out){basisToPoints(x1s,y1s,x2s,y2s,x3s,y3s,x4s,y4s,s);basisToPoints(x1d,y1d,x2d,y2d,x3d,y3d,x4d,y4d,d);adjugate(s,sAdj);return multmm(d,sAdj,out)}function createQuadMatrix(w,h,x1,y1,x2,y2,x3,y3,x4,y4,out){general2DProjection(0,0,x1,y1,w,0,x2,y2,0,h,x3,y3,w,h,x4,y4,t);setArray(out,t[0]/t[8],t[3]/t[8],0,t[6]/t[8],t[1]/t[8],t[4]/t[8],0,t[7]/t[8],0,0,1,0,t[2]/t[8],t[5]/t[8],0,1)}});
})();