"use strict";
!function(ee){const _2="undefined";if("object"==typeof exports&&_2!=typeof ǃqZ)ǃqZ.exports=ee();else if("function"==typeof ǃql&&ǃql.ǃqx)ǃql([],ee);else{var te;te=_2==typeof window?_2==typeof global?_2==typeof self?this:self:global:window,te.localforage=ee()}}(function(){const _3="string",_4="setItem",_5="function",_6="readonly",_7="undefined",_8="readwrite",_9=" to version ",_10="asyncStorage",_11="DELETE FROM ",_12="[object Blob]",_13="webSQLStorage",_14="The database \"",_15="SELECT * FROM ",_16="SELECT key FROM ",_17="localStorageWrapper",_18="[object ArrayBuffer]",_19="No available storage method found.",_20=" used as a key, but it is not a string.";return function ee(te,ne,ie){function ae(oe,ye){if(!ne[oe]){if(!te[oe]){var Oe=_5==typeof ǃqA&&ǃqA;if(!ye&&Oe)return Oe(oe,!0);if(de)return de(oe,!0);var le=new Error("Cannot find module '"+oe+"'");throw le.code="MODULE_NOT_FOUND",le}var Je=ne[oe]={exports:{}};te[oe][0].call(Je.exports,function(ue){var pe=te[oe][1][ue];return ae(pe?pe:ue)},Je,Je.exports,ee,te,ne,ie)}return ne[oe].exports}for(var de=_5==typeof ǃqA&&ǃqA,re=0;reRn;Rn++)Nn[Rn]=kn.charCodeAt(Rn);return Xn}function ue(kn){return new Yt(function(Sn){var Xn=kn.transaction(Ht,_8),Nn=ye([""]);Xn.objectStore(Ht).put(Nn,"key"),Xn.onabort=function(Rn){Rn.preventDefault(),Rn.stopPropagation(),Sn(!1)},Xn.oncomplete=function(){var Rn=navigator.userAgent.match(/Chrome\/(\d+)/),Cn=navigator.userAgent.match(/Edge\//);Sn(Cn||!Rn||43<=parseInt(Rn[1],10))}})["catch"](function(){return!1})}function pe(kn){return"boolean"==typeof At?Yt.resolve(At):ue(kn).then(function(Sn){return At=Sn})}function he(kn){var Sn=qt[kn.name],Xn={};Xn.ǃqs=new Yt(function(Nn){Xn.resolve=Nn}),Sn.ǃMO.push(Xn),Sn.ǃMJ=Sn.ǃMJ?Sn.ǃMJ.then(function(){return Xn.ǃqs}):Xn.ǃqs}function ge(kn){var Sn=qt[kn.name],Xn=Sn.ǃMO.pop();Xn&&Xn.resolve()}function me(kn,Sn){return new Yt(function(Xn,Nn){if(kn.db){if(!Sn)return Xn(kn.db);he(kn),kn.db.close()}var Rn=[kn.name];Sn&&Rn.push(kn.version);var Cn=$t.open.apply($t,Rn);Sn&&(Cn.onupgradeneeded=function(Dn){var Fn=Cn.result;try{Fn.createObjectStore(kn.ǃMy),1>=Dn.oldVersion&&Fn.createObjectStore(Ht)}catch(Zn){if("ConstraintError"!==Zn.name)throw Zn;console.warn(_14+kn.name+"\" has been upgraded from version "+Dn.oldVersion+_9+Dn.newVersion+", but the storage \""+kn.ǃMy+"\" already exists.")}}),Cn.onerror=function(Dn){Dn.preventDefault(),Nn(Cn.error)},Cn.onsuccess=function(){Xn(Cn.result),ge(kn)}})}function ve(kn){return me(kn,!1)}function be(kn){return me(kn,!0)}function Ue(kn,Sn){if(!kn.db)return!0;var Xn=!kn.db.objectStoreNames.contains(kn.ǃMy),Nn=kn.versionkn.db.version;if(Nn&&(kn.version!==Sn&&console.warn(_14+kn.name+"\" can't be downgraded from version "+kn.db.version+_9+kn.version+"."),kn.version=kn.db.version),Rn||Xn){if(Xn){var Cn=kn.db.version+1;Cn>kn.version&&(kn.version=Cn)}return!0}return!1}function Ee(kn){return new Yt(function(Sn,Xn){var Nn=new FileReader;Nn.onerror=Xn,Nn.onloadend=function(Rn){var Cn=btoa(Rn.target.result||"");Sn({ǃMf:!0,data:Cn,type:kn.type})},Nn.readAsBinaryString(kn)})}function Le(kn){var Sn=Je(atob(kn.data));return ye([Sn],{type:kn.type})}function we(kn){return kn&&kn.ǃMf}function xe(kn){var Sn=this,Xn=Sn.ǃMS().then(function(){var Nn=qt[Sn.ǃMn.name];return Nn&&Nn.ǃMJ?Nn.ǃMJ:void 0});return le(Xn,kn,kn),Xn}function Ie(kn){var Dn=.75*kn.length,Fn=kn.length,Zn=0,Sn,Xn,Nn,Rn,Cn;"="===kn[kn.length-1]&&(Dn--,"="===kn[kn.length-2]&&Dn--);var In=new ArrayBuffer(Dn),_n=new Uint8Array(In);for(Sn=0;Fn>Sn;Sn+=4)Xn=Mt.indexOf(kn[Sn]),Nn=Mt.indexOf(kn[Sn+1]),Rn=Mt.indexOf(kn[Sn+2]),Cn=Mt.indexOf(kn[Sn+3]),_n[Zn++]=Xn<<2|Nn>>4,_n[Zn++]=(15&Nn)<<4|Rn>>2,_n[Zn++]=(3&Rn)<<6|63&Cn;return In}function _e(kn){var Xn=new Uint8Array(kn),Nn="",Sn;for(Sn=0;Sn>2],Nn+=Mt[(3&Xn[Sn])<<4|Xn[Sn+1]>>4],Nn+=Mt[(15&Xn[Sn+1])<<2|Xn[Sn+2]>>6],Nn+=Mt[63&Xn[Sn+2]];return 2==Xn.length%3?Nn=Nn.substring(0,Nn.length-1)+"=":1==Xn.length%3&&(Nn=Nn.substring(0,Nn.length-2)+"=="),Nn}function Ye(kn,Sn,Xn,Nn){var Rn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Cn=new Yt(function(Dn,Fn){Rn.ǃMR().then(function(){void 0===Sn&&(Sn=null);var Zn=Sn,In=Rn.ǃMn;In.ǃMU.ǃMu(Sn,function(_n,$n){$n?Fn($n):In.db.transaction(function(An){An.ǃMH("INSERT OR REPLACE INTO "+In.ǃMy+" (key, value) VALUES (?, ?)",[kn,_n],function(){Dn(Zn)},function(qn,Tn){Fn(Tn)})},function(An){if(An.code===An.QUOTA_ERR){if(0kn?void Rn(null):void Xn.ǃMR().then(function(){var Dn=Xn.ǃMn,Fn=Dn.db.transaction(Dn.ǃMy,_6).objectStore(Dn.ǃMy),Zn=!1,In=Fn.openCursor();In.onsuccess=function(){var _n=In.result;return _n?void(0===kn?Rn(_n.key):Zn?Rn(_n.key):(Zn=!0,_n.advance(kn))):void Rn(null)},In.onerror=function(){Cn(In.error)}})["catch"](Cn)});return Oe(Nn,Sn),Nn},keys:function(kn){var Sn=this,Xn=new Yt(function(Nn,Rn){Sn.ǃMR().then(function(){var Cn=Sn.ǃMn,Dn=Cn.db.transaction(Cn.ǃMy,_6).objectStore(Cn.ǃMy),Fn=Dn.openCursor(),Zn=[];Fn.onsuccess=function(){var In=Fn.result;return In?(Zn.push(In.key),void In["continue"]()):void Nn(Zn)},Fn.onerror=function(){Rn(Fn.error)}})["catch"](Rn)});return Oe(Xn,kn),Xn}},Mt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Wt=/^~~local_forage_type~([^~]+)~/,Kt="__lfsc__:",Qt=Kt.length,Gt="arbf",en="blob",tn="si08",nn="ui08",an="uic8",dn="si16",rn="si32",on="ur16",yn="ui32",On="fl32",ln="fl64",Jn=Qt+Gt.length,un=Object.prototype.toString,cn={ǃMu:function(kn,Sn){var Xn="";if(kn&&(Xn=un.call(kn)),kn&&(_18===Xn||kn.buffer&&_18===un.call(kn.buffer))){var Rn=Kt,Nn;kn instanceof ArrayBuffer?(Nn=kn,Rn+=Gt):(Nn=kn.buffer,"[object Int8Array]"==Xn?Rn+=tn:"[object Uint8Array]"==Xn?Rn+=nn:"[object Uint8ClampedArray]"==Xn?Rn+=an:"[object Int16Array]"==Xn?Rn+=dn:"[object Uint16Array]"==Xn?Rn+=on:"[object Int32Array]"==Xn?Rn+=rn:"[object Uint32Array]"==Xn?Rn+=yn:"[object Float32Array]"==Xn?Rn+=On:"[object Float64Array]"==Xn?Rn+=ln:Sn(new Error("Failed to get type for BinaryArray"))),Sn(Rn+_e(Nn))}else if(_12===Xn){var Cn=new FileReader;Cn.onload=function(){var Dn="~~local_forage_type~"+kn.type+"~"+_e(this.result);Sn(Kt+en+Dn)},Cn.readAsArrayBuffer(kn)}else try{Sn(JSON.stringify(kn))}catch(Dn){console.error("Couldn't convert value into a JSON string: ",kn),Sn(null,Dn)}},ǃMC:function(kn){if(kn.substring(0,Qt)!==Kt)return JSON.parse(kn);var Xn=kn.substring(Jn),Nn=kn.substring(Qt,Jn),Sn;if(Nn===en&&Wt.test(Xn)){var Rn=Xn.match(Wt);Sn=Rn[1],Xn=Xn.substring(Rn[0].length)}var Cn=Ie(Xn);switch(Nn){case Gt:return Cn;case en:return ye([Cn],{type:Sn});case tn:return new Int8Array(Cn);case nn:return new Uint8Array(Cn);case an:return new Uint8ClampedArray(Cn);case dn:return new Int16Array(Cn);case on:return new Uint16Array(Cn);case rn:return new Int32Array(Cn);case yn:return new Uint32Array(Cn);case On:return new Float32Array(Cn);case ln:return new Float64Array(Cn);default:throw new Error("Unkown type: "+Nn);}},ǃMt:Ie,ǃM$:_e},pn={ǃMm:_13,ǃMb:function(kn){var Sn=this,Xn={db:null};if(kn)for(var Nn in kn)Xn[Nn]=_3==typeof kn[Nn]?kn[Nn]:kn[Nn].toString();var Rn=new Yt(function(Cn,Dn){try{Xn.db=openDatabase(Xn.name,Xn.version+"",Xn.description,Xn.size)}catch(Fn){return Dn(Fn)}Xn.db.transaction(function(Fn){Fn.ǃMH("CREATE TABLE IF NOT EXISTS "+Xn.ǃMy+" (id INTEGER PRIMARY KEY, key unique, value)",[],function(){Sn.ǃMn=Xn,Cn()},function(Zn,In){Dn(In)})})});return Xn.ǃMU=cn,Rn},ǃMc:function(kn,Sn){var Xn=this,Nn=new Yt(function(Rn,Cn){Xn.ǃMR().then(function(){var Dn=Xn.ǃMn;Dn.db.transaction(function(Fn){Fn.ǃMH(_15+Dn.ǃMy,[],function(Zn,In){for(var _n=In.rows,$n=_n.length,An=0;$n>An;An++){var qn=_n.item(An),Tn=qn.value;if(Tn&&(Tn=Dn.ǃMU.ǃMC(Tn)),Tn=kn(Tn,qn.key,An+1),void 0!==Tn)return void Rn(Tn)}Rn()},function(Zn,In){Cn(In)})})})["catch"](Cn)});return Oe(Nn,Sn),Nn},getItem:function(kn,Sn){var Xn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Nn=new Yt(function(Rn,Cn){Xn.ǃMR().then(function(){var Dn=Xn.ǃMn;Dn.db.transaction(function(Fn){Fn.ǃMH(_15+Dn.ǃMy+" WHERE key = ? LIMIT 1",[kn],function(Zn,In){var _n=In.rows.length?In.rows.item(0).value:null;_n&&(_n=Dn.ǃMU.ǃMC(_n)),Rn(_n)},function(Zn,In){Cn(In)})})})["catch"](Cn)});return Oe(Nn,Sn),Nn},setItem:function(kn,Sn,Xn){return Ye.apply(this,[kn,Sn,Xn,1])},removeItem:function(kn,Sn){var Xn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Nn=new Yt(function(Rn,Cn){Xn.ǃMR().then(function(){var Dn=Xn.ǃMn;Dn.db.transaction(function(Fn){Fn.ǃMH(_11+Dn.ǃMy+" WHERE key = ?",[kn],function(){Rn()},function(Zn,In){Cn(In)})})})["catch"](Cn)});return Oe(Nn,Sn),Nn},clear:function(kn){var Sn=this,Xn=new Yt(function(Nn,Rn){Sn.ǃMR().then(function(){var Cn=Sn.ǃMn;Cn.db.transaction(function(Dn){Dn.ǃMH(_11+Cn.ǃMy,[],function(){Nn()},function(Fn,Zn){Rn(Zn)})})})["catch"](Rn)});return Oe(Xn,kn),Xn},length:function(kn){var Sn=this,Xn=new Yt(function(Nn,Rn){Sn.ǃMR().then(function(){var Cn=Sn.ǃMn;Cn.db.transaction(function(Dn){Dn.ǃMH("SELECT COUNT(key) as c FROM "+Cn.ǃMy,[],function(Fn,Zn){var In=Zn.rows.item(0).c;Nn(In)},function(Fn,Zn){Rn(Zn)})})})["catch"](Rn)});return Oe(Xn,kn),Xn},key:function(kn,Sn){var Xn=this,Nn=new Yt(function(Rn,Cn){Xn.ǃMR().then(function(){var Dn=Xn.ǃMn;Dn.db.transaction(function(Fn){Fn.ǃMH(_16+Dn.ǃMy+" WHERE id = ? LIMIT 1",[kn+1],function(Zn,In){var _n=In.rows.length?In.rows.item(0).key:null;Rn(_n)},function(Zn,In){Cn(In)})})})["catch"](Cn)});return Oe(Nn,Sn),Nn},keys:function(kn){var Sn=this,Xn=new Yt(function(Nn,Rn){Sn.ǃMR().then(function(){var Cn=Sn.ǃMn;Cn.db.transaction(function(Dn){Dn.ǃMH(_16+Cn.ǃMy,[],function(Fn,Zn){for(var In=[],_n=0;_nIn;In++)if(_n=localStorage.key(In),0===_n.indexOf(Cn)){var $n=localStorage.getItem(_n);if($n&&($n=Rn.ǃMU.ǃMC($n)),$n=kn($n,_n.substring(Dn),Zn++),void 0!==$n)return $n}});return Oe(Nn,Sn),Nn},getItem:function(kn,Sn){var Xn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Nn=Xn.ǃMR().then(function(){var Rn=Xn.ǃMn,Cn=localStorage.getItem(Rn.ǃM_+kn);return Cn&&(Cn=Rn.ǃMU.ǃMC(Cn)),Cn});return Oe(Nn,Sn),Nn},setItem:function(kn,Sn,Xn){var Nn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Rn=Nn.ǃMR().then(function(){void 0===Sn&&(Sn=null);var Cn=Sn;return new Yt(function(Dn,Fn){var Zn=Nn.ǃMn;Zn.ǃMU.ǃMu(Sn,function(In,_n){if(_n)Fn(_n);else try{localStorage.setItem(Zn.ǃM_+kn,In),Dn(Cn)}catch($n){"QuotaExceededError"!==$n.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==$n.name||Fn($n),Fn($n)}})})});return Oe(Rn,Xn),Rn},removeItem:function(kn,Sn){var Xn=this;_3!=typeof kn&&(console.warn(kn+_20),kn=kn+"");var Nn=Xn.ǃMR().then(function(){var Rn=Xn.ǃMn;localStorage.removeItem(Rn.ǃM_+kn)});return Oe(Nn,Sn),Nn},clear:function(kn){var Sn=this,Xn=Sn.ǃMR().then(function(){for(var Nn=Sn.ǃMn.ǃM_,Rn=localStorage.length-1,Cn;0<=Rn;Rn--)Cn=localStorage.key(Rn),0===Cn.indexOf(Nn)&&localStorage.removeItem(Cn)});return Oe(Xn,kn),Xn},length:function(kn){var Sn=this,Xn=Sn.keys().then(function(Nn){return Nn.length});return Oe(Xn,kn),Xn},key:function(kn,Sn){var Xn=this,Nn=Xn.ǃMR().then(function(){var Cn=Xn.ǃMn,Rn;try{Rn=localStorage.key(kn)}catch(Dn){Rn=null}return Rn&&(Rn=Rn.substring(Cn.ǃM_.length)),Rn});return Oe(Nn,Sn),Nn},keys:function(kn){var Sn=this,Xn=Sn.ǃMR().then(function(){for(var Nn=Sn.ǃMn,Rn=localStorage.length,Cn=[],Dn=0;Rn>Dn;Dn++)0===localStorage.key(Dn).indexOf(Nn.ǃM_)&&Cn.push(localStorage.key(Dn).substring(Nn.ǃM_.length));return Cn});return Oe(Xn,kn),Xn}},gn={},mn={ǃMq:_10,ǃMM:_17,ǃMB:_13},vn=[mn.ǃMq,mn.ǃMB,mn.ǃMM],bn=["clear","getItem","iterate","key","keys","length","removeItem",_4],Un={description:"",ǃML:vn.slice(),name:"localforage",size:4980736,ǃMy:"keyvaluepairs",version:1},En={},At,qt;En[mn.ǃMq]=function(){try{if(!$t)return!1;var kn=_7!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),Sn=_5==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!kn||Sn)&&_7!=typeof indexedDB&&_7!=typeof IDBKeyRange}catch(Xn){return!1}}(),En[mn.ǃMB]=function(){return _5==typeof openDatabase}(),En[mn.ǃMM]=function(){try{return _7!=typeof localStorage&&_4 in localStorage&&localStorage.setItem}catch(kn){return!1}}();var Ln=Array.isArray||function(kn){return"[object Array]"===Object.prototype.toString.call(kn)},wn=function(){function kn(Sn){ie(this,kn),this.ǃMq=mn.ǃMq,this.ǃMM=mn.ǃMM,this.ǃMB=mn.ǃMB,this.ǃMg=Zt({},Un),this.ǃMz=Zt({},this.ǃMg,Sn),this.ǃMk=null,this.ǃMV=null,this.ǃMK=!1,this.ǃMn=null,this.ǃMo(),this.ǃMe(this.ǃMz.ǃML)["catch"](function(){})}return kn.prototype.ǃMr=function(Sn){if("object"===(_7==typeof Sn?_7:_t(Sn))){if(this.ǃMK)return new Error("Can't call config() after localforage has been used.");for(var Xn in Sn){if("storeName"==Xn&&(Sn[Xn]=Sn[Xn].replace(/\W/g,"_")),"version"==Xn&&"number"!=typeof Sn[Xn])return new Error("Database version must be a number.");this.ǃMz[Xn]=Sn[Xn]}return"driver"in Sn&&Sn.ǃML?this.ǃMe(this.ǃMz.ǃML):!0}return _3==typeof Sn?this.ǃMz[Sn]:this.ǃMz},kn.prototype.ǃMI=function(Sn,Xn,Nn){var Rn=new Yt(function(Cn,Dn){try{var Fn=Sn.ǃMm,Zn=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver"),In=new Error("Custom driver name already in use: "+Sn.ǃMm);if(!Sn.ǃMm)return void Dn(Zn);if(It(Sn.ǃMm))return void Dn(In);for(var _n=bn.concat("_initStorage"),$n=0,An;$n<_n.length;$n++)if(An=_n[$n],!An||!Sn[An]||_5!=typeof Sn[An])return void Dn(Zn);var qn=Yt.resolve(!0);"_support"in Sn&&(qn=Sn.ǃMN&&_5==typeof Sn.ǃMN?Sn.ǃMN():Yt.resolve(!!Sn.ǃMN)),qn.then(function(Tn){En[Fn]=Tn,gn[Fn]=Sn,Cn()},Dn)}catch(Tn){Dn(Tn)}});return le(Rn,Xn,Nn),Rn},kn.prototype.ǃML=function(){return this.ǃMm||null},kn.prototype.ǃMG=function(Sn,Xn,Nn){var Rn=this,Cn=Yt.resolve().then(function(){if(!It(Sn)){if(gn[Sn])return gn[Sn];throw new Error("Driver not found.")}return Sn===Rn.ǃMq?jt:Sn===Rn.ǃMM?hn:Sn===Rn.ǃMB?pn:void 0});return le(Cn,Xn,Nn),Cn},kn.prototype.ǃME=function(Sn){var Xn=Yt.resolve(cn);return le(Xn,Sn),Xn},kn.prototype.ǃMR=function(Sn){var Xn=this,Nn=Xn.ǃMk.then(function(){return null===Xn.ǃMK&&(Xn.ǃMK=Xn.ǃMV()),Xn.ǃMK});return le(Nn,Sn,Sn),Nn},kn.prototype.ǃMe=function(Sn,Xn,Nn){function Rn(){Fn.ǃMz.ǃML=Fn.ǃML()}function Cn(_n){return Fn.ǃMT(_n),Rn(),Fn.ǃMK=Fn.ǃMb(Fn.ǃMz),Fn.ǃMK}function Dn(_n){return function(){function $n(){for(;An<_n.length;){var qn=_n[An];return An++,Fn.ǃMn=null,Fn.ǃMK=null,Fn.ǃMG(qn).then(Cn)["catch"]($n)}Rn();var Tn=new Error(_19);return Fn.ǃMk=Yt.reject(Tn),Fn.ǃMk}var An=0;return $n()}}var Fn=this;Ln(Sn)||(Sn=[Sn]);var Zn=this.ǃMD(Sn),In=null===this.ǃMk?Yt.resolve():this.ǃMk["catch"](function(){return Yt.resolve()});return this.ǃMk=In.then(function(){var _n=Zn[0];return Fn.ǃMn=null,Fn.ǃMK=null,Fn.ǃMG(_n).then(function($n){Fn.ǃMm=$n.ǃMm,Rn(),Fn.ǃMo(),Fn.ǃMV=Dn(Zn)})})["catch"](function(){Rn();var _n=new Error(_19);return Fn.ǃMk=Yt.reject(_n),Fn.ǃMk}),le(this.ǃMk,Xn,Nn),this.ǃMk},kn.prototype.supports=function(Sn){return!!En[Sn]},kn.prototype.ǃMT=function(Sn){Zt(this,Sn)},kn.prototype.ǃMD=function(Sn){for(var Xn=[],Nn=0,Rn=Sn.length,Cn;Rn>Nn;Nn++)Cn=Sn[Nn],this.supports(Cn)&&Xn.push(Cn);return Xn},kn.prototype.ǃMo=function(){for(var Sn=0;Snre[5]&re[0]>re[10]?(ye=2*Math.sqrt(1+re[0]-re[5]-re[10]),de[3]=(re[6]-re[9])/ye,de[0]=0.25*ye,de[1]=(re[1]+re[4])/ye,de[2]=(re[8]+re[2])/ye):re[5]>re[10]?(ye=2*Math.sqrt(1+re[5]-re[0]-re[10]),de[3]=(re[8]-re[2])/ye,de[0]=(re[1]+re[4])/ye,de[1]=0.25*ye,de[2]=(re[6]+re[9])/ye):(ye=2*Math.sqrt(1+re[10]-re[0]-re[5]),de[3]=(re[1]-re[4])/ye,de[0]=(re[8]+re[2])/ye,de[1]=(re[6]+re[9])/ye,de[2]=0.25*ye),de},ae.ǃOqS=function(de,re,oe,ye){var Oe=re[0],le=re[1],Je=re[2],ue=re[3],pe=Oe+Oe,he=le+le,ge=Je+Je,me=Oe*pe,ve=Oe*he,be=Oe*ge,Ue=le*he,Ee=le*ge,Le=Je*ge,we=ue*pe,xe=ue*he,ke=ue*ge,Se=ye[0],Xe=ye[1],Ne=ye[2];return de[0]=(1-(Ue+Le))*Se,de[1]=(ve+ke)*Se,de[2]=(be-xe)*Se,de[3]=0,de[4]=(ve-ke)*Xe,de[5]=(1-(me+Le))*Xe,de[6]=(Ee+we)*Xe,de[7]=0,de[8]=(be+xe)*Ne,de[9]=(Ee-we)*Ne,de[10]=(1-(me+Ue))*Ne,de[11]=0,de[12]=oe[0],de[13]=oe[1],de[14]=oe[2],de[15]=1,de},ae.ǃOqn=function(de,re,oe,ye,Oe){var le=re[0],Je=re[1],ue=re[2],pe=re[3],he=le+le,ge=Je+Je,me=ue+ue,ve=le*he,be=le*ge,Ue=le*me,Ee=Je*ge,Le=Je*me,we=ue*me,xe=pe*he,ke=pe*ge,Se=pe*me,Xe=ye[0],Ne=ye[1],Re=ye[2],Ce=Oe[0],De=Oe[1],Fe=Oe[2];return de[0]=(1-(Ee+we))*Xe,de[1]=(be+Se)*Xe,de[2]=(Ue-ke)*Xe,de[3]=0,de[4]=(be-Se)*Ne,de[5]=(1-(ve+we))*Ne,de[6]=(Le+xe)*Ne,de[7]=0,de[8]=(Ue+ke)*Re,de[9]=(Le-xe)*Re,de[10]=(1-(ve+Ee))*Re,de[11]=0,de[12]=oe[0]+Ce-(de[0]*Ce+de[4]*De+de[8]*Fe),de[13]=oe[1]+De-(de[1]*Ce+de[5]*De+de[9]*Fe),de[14]=oe[2]+Fe-(de[2]*Ce+de[6]*De+de[10]*Fe),de[15]=1,de},ae.ǃO$w=function(de,re){var oe=re[0],ye=re[1],Oe=re[2],le=re[3],Je=oe+oe,ue=ye+ye,pe=Oe+Oe,he=oe*Je,ge=ye*Je,me=ye*ue,ve=Oe*Je,be=Oe*ue,Ue=Oe*pe,Ee=le*Je,Le=le*ue,we=le*pe;return de[0]=1-me-Ue,de[1]=ge+we,de[2]=ve-Le,de[3]=0,de[4]=ge-we,de[5]=1-he-Ue,de[6]=be+Ee,de[7]=0,de[8]=ve+Le,de[9]=be-Ee,de[10]=1-he-me,de[11]=0,de[12]=0,de[13]=0,de[14]=0,de[15]=1,de},ae.ǃOqX=function(de,re,oe,ye,Oe,le,Je){var ue=1/(oe-re),pe=1/(Oe-ye),he=1/(le-Je);return de[0]=2*le*ue,de[1]=0,de[2]=0,de[3]=0,de[4]=0,de[5]=2*le*pe,de[6]=0,de[7]=0,de[8]=(oe+re)*ue,de[9]=(Oe+ye)*pe,de[10]=(Je+le)*he,de[11]=-1,de[12]=0,de[13]=0,de[14]=2*(Je*le)*he,de[15]=0,de},ae.perspective=function(de,re,oe,ye,Oe){var le=1/Math.tan(re/2),Je=1/(ye-Oe);return de[0]=le/oe,de[1]=0,de[2]=0,de[3]=0,de[4]=0,de[5]=le,de[6]=0,de[7]=0,de[8]=0,de[9]=0,de[10]=(Oe+ye)*Je,de[11]=-1,de[12]=0,de[13]=0,de[14]=2*Oe*ye*Je,de[15]=0,de},ae.ǃOqR=function(de,re,oe,ye){var Oe=Math.tan(re.ǃOqg*Math.PI/180),le=Math.tan(re.ǃOqH*Math.PI/180),Je=Math.tan(re.ǃOqU*Math.PI/180),ue=Math.tan(re.ǃOqC*Math.PI/180),pe=2/(Je+ue),he=2/(Oe+le);return de[0]=pe,de[1]=0,de[2]=0,de[3]=0,de[4]=0,de[5]=he,de[6]=0,de[7]=0,de[8]=-(0.5*((Je-ue)*pe)),de[9]=0.5*((Oe-le)*he),de[10]=ye/(oe-ye),de[11]=-1,de[12]=0,de[13]=0,de[14]=ye*oe/(oe-ye),de[15]=0,de},ae.ǃOqu=function(de,re,oe,ye,Oe,le,Je){var ue=1/(re-oe),pe=1/(ye-Oe),he=1/(le-Je);return de[0]=-2*ue,de[1]=0,de[2]=0,de[3]=0,de[4]=0,de[5]=-2*pe,de[6]=0,de[7]=0,de[8]=0,de[9]=0,de[10]=2*he,de[11]=0,de[12]=(re+oe)*ue,de[13]=(Oe+ye)*pe,de[14]=(Je+le)*he,de[15]=1,de},ae.ǃOq_=function(de,re,oe,ye){var Ue=re[0],Ee=re[1],Le=re[2],we=ye[0],xe=ye[1],ke=ye[2],Se=oe[0],Xe=oe[1],Ne=oe[2],Oe,le,Je,ue,pe,he,ge,me,ve,be;return Math.abs(Ue-Se)he?(de.ǃOqc(ye,Oe,ue),1e-6>de.length(ye)&&de.ǃOqc(ye,le,ue),de.normalize(ye,ye),oe.ǃOqt(Je,ye,Math.PI),Je):0.999999Le&&(Le=-Le,me=-me,ve=-ve,be=-be,Ue=-Ue),1e-6<1-Le?(Ee=Math.acos(Le),we=Math.sin(Ee),xe=Math.sin((1-Je)*Ee)/we,ke=Math.sin(Je*Ee)/we):(xe=1-Je,ke=Je),ye[0]=xe*ue+ke*me,ye[1]=xe*pe+ke*ve,ye[2]=xe*he+ke*be,ye[3]=xe*ge+ke*Ue,ye},oe.ǃOqz=function(){var ye=oe.create(),Oe=oe.create();return function(le,Je,ue,pe,he,ge){return oe.ǃOqL(ye,Je,he,ge),oe.ǃOqL(Oe,ue,pe,ge),oe.ǃOqL(le,ye,Oe,2*ge*(1-ge)),le}}(),oe.ǃO$z=function(ye,Oe){var le=Oe[0],Je=Oe[1],ue=Oe[2],pe=Oe[3],he=le*le+Je*Je+ue*ue+pe*pe,ge=he?1/he:0;return ye[0]=-le*ge,ye[1]=-Je*ge,ye[2]=-ue*ge,ye[3]=pe*ge,ye},oe.ǃOqk=function(ye,Oe){return ye[0]=-Oe[0],ye[1]=-Oe[1],ye[2]=-Oe[2],ye[3]=Oe[3],ye},oe.length=re.length,oe.ǃOqV=oe.length,oe.ǃOqK=re.ǃOqK,oe.ǃOqo=oe.ǃOqK,oe.normalize=re.normalize,oe.ǃOqq=function(ye,Oe){var le=Oe[0]+Oe[4]+Oe[8],Je;if(0Oe[0]&&(ue=1),Oe[8]>Oe[3*ue+ue]&&(ue=2);var pe=(ue+1)%3,he=(ue+2)%3;Je=Math.sqrt(Oe[3*ue+ue]-Oe[3*pe+pe]-Oe[3*he+he]+1),ye[ue]=0.5*Je,Je=0.5/Je,ye[3]=(Oe[3*pe+he]-Oe[3*he+pe])*Je,ye[pe]=(Oe[3*pe+ue]+Oe[3*ue+pe])*Je,ye[he]=(Oe[3*he+ue]+Oe[3*ue+he])*Je}return ye},oe.ǃO$r=function(ye){return"quat("+ye[0]+_22+ye[1]+_22+ye[2]+_22+ye[3]+")"},oe.ǃO$E=re.ǃO$E,oe.ǃtE=re.ǃtE,ee.exports=oe},function(ee,te,ne){var ie=ne(1),ae={};ae.create=function(){var de=new ie.ǃO$m(3);return de[0]=0,de[1]=0,de[2]=0,de},ae.clone=function(de){var re=new ie.ǃO$m(3);return re[0]=de[0],re[1]=de[1],re[2]=de[2],re},ae.ǃO$B=function(de,re,oe){var ye=new ie.ǃO$m(3);return ye[0]=de,ye[1]=re,ye[2]=oe,ye},ae.ǃRV=function(de,re){return de[0]=re[0],de[1]=re[1],de[2]=re[2],de},ae.set=function(de,re,oe,ye){return de[0]=re,de[1]=oe,de[2]=ye,de},ae.add=function(de,re,oe){return de[0]=re[0]+oe[0],de[1]=re[1]+oe[1],de[2]=re[2]+oe[2],de},ae.ǃO$G=function(de,re,oe){return de[0]=re[0]-oe[0],de[1]=re[1]-oe[1],de[2]=re[2]-oe[2],de},ae.sub=ae.ǃO$G,ae.multiply=function(de,re,oe){return de[0]=re[0]*oe[0],de[1]=re[1]*oe[1],de[2]=re[2]*oe[2],de},ae.ǃO$K=ae.multiply,ae.ǃtw=function(de,re,oe){return de[0]=re[0]/oe[0],de[1]=re[1]/oe[1],de[2]=re[2]/oe[2],de},ae.ǃOqe=ae.ǃtw,ae.ceil=function(de,re){return de[0]=Math.ceil(re[0]),de[1]=Math.ceil(re[1]),de[2]=Math.ceil(re[2]),de},ae.floor=function(de,re){return de[0]=Math.floor(re[0]),de[1]=Math.floor(re[1]),de[2]=Math.floor(re[2]),de},ae.min=function(de,re,oe){return de[0]=Math.min(re[0],oe[0]),de[1]=Math.min(re[1],oe[1]),de[2]=Math.min(re[2],oe[2]),de},ae.max=function(de,re,oe){return de[0]=Math.max(re[0],oe[0]),de[1]=Math.max(re[1],oe[1]),de[2]=Math.max(re[2],oe[2]),de},ae.round=function(de,re){return de[0]=Math.round(re[0]),de[1]=Math.round(re[1]),de[2]=Math.round(re[2]),de},ae.scale=function(de,re,oe){return de[0]=re[0]*oe,de[1]=re[1]*oe,de[2]=re[2]*oe,de},ae.ǃOqr=function(de,re,oe,ye){return de[0]=re[0]+oe[0]*ye,de[1]=re[1]+oe[1]*ye,de[2]=re[2]+oe[2]*ye,de},ae.ǃOqI=function(de,re){var oe=re[0]-de[0],ye=re[1]-de[1],Oe=re[2]-de[2];return Math.sqrt(oe*oe+ye*ye+Oe*Oe)},ae.ǃOqN=ae.ǃOqI,ae.ǃOqG=function(de,re){var oe=re[0]-de[0],ye=re[1]-de[1],Oe=re[2]-de[2];return oe*oe+ye*ye+Oe*Oe},ae.ǃOqE=ae.ǃOqG,ae.length=function(de){var re=de[0],oe=de[1],ye=de[2];return Math.sqrt(re*re+oe*oe+ye*ye)},ae.ǃOqV=ae.length,ae.ǃOqK=function(de){var re=de[0],oe=de[1],ye=de[2];return re*re+oe*oe+ye*ye},ae.ǃOqo=ae.ǃOqK,ae.ǃOqT=function(de,re){return de[0]=-re[0],de[1]=-re[1],de[2]=-re[2],de},ae.inverse=function(de,re){return de[0]=1/re[0],de[1]=1/re[1],de[2]=1/re[2],de},ae.normalize=function(de,re){var oe=re[0],ye=re[1],Oe=re[2],le=oe*oe+ye*ye+Oe*Oe;return 0>>18,Le[1]=128|(258048&we)>>>12,Le[2]=128|(4032&we)>>>6,Le[3]=128|63&we):2048>>12,Le[1]=128|(4032&we)>>>6,Le[2]=128|63&we):128>>6,Le[1]=128|63&we):Le[0]=we,this.ǃOqF.push(Le)}this.ǃOqF=Array.prototype.concat.apply([],this.ǃOqF),this.ǃOqF.length!=this.data.length&&(this.ǃOqF.unshift(191),this.ǃOqF.unshift(187),this.ǃOqF.unshift(239))}function te(be,Ue){this.ǃOqZ=be,this.ǃOql=Ue,this.ǃOqx=null,this.ǃOqA=0,this.ǃOqh=null,this.ǃOqv=[]}function ne(be,Ue){if(be.length==void 0)throw new Error(be.length+"/"+Ue);for(var Ee=0;Eehe.length)throw new Error("Too long data");return Ee}function oe(be){var Ue=encodeURI(be).toString().replace(/\%[0-9a-fA-F]{2}/g,"a");return Ue.length+(Ue.length==be?0:3)}const _23="100%",_24="http://www.w3.org/1999/xlink";ee.prototype={ǃOqW:function(){return this.ǃOqF.length},write:function(be){for(var Ue=0,Ee=this.ǃOqF.length;Uebe||this.ǃOqA<=be||0>Ue||this.ǃOqA<=Ue)throw new Error(be+","+Ue);return this.ǃOqx[be][Ue]},ǃOqs:function(){return this.ǃOqA},ǃOMO:function(){this.ǃOMJ(!1,this.ǃOMy())},ǃOMJ:function(be,Ue){this.ǃOqA=4*this.ǃOqZ+17,this.ǃOqx=Array(this.ǃOqA);for(var Ee=0;Ee=Ee;Ee++)if(!(-1>=be+Ee||this.ǃOqA<=be+Ee))for(var Le=-1;7>=Le;Le++)-1>=Ue+Le||this.ǃOqA<=Ue+Le||(this.ǃOqx[be+Ee][Ue+Le]=0<=Ee&&6>=Ee&&(0==Le||6==Le)||0<=Le&&6>=Le&&(0==Ee||6==Ee)||2<=Ee&&4>=Ee&&2<=Le&&4>=Le)},ǃOMy:function(){for(var be=0,Ue=0,Ee=0;8>Ee;Ee++){this.ǃOMJ(!0,Ee);var Le=Je.ǃOMU(this);(0==Ee||be>Le)&&(be=Le,Ue=Ee)}return Ue},ǃOMC:function(be,Ue,Ee){var Le=be.ǃOMu(Ue,Ee),we=1;this.ǃOMO();for(var xe=0,ke;xe=xe;xe++)for(var ke=-2;2>=ke;ke++)this.ǃOqx[Le+xe][we+ke]=-2==xe||2==xe||-2==ke||2==ke||0==xe&&0==ke}},ǃOMR:function(be){for(var Ue=Je.ǃOMc(this.ǃOqZ),Ee=0,Le;18>Ee;Ee++)Le=!be&&1==(1&Ue>>Ee),this.ǃOqx[Math.floor(Ee/3)][Ee%3+this.ǃOqA-8-3]=Le;for(var Ee=0,Le;18>Ee;Ee++)Le=!be&&1==(1&Ue>>Ee),this.ǃOqx[Ee%3+this.ǃOqA-8-3][Math.floor(Ee/3)]=Le},ǃOMX:function(be,Ue){for(var Ee=this.ǃOql<<3|Ue,Le=Je.ǃOMt(Ee),we=0,xe;15>we;we++)xe=!be&&1==(1&Le>>we),6>we?this.ǃOqx[we][8]=xe:8>we?this.ǃOqx[we+1][8]=xe:this.ǃOqx[this.ǃOqA-15+we][8]=xe;for(var we=0,xe;15>we;we++)xe=!be&&1==(1&Le>>we),8>we?this.ǃOqx[8][this.ǃOqA-we-1]=xe:9>we?this.ǃOqx[8][15-we-1+1]=xe:this.ǃOqx[8][15-we-1]=xe;this.ǃOqx[this.ǃOqA-8][8]=!be},ǃOMH:function(be,Ue){for(var Ee=-1,Le=this.ǃOqA-1,we=7,xe=0,ke=this.ǃOqA-1;0Se;Se++)if(null==this.ǃOqx[Le][ke-Se]){var Xe=!1;xe>>we));var Ne=Je.ǃOM$(Ue,Le,ke-Se);Ne&&(Xe=!Xe),this.ǃOqx[Le][ke-Se]=Xe,we--,-1==we&&(xe++,we=7)}if(Le+=Ee,0>Le||this.ǃOqA<=Le){Le-=Ee,Ee=-Ee;break}}}},te.ǃOMq=236,te.ǃOMM=17,te.ǃOMg=function(be,Ue,Ee){for(var Le=ie.ǃOMB(be,Ue),we=new ae,xe=0,ke;xe8*Se)throw new Error("code length overflow. ("+we.ǃOML()+">"+8*Se+")");for(we.ǃOML()+4<=8*Se&&we.put(0,4);0!=we.ǃOML()%8;)we.ǃOMk(!1);for(;!(we.ǃOML()>=8*Se)&&!(we.put(te.ǃOMq,8),we.ǃOML()>=8*Se);)we.put(te.ǃOMM,8);return te.ǃOMV(we,Le)},te.ǃOMV=function(be,Ue){for(var Ee=0,Le=0,we=0,xe=Array(Ue.length),ke=Array(Ue.length),Se=0;Se>>=1;return Ue},ǃOMb:function(be){return Je.ǃOMF[be-1]},ǃOM$:function(be,Ue,Ee){switch(be){case le.ǃOMD:return 0==(Ue+Ee)%2;case le.ǃOMi:return 0==Ue%2;case le.ǃOMa:return 0==Ee%3;case le.ǃOMp:return 0==(Ue+Ee)%3;case le.ǃOMw:return 0==(Math.floor(Ue/2)+Math.floor(Ee/3))%2;case le.ǃOMY:return 0==Ue*Ee%2+Ue*Ee%3;case le.ǃOMQ:return 0==(Ue*Ee%2+Ue*Ee%3)%2;case le.ǃOMj:return 0==(Ue*Ee%3+(Ue+Ee)%2)%2;default:throw new Error("bad maskPattern:"+be);}},ǃOMo:function(be){for(var Ue=new ne([1],0),Ee=0;EeUe)switch(be){case ye.ǃOMr:return 10;case ye.ǃOMI:return 9;case ye.ǃOqj:return 8;case ye.ǃOMN:return 8;default:throw new Error("mode:"+be);}else if(27>Ue)switch(be){case ye.ǃOMr:return 12;case ye.ǃOMI:return 11;case ye.ǃOqj:return 16;case ye.ǃOMN:return 10;default:throw new Error("mode:"+be);}else if(41>Ue)switch(be){case ye.ǃOMr:return 14;case ye.ǃOMI:return 13;case ye.ǃOqj:return 16;case ye.ǃOMN:return 12;default:throw new Error("mode:"+be);}else throw new Error("type:"+Ue)},ǃOMU:function(be){for(var Ue=be.ǃOqs(),Ee=0,Le=0;Le=Se;Se++)if(!(0>Le+Se||Ue<=Le+Se))for(var Xe=-1;1>=Xe;Xe++)0>we+Xe||Ue<=we+Xe||(0!=Se||0!=Xe)&&ke==be.ǃOqd(Le+Se,we+Xe)&&xe++;5be)throw new Error("glog("+be+")");return ue.ǃOMv[be]},ǃOMA:function(be){for(;0>be;)be+=255;for(;256<=be;)be-=255;return ue.ǃOMP[be]},ǃOMP:Array(256),ǃOMv:Array(256)},pe=0;8>pe;pe++)ue.ǃOMP[pe]=1<pe;pe++)ue.ǃOMP[pe]=ue.ǃOMP[pe-4]^ue.ǃOMP[pe-5]^ue.ǃOMP[pe-6]^ue.ǃOMP[pe-8];for(var pe=0;255>pe;pe++)ue.ǃOMv[ue.ǃOMP[pe]]=pe;ne.prototype={get:function(be){return this.ǃOMd[be]},ǃOqW:function(){return this.ǃOMd.length},multiply:function(be){for(var Ue=Array(this.ǃOqW()+be.ǃOqW()-1),Ee=0;Eethis.ǃOqW()-be.ǃOqW())return this;for(var Ue=ue.ǃOMh(this.get(0))-ue.ǃOMh(be.get(0)),Ee=Array(this.ǃOqW()),Le=0;Le>>7-be%8)},put:function(be,Ue){for(var Ee=0;Ee>>Ue-Ee-1))},ǃOML:function(){return this.length},ǃOMk:function(be){var Ue=Math.floor(this.length/8);this.buffer.length<=Ue&&this.buffer.push(0),be&&(this.buffer[Ue]|=128>>>this.length%8),this.length++}};var he=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]],ge=function(){var be=function(Ue,Ee){this.ǃOBJ=Ue,this.ǃOBy=Ee};return be.prototype.ǃOBf=function(Ue){function Ee(De,Fe){var Ze=document.createElementNS("http://www.w3.org/2000/svg",De);for(var Ie in Fe)Fe.hasOwnProperty(Ie)&&Ze.setAttribute(Ie,Fe[Ie]);return Ze}var Le=this.ǃOBy,we=this.ǃOBJ,xe=Ue.ǃOqs(),ke=Math.floor(Le.width/xe),Se=Math.floor(Le.height/xe);this.clear();var Xe=Ee("svg",{viewBox:"0 0 "+(xe+" ")+(xe+""),width:_23,height:_23,fill:Le.ǃOBS});Xe.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink",_24),we.appendChild(Xe),Xe.appendChild(Ee("rect",{fill:Le.ǃOBS,width:_23,height:_23})),Xe.appendChild(Ee("rect",{fill:Le.ǃOBn,width:"1",height:"1",id:"template"}));for(var Ne=0;Ne"],Xe=0;Xe");for(var Ne=0;Ne");Se.push("")}Se.push(""),Le.innerHTML=Se.join("");var Re=Le.childNodes[0],Ce=(Ee.width-Re.offsetWidth)/2,De=(Ee.height-Re.offsetHeight)/2;0Pe||0>Me||Pe+Me>je.size)throw new RangeError("offset:"+Pe+", length:"+Me+", size:"+je.size);return je.slice?je.slice(Pe,Pe+Me):je.webkitSlice?je.webkitSlice(Pe,Pe+Me):je.ǃOBL?je.ǃOBL(Pe,Pe+Me):je.ǃOBz?je.ǃOBz(Pe,Pe+Me):void 0}function ae(je,Pe){var Me,Ve;return Me=new ArrayBuffer(je),Ve=new Uint8Array(Me),Pe&&Ve.set(Pe,0),{buffer:Me,ǃOBk:Ve,view:new DataView(Me)}}function de(){}function re(je){var Ve=this,We;Ve.size=0,Ve.init=function(Ke,Qe){var Ge=new Blob([je],{type:Ye});We=new ye(Ge),We.init(function(){Ve.size=We.size,Ke()},Qe)},Ve.ǃOBV=function(Ke,Qe,Ge,Jt){We.ǃOBV(Ke,Qe,Ge,Jt)}}function oe(je){var Ve=this,We;Ve.size=0,Ve.init=function(Ke){for(var Qe=je.length;"="==je.charAt(Qe-1);)Qe--;We=je.indexOf(",")+1,Ve.size=Math.floor(0.75*(Qe-We)),Ke()},Ve.ǃOBV=function(Ke,Qe,Ge){var Ut=ae(Qe),Jt,Lt=4*Math.floor(Ke/3),Xt=4*Math.ceil((Ke+Qe)/3),Dt=ee.atob(je.substring(Lt+We,Xt+We)),Ft=Ke-3*Math.floor(Lt/4);for(Jt=Ft;Jt>16,Me=65535&je;try{return new Date(1980+((65024&Pe)>>9),((480&Pe)>>5)-1,31&Pe,(63488&Me)>>11,(2016&Me)>>5,2*(31&Me),0)}catch(Ve){}}function we(je,Pe,Me,Ve,We){return(je.version=Pe.view.getUint16(Me,!0),je.ǃOBe=Pe.view.getUint16(Me+2,!0),je.ǃOBr=Pe.view.getUint16(Me+4,!0),je.ǃOBI=Pe.view.getUint32(Me+6,!0),je.ǃOBN=Le(je.ǃOBI),1==(1&je.ǃOBe))?void We(Ze):((Ve||8!=(8&je.ǃOBe))&&(je.ǃOBG=Pe.view.getUint32(Me+10,!0),je.ǃOBE=Pe.view.getUint32(Me+14,!0),je.ǃOBT=Pe.view.getUint32(Me+18,!0)),4294967295===je.ǃOBE||4294967295===je.ǃOBT?void We(Ie):void(je.ǃOBD=Pe.view.getUint16(Me+22,!0),je.ǃOBi=Pe.view.getUint16(Me+24,!0)))}function xe(je,Pe,Me){function Ve(){}function We(Ge){function Jt(Dt,Ft){je.ǃOBV(je.size-Dt,Dt,function(Zt){for(var It=Zt.length-Ut;0<=It;It--)if(80===Zt[It]&&75===Zt[It+1]&&5===Zt[It+2]&&6===Zt[It+3])return void Ge(new DataView(Zt.buffer,It,Ut));Ft()},function(){Me(_e)})}var Ut=22;if(je.sizeLt||Lt>=je.size?void Me(De):void je.ǃOBV(Lt,je.size-Lt,function(Dt){var Zt=0,It=[],qt=ae(Dt.length,Dt),Ft,_t,$t,At;for(Ft=0;Ft>>8^Ve[255&(Me^Pe[We])];this.crc=Me},te.prototype.get=function(){return~this.crc},te.prototype.table=function(){var Ve=[],je,Pe,Me;for(je=0;256>je;je++){for(Me=je,Pe=0;8>Pe;Pe++)1&Me?Me=3988292384^Me>>>1:Me>>>=1;Ve[je]=Me}return Ve}(),ne.prototype.append=function(Pe){return Pe},ne.prototype.flush=function(){},re.prototype=new de,re.prototype.constructor=re,oe.prototype=new de,oe.prototype.constructor=oe,ye.prototype=new de,ye.prototype.constructor=ye,Oe.prototype.getData=function(je){je(this.data)},le.prototype=new Oe,le.prototype.constructor=le,Je.prototype=new Oe,Je.prototype.constructor=Je,ue.prototype=new Oe,ue.prototype.constructor=ue;var ze={ǃOBF:[_26,"deflate.js"],inflater:[_26,"inflate.js"]};ee.zip={ǃOBl:de,ǃOBx:Oe,ǃOBA:ye,ǃOBh:oe,ǃOBv:re,ǃOBP:ue,ǃOBd:Je,ǃOBs:le,ǃOLO:function(je,Pe,Me){Me=Me||Ce,je.init(function(){xe(je,Pe,Me)},Me)},ǃOLJ:function(je,Pe,Me,Ve){Me=Me||Ce,Ve=!!Ve,je.init(function(){Xe(je,Pe,Me,Ve)},Me)},ǃOBo:!0,ǃOBZ:null,ǃOBW:null}}(this),"use strict",zip.ǃOBW={deflater:["3rdparty/zipjs/z-worker.js","3rdparty/zipjs/zlib-asm/zlib.js","3rdparty/zipjs/zlib-asm/codecs.js"],inflater:["3rdparty/zipjs/z-worker.js","3rdparty/zipjs/zlib-asm/zlib.js","3rdparty/zipjs/zlib-asm/codecs.js"]},!function(ee,te){"function"==typeof ǃql&&ǃql.ǃqx?ǃql(ee):"undefined"!=typeof ǃqZ&&"object"==typeof exports?ǃqZ.exports=ee():te.rangy=ee()}(function(){function ee(Ye,He){var ze=typeof Ye[He];return ze==Ee||ze==Ue&&Ye[He]||"unknown"==ze}function te(Ye,He){return typeof Ye[He]==Ue&&Ye[He]}function ne(Ye,He){return typeof Ye[He]!=Le}function ie(Ye){return function(He,ze){for(var je=ze.length;je--;)if(!Ye(He,ze[je]))return!1;return!0}}function ae(Ye){return Ye&&Xe(Ye,Se)&&Re(Ye,ke)}function de(Ye){return te(Ye,_28)?Ye.body:Ye.getElementsByTagName(_28)[0]}function re(Ye){typeof console!=Le&&ee(console,"log")&&console.log(Ye)}function oe(Ye,He){Fe&&He?alert(Ye):re(Ye)}function ye(Ye){Ie.ǃOLy=!0,Ie.ǃOLf=!1,oe("Rangy is not supported in this environment. Reason: "+Ye,Ie.ǃMr.ǃOLS)}function le(Ye){return Ye.message||Ye.description||Ye+""}function Je(){if(Fe&&!Ie.ǃOLy){var He=!1,ze=!1,Ye;ee(document,_45)&&(Ye=document.createRange(),Xe(Ye,xe)&&Re(Ye,we)&&(He=!0));var je=de(document);if(!je||_28!=je.nodeName.toLowerCase())return void ye("No body element found");if(je&&ee(je,"createTextRange")&&(Ye=je.createTextRange(),ae(Ye)&&(ze=!0)),!He&&!ze)return void ye("Neither Range nor TextRange are available");Ie.ǃOLy=!0,Ie.ǃOLX={ǃOLR:He,ǃOLg:ze};var Pe,Me;for(var Ve in De)(Pe=De[Ve])instanceof ge&&Pe.init(Pe,Ie);for(var We=0,Ke=Ae.length;Ke>We;++We)try{Ae[We](Ie)}catch(Qe){Me="Rangy init listener threw an exception. Continuing. Detail: "+le(Qe),re(Me)}}}function ue(Ye,He,ze){ze&&(Ye+=_44+ze.name),Ie.warn(_50+Ye+_69+He+" instead.")}function pe(Ye,He,ze,je){Ye[He]=function(){return ue(He,ze,je),Ye[ze].apply(Ye,Ze.toArray(arguments))}}function ge(Ye,He,ze){this.name=Ye,this.ǃOLH=He,this.ǃOLy=!1,this.ǃOLf=!1,this.ǃOLU=ze}function me(Ye,He,ze){var je=new ge(Ye,He,function(Pe){if(!Pe.ǃOLy){Pe.ǃOLy=!0;try{ze(Ie,Pe),Pe.ǃOLf=!0}catch(Ve){var Me="Module '"+Ye+"' failed to load: "+le(Ve);re(Me),Ve.stack&&re(Ve.stack)}}});return De[Ye]=je,je}function ve(){}const _28="body",_29="start",_30="object",_31="Offset",_32="DomRange",_33="deleteAll",_34="character",_35="undefined",_36="Container",_37="StartToEnd",_38="getRangeAt",_39="cloneRange",_42="startOffset",_44=" in module ",_45="createRange",_46="setEndAfter",_47="endContainer",_48="getSelection",_49="StartToStart",_50="DEPRECATED: ",_51="setEndBefore",_52="WrappedRange",_53="setStartAfter",_54="INDEX_SIZE_ERR",_55="setStartBefore",_56="startContainer",_58="removeAllRanges",_59="addEventListener",_60="WrappedSelection",_61="createRangyRange",_62="required module '",_63="createNativeRange",_64="INVALID_STATE_ERR",_65="WRONG_DOCUMENT_ERR",_66="HIERARCHY_REQUEST_ERR",_67="INVALID_NODE_TYPE_ERR",_68="commonAncestorContainer",_69=" is deprecated. Please use ";var Ue=_30,Ee="function",Le=_35,we=[_56,_42,_47,"endOffset","collapsed",_68],xe=["setStart",_55,_53,"setEnd",_51,_46,"collapse","selectNode","selectNodeContents","compareBoundaryPoints","deleteContents","extractContents","cloneContents","insertNode","surroundContents",_39,"toString","detach"],ke=["boundingHeight","boundingLeft","boundingTop","boundingWidth","htmlText","text"],Se=["collapse","compareEndPoints","duplicate","moveToElementText","parentElement","select","setEndPoint","getBoundingClientRect"],Xe=ie(ee),Ne=ie(te),Re=ie(ne),Ce=[].forEach?function(Ye,He){Ye.forEach(He)}:function(Ye,He){for(var ze=0,je=Ye.length;je>ze;++ze)He(Ye[ze],ze)},De={},Fe=typeof window!=Le&&typeof document!=Le,Ze={ǃOLC:ee,ǃOLu:te,ǃOL_:ne,ǃOLm:Xe,ǃOLb:Ne,ǃOLc:Re,ǃOLt:ae,ǃOL$:de,forEach:Ce},Ie={version:"1.3.0",ǃOLy:!1,ǃOLq:Fe,ǃOLf:!0,ǃOLM:Ze,ǃOLX:{},ǃOqx:De,ǃMr:{ǃOLS:!1,ǃOLn:!1,ǃOLB:!1,ǃOLL:!(typeof ǃOLz!=Le)||ǃOLz}};Ie.ǃOLk=ye,Ie.warn=function(Ye){oe("Rangy warning: "+Ye,Ie.ǃMr.ǃOLn)};var _e;({}).hasOwnProperty?(Ze.extend=_e=function(Ye,He,ze){var je,Pe;for(var Me in He)He.hasOwnProperty(Me)&&(je=Ye[Me],Pe=He[Me],ze&&null!==je&&_30==typeof je&&null!==Pe&&_30==typeof Pe&&_e(je,Pe,!0),Ye[Me]=Pe);return He.hasOwnProperty("toString")&&(Ye.toString=He.toString),Ye},Ze.ǃOLV=function(Ye,He){var ze={};return _e(ze,He),Ye&&_e(ze,Ye),ze}):ye("hasOwnProperty not supported"),Fe||ye("Rangy can only run in a browser"),function(){var Ye;if(Fe){var He=document.createElement("div");He.appendChild(document.createElement("span"));var ze=[].slice;try{1==ze.call(He.childNodes,0)[0].nodeType&&(Ye=function(je){return ze.call(je,0)})}catch(je){}}Ye||(Ye=function(je){for(var Pe=[],Me=0,Ve=je.length;Ve>Me;++Me)Pe[Me]=je[Me];return Pe}),Ze.toArray=Ye}();var $e;Fe&&(ee(document,_59)?$e=function(Ye,He,ze){Ye.addEventListener(He,ze,!1)}:ee(document,"attachEvent")?$e=function(Ye,He,ze){Ye.attachEvent("on"+He,ze)}:ye("Document does not have required addEventListener or attachEvent method"),Ze.addListener=$e);var Ae=[];Ze.ǃOLK=ue,Ze.ǃOLo=pe,Ie.init=Je,Ie.ǃOLe=function(Ye){Ie.ǃOLy?Ye(Ie):Ae.push(Ye)};var qe=[];Ie.ǃOLr=function(Ye){qe.push(Ye)},Fe&&(Ie.ǃOLI=Ie.ǃOLN=function(Ye){Ye=Ye||window,Je();for(var He=0,ze=qe.length;ze>He;++He)qe[He](Ye)},pe(Ie,"createMissingNativeApi","shim")),ge.prototype={init:function(){for(var ze=this.ǃOLH||[],je=0,Pe=ze.length,Ye,He;Pe>je;++je){if(He=ze[je],Ye=De[He],!(Ye&&Ye instanceof ge))throw new Error(_62+He+"' not found");if(Ye.init(),!Ye.ǃOLf)throw new Error(_62+He+"' not supported")}this.ǃOLU(this)},ǃOLk:function(Ye){throw this.ǃOLy=!0,this.ǃOLf=!1,new Error(Ye)},warn:function(Ye){Ie.warn("Module "+this.name+": "+Ye)},ǃOLK:function(Ye,He){Ie.warn(_50+Ye+_44+this.name+_69+He+" instead")},ǃOLG:function(Ye){return new Error("Error in Rangy "+this.name+" module: "+Ye)}},Ie.ǃOLE=function(Ye){var He,ze;2==arguments.length?(He=arguments[1],ze=[]):(He=arguments[2],ze=arguments[1]);var je=me(Ye,ze,He);Ie.ǃOLy&&Ie.ǃOLf&&je.init()},Ie.ǃOLT=function(Ye,He,ze){me(Ye,He,ze)},Ie.ǃOLD=ve,Ie.ǃOLi=new ve,Ie.ǃOLa=new function(){},Ie.ǃOLT("DomUtil",[],function(Ye,He){function Pe(on){for(var yn=0;on=on.previousSibling;)++yn;return yn}function Ve(on,yn){var ln=[],On;for(On=on;On;On=On.parentNode)ln.push(On);for(On=yn;On;On=On.parentNode)if(an(ln,On))return On;return null}function We(on,yn,On){for(var ln=On?yn:yn.parentNode;ln;){if(ln===on)return!0;ln=ln.parentNode}return!1}function Qe(on,yn,On){for(var Jn=On?on:on.parentNode,ln;Jn;){if(ln=Jn.parentNode,ln===yn)return Jn;Jn=ln}return null}function Ge(on){var yn=on.nodeType;return 3==yn||4==yn||8==yn}function Ut(on,yn){var On=yn.nextSibling,ln=yn.parentNode;return On?ln.insertBefore(on,On):ln.appendChild(on),on}function Xt(on){if(9==on.nodeType)return on;if(typeof on.ownerDocument!=Qt)return on.ownerDocument;if(typeof on.document!=Qt)return on.document;if(on.parentNode)return Xt(on.parentNode);throw He.ǃOLG("getDocument: no document found for node")}function Dt(on){var yn=Xt(on);if(typeof yn.defaultView!=Qt)return yn.defaultView;if(typeof yn.parentWindow!=Qt)return yn.parentWindow;throw He.ǃOLG("Cannot get a window object for node")}function Ft(on){if(typeof on.contentDocument!=Qt)return on.contentDocument;if(typeof on.contentWindow!=Qt)return on.contentWindow.document;throw He.ǃOLG("getIframeDocument: No Document object found for iframe element")}function It(on){return on&&Gt.ǃOLC(on,"setTimeout")&&Gt.ǃOLu(on,"document")}function qt(on){var yn;try{return yn=on.parentNode,!1}catch(On){return!0}}function Yt(on){if(!on)return"[No node]";if(dn&&qt(on))return"[Broken node]";if(Ge(on))return"\""+on.data+"\"";if(1==on.nodeType){var yn=on.id?" id=\""+on.id+"\"":"";return"<"+on.nodeName+yn+">[index:"+Pe(on)+",length:"+on.childNodes.length+"]["+(on.innerHTML||"[innerHTML not supported]").slice(0,25)+"]"}return on.nodeName}function Mt(on){this.root=on,this.ǃOLp=on}function Wt(on,yn){this.node=on,this.offset=yn}function Kt(on){this.code=this[on],this.ǃOLw=on,this.message="DOMException: "+this.ǃOLw}var Qt=_35,Gt=Ye.ǃOLM,en=Gt.ǃOL$;Gt.ǃOLm(document,["createDocumentFragment","createElement","createTextNode"])||He.ǃOLk("document missing a Node creation method"),Gt.ǃOLC(document,"getElementsByTagName")||He.ǃOLk("document missing getElementsByTagName method");var tn=document.createElement("div");Gt.ǃOLm(tn,["insertBefore","appendChild","cloneNode"])||He.ǃOLk("Incomplete Element implementation"),Gt.ǃOL_(tn,"innerHTML")||He.ǃOLk("Element is missing innerHTML property");var nn=document.createTextNode("test");Gt.ǃOLm(nn,["splitText","deleteData","insertData","appendData","cloneNode"])||He.ǃOLk("Incomplete Text Node implementation");var an=function(on,yn){for(var On=on.length;On--;)if(on[On]===yn)return!0;return!1},dn=!1;!function(){var on=document.createElement("b");on.innerHTML="1";var yn=on.firstChild;on.innerHTML="
",dn=qt(yn),Ye.ǃOLX.ǃOLY=dn}();var rn;typeof window.getComputedStyle==Qt?typeof document.documentElement.currentStyle==Qt?He.ǃOLk("No means of obtaining computed style properties found"):rn=function(on,yn){return on.currentStyle?on.currentStyle[yn]:""}:rn=function(on,yn){return Dt(on).getComputedStyle(on,null)[yn]},Mt.prototype={ǃOLQ:null,ǃOLj:function(){return!!this.ǃOLp},next:function(){var On=this.ǃOLQ=this.ǃOLp,on,yn;if(this.ǃOLQ)if(on=On.firstChild)this.ǃOLp=on;else{for(yn=null;On!==this.root&&!(yn=On.nextSibling);)On=On.parentNode;this.ǃOLp=yn}return this.ǃOLQ},detach:function(){this.ǃOLQ=this.ǃOLp=this.root=null}},Wt.prototype={ǃtE:function(on){return!!on&&this.node===on.node&&this.offset==on.offset},ǃOLF:function(){return"[DomPosition("+Yt(this.node)+":"+this.offset+")]"},toString:function(){return this.ǃOLF()}},Kt.prototype={INDEX_SIZE_ERR:1,HIERARCHY_REQUEST_ERR:3,WRONG_DOCUMENT_ERR:4,NO_MODIFICATION_ALLOWED_ERR:7,NOT_FOUND_ERR:8,NOT_SUPPORTED_ERR:9,INVALID_STATE_ERR:11,INVALID_NODE_TYPE_ERR:24},Kt.prototype.toString=function(){return this.message},Ye.ǃOLW={ǃOLZ:an,ǃOLl:function(on){var yn;return typeof on.namespaceURI==Qt||null===(yn=on.namespaceURI)||"http://www.w3.org/1999/xhtml"==yn},parentElement:function(on){var yn=on.parentNode;return 1==yn.nodeType?yn:null},ǃOLx:Pe,ǃOLA:function(on){switch(on.nodeType){case 7:case 10:return 0;case 3:case 8:return on.length;default:return on.childNodes.length;}},ǃOLh:Ve,ǃOLv:We,ǃOLP:function(on,yn){return We(on,yn,!0)},ǃOLd:Qe,ǃOLs:Ge,ǃOzO:function(on){if(!on)return!1;var yn=on.nodeType;return 3==yn||8==yn},ǃOzJ:Ut,ǃOzy:function(on,yn,On){var ln=on.cloneNode(!1);if(ln.deleteData(0,yn),on.deleteData(yn,on.length-yn),Ut(ln,on),On)for(var un=0,Jn;Jn=On[un++];)Jn.node==on&&Jn.offset>yn?(Jn.node=ln,Jn.offset-=yn):Jn.node==on.parentNode&&Jn.offset>Pe(on)&&++Jn.offset;return ln},ǃOzf:Xt,ǃOzS:Dt,ǃOzn:function(on){if(typeof on.contentWindow!=Qt)return on.contentWindow;if(typeof on.contentDocument!=Qt)return on.contentDocument.defaultView;throw He.ǃOLG("getIframeWindow: No Window object found for iframe element")},ǃOzX:Ft,ǃOL$:en,ǃOzR:It,ǃOzg:function(on,yn,On){var ln;if(on?Gt.ǃOL_(on,"nodeType")?ln=1==on.nodeType&&"iframe"==on.tagName.toLowerCase()?Ft(on):Xt(on):It(on)&&(ln=on.document):ln=document,!ln)throw yn.ǃOLG(On+"(): Parameter must be a Window object or DOM node");return ln},ǃOzH:function(on){for(var yn;yn=on.parentNode;)on=yn;return on},ǃOzU:function(on,yn,On,ln){var Jn,un,cn,pn,hn;if(on==On)return yn===ln?0:ln>yn?-1:1;if(Jn=Qe(On,on,!0))return yn<=Pe(Jn)?-1:1;if(Jn=Qe(on,On,!0))return Pe(Jn)=Tn.childNodes.length?Tn.appendChild(qn):Tn.insertBefore(qn,Tn.childNodes[Bn]),Yn}function We(qn,Tn,Bn){if(Ht(qn),Ht(Tn),ze(Tn)!=ze(qn))throw new dn(_65);var Yn=ln(qn.startContainer,qn.startOffset,Tn.endContainer,Tn.endOffset),Hn=ln(qn.endContainer,qn.endOffset,Tn.startContainer,Tn.startOffset);return Bn?0>=Yn&&0<=Hn:0>Yn&&0Tn||Tn>(rn(qn)?qn.length:qn.childNodes.length))throw new dn(_54)}function _t(qn,Tn){if(wn(qn,!0)!==wn(Tn,!0))throw new dn(_65)}function $t(qn){if(xn(qn,!0))throw new dn("NO_MODIFICATION_ALLOWED_ERR")}function At(qn,Tn){if(!qn)throw new dn(Tn)}function qt(qn,Tn){return Tn<=(rn(qn)?qn.length:qn.childNodes.length)}function Yt(qn){return!!qn.startContainer&&!!qn.endContainer&&!(gn&&(tn.ǃOzC(qn.startContainer)||tn.ǃOzC(qn.endContainer)))&&hn(qn.startContainer)==hn(qn.endContainer)&&qt(qn.startContainer,qn.startOffset)&&qt(qn.endContainer,qn.endOffset)}function Ht(qn){if(!Yt(qn))throw new Error("Range error: Range is not valid. This usually happens after DOM mutation. Range: ("+qn.ǃOLF()+")")}function zt(qn,Tn){Ht(qn);var Bn=qn.startContainer,Yn=qn.startOffset,Hn=qn.endContainer,zn=qn.endOffset,jn=Bn===Hn;rn(Hn)&&0=on(Bn)&&zn++,Yn=0),qn.ǃOzr(Bn,Yn,Hn,zn)}function jt(qn){Ht(qn);var Tn=qn.commonAncestorContainer.parentNode.cloneNode(!1);return Tn.appendChild(qn.cloneContents()),Tn.innerHTML}function Mt(qn){qn.START_TO_START=Cn,qn.START_TO_END=Dn,qn.END_TO_END=Fn,qn.END_TO_START=Zn,qn.NODE_BEFORE=In,qn.NODE_AFTER=_n,qn.NODE_BEFORE_AND_AFTER=$n,qn.NODE_INSIDE=An}function Vt(qn){Mt(qn),Mt(qn.prototype)}function Wt(qn,Tn){return function(){Ht(this);var Hn=this.startContainer,zn=this.startOffset,jn=this.commonAncestorContainer,Pn=new Xt(this,!0),Bn,Yn;Hn!==jn&&(Bn=un(Hn,jn,!0),Yn=Me(Bn),Hn=Yn.node,zn=Yn.offset),Qe(Pn,$t),Pn.reset();var Mn=qn(Pn);return Pn.detach(),Tn(this,Hn,zn,Hn,zn),Mn}}function Kt(qn,Tn){function Bn(jn,Pn){return function(Mn){Zt(Mn,vn),Zt(hn(Mn),bn);var Vn=(jn?Pe:Me)(Mn);(Pn?Yn:Hn)(this,Vn.node,Vn.offset)}}function Yn(jn,Pn,Mn){var Vn=jn.endContainer,Wn=jn.endOffset;(Pn!==jn.startContainer||Mn!==jn.startOffset)&&((hn(Pn)!=hn(Vn)||1==ln(Pn,Mn,Vn,Wn))&&(Vn=Pn,Wn=Mn),Tn(jn,Pn,Mn,Vn,Wn))}function Hn(jn,Pn,Mn){var Vn=jn.startContainer,Wn=jn.startOffset;(Pn!==jn.endContainer||Mn!==jn.endOffset)&&((hn(Pn)!=hn(Vn)||-1==ln(Pn,Mn,Vn,Wn))&&(Vn=Pn,Wn=Mn),Tn(jn,Vn,Wn,Pn,Mn))}var zn=function(){};zn.prototype=Ye.ǃOLi,qn.prototype=new zn,nn.extend(qn.prototype,{setStart:function(jn,Pn){Ft(jn,!0),It(jn,Pn),Yn(this,jn,Pn)},setEnd:function(jn,Pn){Ft(jn,!0),It(jn,Pn),Hn(this,jn,Pn)},ǃOzr:function(){var jn=arguments,Pn=jn[0],Mn=jn[1],Vn=Pn,Wn=Mn;switch(jn.length){case 3:Wn=jn[2];break;case 4:Vn=jn[2],Wn=jn[3];}Tn(this,Pn,Mn,Vn,Wn)},ǃOzI:function(jn,Pn,Mn){this["set"+(Mn?"Start":"End")](jn,Pn)},setStartBefore:Bn(!0,!0),setStartAfter:Bn(!1,!0),setEndBefore:Bn(!0,!1),setEndAfter:Bn(!1,!1),collapse:function(jn){Ht(this),jn?Tn(this,this.startContainer,this.startOffset,this.startContainer,this.startOffset):Tn(this,this.endContainer,this.endOffset,this.endContainer,this.endOffset)},selectNodeContents:function(jn){Ft(jn,!0),Tn(this,jn,0,jn,cn(jn))},selectNode:function(jn){Ft(jn,!1),Zt(jn,vn);var Pn=Pe(jn),Mn=Me(jn);Tn(this,Pn.node,Pn.offset,Mn.node,Mn.offset)},extractContents:Wt(Jt,Tn),deleteContents:Wt(Ge,Tn),ǃOzN:function(){Ht(this),$t(this.startContainer),$t(this.endContainer);var jn=new Xt(this,!0),Pn=jn.ǃOzo&&He(jn.ǃOzo,this)||jn.ǃOze&&He(jn.ǃOze,this);return jn.detach(),!Pn},ǃOzG:function(){zt(this)},ǃOzE:function(jn){zt(this,jn)},ǃOzT:function(){Ht(this);var Pn=this.startContainer,Mn=this.startOffset,Vn=this.endContainer,Wn=this.endOffset,Kn=function(ni){var ii=ni.nextSibling;ii&&ii.nodeType==ni.nodeType&&(Vn=ni,Wn=ni.length,ni.appendData(ii.data),mn(ii))},Qn=function(ni){var ii=ni.previousSibling;if(ii&&ii.nodeType==ni.nodeType){Pn=ni;var ai=ni.length;if(Mn=ii.length,ni.insertData(0,ii.data),mn(ii),Pn==Vn)Wn+=Mn,Vn=Pn;else if(Vn==ni.parentNode){var ri=on(ni);Wn==ri?(Vn=ni,Wn=ai):Wn>ri&&Wn--}}},Gn=!0,jn;if(rn(Vn))Wn==Vn.length?Kn(Vn):0==Wn&&(jn=Vn.previousSibling,jn&&jn.nodeType==Vn.nodeType&&(Wn=jn.length,Pn==Vn&&(Gn=!1),jn.appendData(Vn.data),mn(Vn),Vn=jn));else{if(0x",Xn=3==Sn.firstChild.nodeType}catch(qn){}Ye.ǃOLX.ǃOzi=Xn;var Nn=Xn?function(qn){var Tn=this.startContainer,Bn=On(Tn);if(!Tn)throw new dn(_64);var Yn=null;return 1==Tn.nodeType?Yn=Tn:rn(Tn)&&(Yn=tn.parentElement(Tn)),Yn=null===Yn||"HTML"==Yn.nodeName&&tn.ǃOLl(On(Yn).documentElement)&&tn.ǃOLl(Yn)?Bn.createElement(_28):Yn.cloneNode(!1),Yn.innerHTML=qn,tn.ǃOzb(Yn)}:function(qn){var Tn=ze(this),Bn=Tn.createElement(_28);return Bn.innerHTML=qn,tn.ǃOzb(Bn)},Rn=[_56,_42,_47,"endOffset","collapsed",_68],Cn=0,Dn=1,Fn=2,Zn=3,In=0,_n=1,$n=2,An=3;nn.extend(Ye.ǃOLi,{compareBoundaryPoints:function(qn,Tn){Ht(this),_t(this.startContainer,Tn.startContainer);var jn=qn==Zn||qn==Cn?_29:"end",Pn=qn==Dn||qn==Cn?_29:"end",Bn,Yn,Hn,zn;return Bn=this[jn+_36],Yn=this[jn+_31],Hn=Tn[Pn+_36],zn=Tn[Pn+_31],ln(Bn,Yn,Hn,zn)},insertNode:function(qn){if(Ht(this),Zt(qn,En),$t(this.startContainer),yn(qn,this.startContainer))throw new dn(_66);var Tn=Ve(qn,this.startContainer,this.startOffset);this.setStartBefore(Tn)},cloneContents:function(){Ht(this);var qn,Tn;if(this.collapsed)return ze(this).createDocumentFragment();if(this.startContainer===this.endContainer&&rn(this.startContainer))return qn=this.startContainer.cloneNode(!0),qn.data=qn.data.slice(this.startOffset,this.endOffset),Tn=ze(this).createDocumentFragment(),Tn.appendChild(qn),Tn;var Bn=new Xt(this,!0);return qn=Ke(Bn),Bn.detach(),qn},ǃOzN:function(){Ht(this),$t(this.startContainer),$t(this.endContainer);var qn=new Xt(this,!0),Tn=qn.ǃOzo&&He(qn.ǃOzo,this)||qn.ǃOze&&He(qn.ǃOze,this);return qn.detach(),!Tn},surroundContents:function(qn){if(Zt(qn,Ln),!this.ǃOzN())throw new dn(_64);var Tn=this.extractContents();if(qn.hasChildNodes())for(;qn.lastChild;)qn.removeChild(qn.lastChild);Ve(qn,this.startContainer,this.startOffset),qn.appendChild(Tn),this.selectNode(qn)},cloneRange:function(){Ht(this);for(var Tn=new en(ze(this)),Bn=Rn.length,qn;Bn--;)qn=Rn[Bn],Tn[qn]=this[qn];return Tn},toString:function(){Ht(this);var qn=this.startContainer;if(qn===this.endContainer&&rn(qn))return 3==qn.nodeType||4==qn.nodeType?qn.data.slice(this.startOffset,this.endOffset):"";var Tn=[],Bn=new Xt(this,!0);return Qe(Bn,function(Yn){(3==Yn.nodeType||4==Yn.nodeType)&&Tn.push(Yn.data)}),Bn.detach(),Tn.join("")},compareNode:function(qn){Ht(this);var Tn=qn.parentNode,Bn=on(qn);if(!Tn)throw new dn("NOT_FOUND_ERR");var Yn=this.comparePoint(Tn,Bn),Hn=this.comparePoint(Tn,Bn+1);return 0>Yn?0ln(qn,Tn,this.startContainer,this.startOffset)?-1:0=Hn&&0<=zn:0>Hn&&0=ln(qn,Tn,this.endContainer,this.endOffset)},ǃOzp:function(qn){return We(this,qn,!1)},ǃOzw:function(qn){return We(this,qn,!0)},ǃOzY:function(qn){if(this.ǃOzp(qn)){var Tn=ln(this.startContainer,this.startOffset,qn.startContainer,qn.startOffset),Bn=ln(this.endContainer,this.endOffset,qn.endContainer,qn.endOffset),Yn=this.cloneRange();return-1==Tn&&Yn.setStart(qn.startContainer,qn.startOffset),1==Bn&&Yn.setEnd(qn.endContainer,qn.endOffset),Yn}return null},ǃOzQ:function(qn){if(this.ǃOzw(qn)){var Tn=this.cloneRange();return-1==ln(qn.startContainer,qn.startOffset,this.startContainer,this.startOffset)&&Tn.setStart(qn.startContainer,qn.startOffset),1==ln(qn.endContainer,qn.endOffset,this.endContainer,this.endOffset)&&Tn.setEnd(qn.endContainer,qn.endOffset),Tn}throw new dn("Ranges do not intersect")},containsNode:function(qn,Tn){return Tn?this.intersectsNode(qn,!1):this.compareNode(qn)==An},ǃOzj:function(qn){return 0<=this.comparePoint(qn,0)&&0>=this.comparePoint(qn,cn(qn))},ǃOzF:function(qn){var Tn=this.ǃOzY(qn);return null!==Tn&&qn.ǃtE(Tn)},ǃOzW:function(qn){var Tn=this.cloneRange();Tn.selectNode(qn);var Bn=Tn.ǃOzZ([3]);if(0=Bn&&qn.start<=Hn&&(this.setStart(Yn,qn.start-Bn),Mn=!0),Mn&&qn.end>=Bn&&qn.end<=Hn&&(this.setEnd(Yn,qn.end-Bn),Vn=!0),Bn=Hn;else for(jn=Yn.childNodes,zn=jn.length;zn--;)Pn.push(jn[zn])},ǃOzM:function(){return _32},ǃtE:function(qn){return en.ǃOzh(this,qn)},ǃOzv:function(){return Yt(this)},ǃOLF:function(){return Lt(this)},detach:function(){}}),Kt(en,Gt),nn.extend(en,{ǃOzP:Rn,ǃOzd:Xt,ǃOzs:Vt,ǃOkO:Kt,ǃOLF:Lt,ǃOza:jt,ǃOkJ:ze,ǃOzh:function(qn,Tn){return qn.startContainer===Tn.startContainer&&qn.startOffset===Tn.startOffset&&qn.endContainer===Tn.endContainer&&qn.endOffset===Tn.endOffset}}),Ye.ǃOky=en}),Ie.ǃOLT(_52,[_32],function(Ye,He){var Pe=Ye.ǃOLW,Me=Ye.ǃOLM,Ve=Pe.ǃOzt,We=Ye.ǃOky,Ke=Pe.ǃOL$,Qe=Pe.ǃOzg,Ge=Pe.ǃOLs,ze,je;if(Ye.ǃOLX.ǃOLR&&!function(){function Zt(Vt){for(var Kt=At.length,Wt;Kt--;)Wt=At[Kt],Vt[Wt]=Vt.ǃOkf[Wt];Vt.collapsed=Vt.startContainer===Vt.endContainer&&Vt.startOffset===Vt.endOffset}var At=We.ǃOzP,_t,$t;ze=function(Vt){if(!Vt)throw He.ǃOLG("WrappedRange: Range must be specified");this.ǃOkf=Vt,Zt(this)},We.ǃOkO(ze,function(Vt,Wt,Kt,Qt,Gt){var en=Vt.startContainer!==Wt||Vt.startOffset!=Kt,tn=Vt.endContainer!==Qt||Vt.endOffset!=Gt,nn=!Vt.ǃtE(Vt.ǃOkf);(en||tn||nn)&&(Vt.setEnd(Qt,Gt),Vt.setStart(Wt,Kt))}),_t=ze.prototype,_t.selectNode=function(Vt){this.ǃOkf.selectNode(Vt),Zt(this)},_t.cloneContents=function(){return this.ǃOkf.cloneContents()},_t.surroundContents=function(Vt){this.ǃOkf.surroundContents(Vt),Zt(this)},_t.collapse=function(Vt){this.ǃOkf.collapse(Vt),Zt(this)},_t.cloneRange=function(){return new ze(this.ǃOkf.cloneRange())},_t.refresh=function(){Zt(this)},_t.toString=function(){return this.ǃOkf.toString()};var qt=document.createTextNode("test");Ke(document).appendChild(qt);var Yt=document.createRange();Yt.setStart(qt,0),Yt.setEnd(qt,0);try{Yt.setStart(qt,1),_t.setStart=function(Vt,Wt){this.ǃOkf.setStart(Vt,Wt),Zt(this)},_t.setEnd=function(Vt,Wt){this.ǃOkf.setEnd(Vt,Wt),Zt(this)},$t=function(Vt){return function(Wt){this.ǃOkf[Vt](Wt),Zt(this)}}}catch(Vt){_t.setStart=function(Wt,Kt){try{this.ǃOkf.setStart(Wt,Kt)}catch(Qt){this.ǃOkf.setEnd(Wt,Kt),this.ǃOkf.setStart(Wt,Kt)}Zt(this)},_t.setEnd=function(Wt,Kt){try{this.ǃOkf.setEnd(Wt,Kt)}catch(Qt){this.ǃOkf.setStart(Wt,Kt),this.ǃOkf.setEnd(Wt,Kt)}Zt(this)},$t=function(Wt,Kt){return function(Qt){try{this.ǃOkf[Wt](Qt)}catch(Gt){this.ǃOkf[Kt](Qt),this.ǃOkf[Wt](Qt)}Zt(this)}}}_t.setStartBefore=$t(_55,_51),_t.setStartAfter=$t(_53,_46),_t.setEndBefore=$t(_51,_55),_t.setEndAfter=$t(_46,_53),_t.selectNodeContents=function(Vt){this.ǃOzr(Vt,0,Pe.ǃOLA(Vt))},Yt.selectNodeContents(qt),Yt.setEnd(qt,3);var Ht=document.createRange();Ht.selectNodeContents(qt),Ht.setEnd(qt,4),Ht.setStart(qt,2),_t.compareBoundaryPoints=-1==Yt.compareBoundaryPoints(Yt.START_TO_END,Ht)&&1==Yt.compareBoundaryPoints(Yt.END_TO_START,Ht)?function(Vt,Wt){return Wt=Wt.ǃOkf||Wt,Vt==Wt.START_TO_END?Vt=Wt.END_TO_START:Vt==Wt.END_TO_START&&(Vt=Wt.START_TO_END),this.ǃOkf.compareBoundaryPoints(Vt,Wt)}:function(Vt,Wt){return this.ǃOkf.compareBoundaryPoints(Vt,Wt.ǃOkf||Wt)};var zt=document.createElement("div");zt.innerHTML="123";var jt=zt.firstChild,Mt=Ke(document);Mt.appendChild(zt),Yt.setStart(jt,1),Yt.setEnd(jt,2),Yt.deleteContents(),"13"==jt.data&&(_t.deleteContents=function(){this.ǃOkf.deleteContents(),Zt(this)},_t.extractContents=function(){var Vt=this.ǃOkf.extractContents();return Zt(this),Vt}),Mt.removeChild(zt),Mt=null,Me.ǃOLC(Yt,"createContextualFragment")&&(_t.createContextualFragment=function(Vt){return this.ǃOkf.createContextualFragment(Vt)}),Ke(document).removeChild(qt),_t.ǃOzM=function(){return _52},Ye.ǃOkS=ze,Ye.ǃOkn=function(Vt){return Vt=Qe(Vt,He,_63),Vt.createRange()}}(),Ye.ǃOLX.ǃOLg){var Jt=function(Zt){var It=Zt.parentElement(),_t=Zt.duplicate();_t.collapse(!0);var $t=_t.parentElement();_t=Zt.duplicate(),_t.collapse(!1);var At=_t.parentElement(),qt=$t==At?$t:Pe.ǃOLh($t,At);return qt==It?qt:Pe.ǃOLh(It,qt)},Ut=function(Zt){return 0==Zt.compareEndPoints(_37,Zt)},Lt=function(Zt,It,_t,$t,At){var qt=Zt.duplicate();qt.collapse(_t);var Yt=qt.parentElement();if(Pe.ǃOLP(It,Yt)||(Yt=It),!Yt.canHaveHTML){var Ht=new Ve(Yt.parentNode,Pe.ǃOLx(Yt));return{ǃOkX:Ht,ǃOkR:{ǃOkg:Ht.offset,ǃOkH:Ht.node}}}var zt=Pe.ǃOzf(Yt).createElement("span");zt.parentNode&&Pe.removeNode(zt);for(var Qt=_t?_49:_37,Gt=At&&At.ǃOkH==Yt?At.ǃOkg:0,en=Yt.childNodes.length,tn=en,nn=tn,jt,Mt,Vt,Wt,Kt;;){if(nn==en?Yt.appendChild(zt):Yt.insertBefore(zt,Yt.childNodes[nn]),qt.moveToElementText(zt),jt=qt.compareEndPoints(Qt,Zt),0==jt||Gt==tn)break;if(-1==jt){if(tn==Gt+1)break;Gt=nn}else tn=tn==Gt+1?Gt:nn;nn=Math.floor((Gt+tn)/2),Yt.removeChild(zt)}if(Kt=zt.nextSibling,-1==jt&&Kt&&Ge(Kt)){qt.setEndPoint(_t?"EndToStart":"EndToEnd",Zt);var an;if(/[\r\n]/.test(Kt.data)){var dn=qt.duplicate(),rn=dn.text.replace(/\r\n/g,"\r").length;for(an=dn.moveStart(_34,rn);-1==(jt=dn.compareEndPoints(_37,dn));)an++,dn.moveStart(_34,1)}else an=qt.text.length;Wt=new Ve(Kt,an)}else Mt=($t||!_t)&&zt.previousSibling,Vt=($t||_t)&&zt.nextSibling,Wt=Vt&&Ge(Vt)?new Ve(Vt,0):Mt&&Ge(Mt)?new Ve(Mt,Mt.data.length):new Ve(Yt,Pe.ǃOLx(zt));return Pe.removeNode(zt),{ǃOkX:Wt,ǃOkR:{ǃOkg:nn,ǃOkH:Yt}}},Xt=function(Zt,It){var Yt=Zt.offset,Ht=Pe.ǃOzf(Zt.node),zt=Ke(Ht).createTextRange(),jt=Ge(Zt.node),_t,$t,At,qt;return jt?(_t=Zt.node,$t=_t.parentNode):(qt=Zt.node.childNodes,_t=YtDn;++Dn)if(!Vt.ǃOLv(Cn[0],Cn[Dn]))return!1;return!0}function Ut(Cn){var Dn=Cn.ǃOzZ();if(!Jt(Dn))throw He.ǃOLG("getSingleElementFromRange: range "+Cn.ǃOLF()+" did not consist of a single element");return Dn[0]}function Lt(Cn){return!!Cn&&_35!=typeof Cn.text}function Xt(Cn,Dn){var Fn=new Gt(Dn);Cn.ǃOkt=[Fn],We(Cn,Fn,!1),Cn.rangeCount=1,Cn.isCollapsed=Fn.collapsed}function Dt(Cn){if(Cn.ǃOkt.length=0,"None"==Cn.ǃOk$.type)Qe(Cn);else{var Dn=Cn.ǃOk$.createRange();if(Lt(Dn))Xt(Cn,Dn);else{Cn.rangeCount=Dn.length;for(var Zn=dn(Dn.item(0)),In=0,Fn;In$n;++$n)_n.add(Fn.item($n));try{_n.add(Zn)}catch(qn){throw He.ǃOLG("addRange(): Element within the specified Range could not be added to control selection (does it have layout?)")}_n.select(),Dt(Cn)}function Zt(Cn,Dn,Fn){this.ǃOkc=Cn,this.ǃOk$=Dn,this.ǃOkt=[],this.ǃOkb=Fn,this.refresh()}function It(Cn){Cn.ǃOkb=Cn.anchorNode=Cn.focusNode=Cn.ǃOkt=null,Cn.rangeCount=Cn.anchorOffset=Cn.focusOffset=0,Cn.ǃOkq=!0}function _t(Cn,Dn){for(var In=wn.length,Fn,Zn;In--;)if(Fn=wn[In],Zn=Fn.selection,_33==Dn)It(Zn);else if(Fn.ǃOkb==Cn)return"delete"==Dn?(wn.splice(In,1),!0):Zn;return _33==Dn&&(wn.length=0),null}function $t(Cn,Dn){for(var Zn=dn(Dn[0].startContainer),In=rn(Zn).createControlRange(),_n=0,$n=Dn.length,Fn;$n>_n;++_n){Fn=Ut(Dn[_n]);try{In.add(Fn)}catch(An){throw He.ǃOLG("setRanges(): Element within one of the specified Ranges could not be added to control selection (does it have layout?)")}}In.select(),Dt(Cn)}function At(Cn,Dn){if(Cn.ǃOkb.document!=dn(Dn))throw new en(_65)}function qt(Cn){return function(Dn,Fn){var Zn;this.rangeCount?(Zn=this.getRangeAt(0),Zn["set"+(Cn?"Start":"End")](Dn,Fn)):(Zn=Ye.createRange(this.ǃOkb.document),Zn.ǃOzr(Dn,Fn)),this.ǃOkM(Zn,this.ǃOkB())}}function Yt(Cn){var Dn=[],Fn=new tn(Cn.anchorNode,Cn.anchorOffset),Zn=new tn(Cn.focusNode,Cn.focusOffset),In="function"==typeof Cn.ǃOzM?Cn.ǃOzM():"Selection";if(_35!=typeof Cn.rangeCount)for(var _n=0,$n=Cn.rangeCount;$n>_n;++_n)Dn[_n]=Qt.ǃOLF(Cn.getRangeAt(_n));return"["+In+"(Ranges: "+Dn.join(", ")+")(anchor: "+Fn.ǃOLF()+", focus: "+Zn.ǃOLF()+"]"}Ye.ǃMr.ǃOkL=!0;var jt="boolean",Mt="number",Vt=Ye.ǃOLW,Wt=Ye.ǃOLM,Kt=Wt.ǃOLC,Qt=Ye.ǃOky,Gt=Ye.ǃOkS,en=Ye.DOMException,tn=Vt.ǃOzt,nn=Ye.ǃOLX,an="Control",dn=Vt.ǃOzf,rn=Vt.ǃOL$,on=Qt.ǃOzh,yn=Kt(window,_48),On=Wt.ǃOLu(document,"selection"),Ht,zt;nn.ǃOkz=yn,nn.ǃOkk=On;var ln=On&&(!yn||Ye.ǃMr.ǃOLB);if(ln)Ht=Me,Ye.ǃOkV=function(Cn){var Dn=je(Cn,"isSelectionValid").document,Fn=Dn.selection;return"None"!=Fn.type||dn(Fn.createRange().parentElement())==Dn};else{if(!yn)return He.ǃOLk("Neither document.selection or window.getSelection() detected."),!1;Ht=Pe,Ye.ǃOkV=function(){return!0}}Ye.ǃOkK=Ht;var Jn=Ht();if(!Jn)return He.ǃOLk("Native selection was null (possibly issue 138?)"),!1;var un=Ye.ǃOkn(document),cn=rn(document),pn=Wt.ǃOLc(Jn,["anchorNode","focusNode","anchorOffset","focusOffset"]);nn.ǃOko=pn;var hn=Kt(Jn,"extend");nn.ǃOke=hn;var gn=typeof Jn.rangeCount==Mt;nn.ǃOkr=gn;var mn=!1,vn=!0,bn=hn?function(Cn,Dn){var Fn=Qt.ǃOkJ(Dn),Zn=Ye.createRange(Fn);Zn.ǃOzD(Dn.endContainer,Dn.endOffset),Cn.addRange(Ge(Zn)),Cn.extend(Dn.startContainer,Dn.startOffset)}:null;Wt.ǃOLm(Jn,["addRange",_38,_58])&&typeof Jn.rangeCount==Mt&&nn.ǃOLR&&!function(){var Cn=window.getSelection();if(Cn){for(var Dn=Cn.rangeCount,Fn=1_n;++_n)Zn[_n]=Cn.getRangeAt(_n);var $n=Vt.ǃOzm(document,"",!1),An=$n.appendChild(document.createTextNode("\xA0\xA0\xA0")),qn=document.createRange();if(qn.setStart(An,1),qn.collapse(!0),Cn.removeAllRanges(),Cn.addRange(qn),vn=1==Cn.rangeCount,Cn.removeAllRanges(),!Fn){var Tn=window.navigator.appVersion.match(/Chrome\/(.*?) /);if(Tn&&36<=parseInt(Tn[1]))mn=!1;else{var Bn=qn.cloneRange();qn.setStart(An,0),Bn.setEnd(An,3),Bn.setStart(An,2),Cn.addRange(qn),Cn.addRange(Bn),mn=2==Cn.rangeCount}}for(Vt.removeNode($n),Cn.removeAllRanges(),_n=0;Dn>_n;++_n)0==_n&&In?bn?bn(Cn,Zn[_n]):(Ye.warn("Rangy initialization: original selection was backwards but selection has been restored forwards because the browser does not support Selection.extend"),Cn.addRange(Zn[_n])):Cn.addRange(Zn[_n])}}(),nn.ǃOkI=mn,nn.ǃOkN=vn;var En=!1,Un;cn&&Kt(cn,"createControlRange")&&(Un=cn.createControlRange(),Wt.ǃOLc(Un,["item","add"])&&(En=!0)),nn.ǃOkG=En,zt=pn?function(Cn){return Cn.anchorNode===Cn.focusNode&&Cn.anchorOffset===Cn.focusOffset}:function(Cn){return!!Cn.rangeCount&&Cn.getRangeAt(Cn.rangeCount-1).collapsed};var Ln;Kt(Jn,_38)?Ln=function(Cn,Dn){try{return Cn.getRangeAt(Dn)}catch(Fn){return null}}:pn&&(Ln=function(Cn){var Dn=dn(Cn.anchorNode),Fn=Ye.createRange(Dn);return Fn.ǃOzr(Cn.anchorNode,Cn.anchorOffset,Cn.focusNode,Cn.focusOffset),Fn.collapsed!==this.isCollapsed&&Fn.ǃOzr(Cn.focusNode,Cn.focusOffset,Cn.anchorNode,Cn.anchorOffset),Fn}),Zt.prototype=Ye.ǃOLa;var wn=[],xn=function(Cn){if(Cn&&Cn instanceof Zt)return Cn.refresh(),Cn;Cn=je(Cn,"getNativeSelection");var Dn=_t(Cn),Fn=Ht(Cn),Zn=On?Me(Cn):null;return Dn?(Dn.ǃOkc=Fn,Dn.ǃOk$=Zn,Dn.refresh()):(Dn=new Zt(Fn,Zn,Cn),wn.push({ǃOkb:Cn,selection:Dn})),Dn};Ye.getSelection=xn,Wt.ǃOLo(Ye,"getIframeSelection",_48);var kn=Zt.prototype;if(!ln&&pn&&Wt.ǃOLm(Jn,[_58,"addRange"])){kn.removeAllRanges=function(){this.ǃOkc.removeAllRanges(),Qe(this)};var Sn=function(Cn,Dn){bn(Cn.ǃOkc,Dn),Cn.refresh()};kn.addRange=gn?function(Cn,Dn){if(En&&On&&this.ǃOk$.type==an)Ft(this,Cn);else if(ze(Dn)&&hn)Sn(this,Cn);else{var Fn;mn?Fn=this.rangeCount:(this.removeAllRanges(),Fn=0);var Zn=Ge(Cn).cloneRange();try{this.ǃOkc.addRange(Zn)}catch(_n){}if(this.rangeCount=this.ǃOkc.rangeCount,this.rangeCount==Fn+1){if(Ye.ǃMr.ǃOkL){var In=Ln(this.ǃOkc,this.rangeCount-1);In&&!on(In,Cn)&&(Cn=new Gt(In))}this.ǃOkt[this.rangeCount-1]=Cn,We(this,Cn,Rn(this.ǃOkc)),this.isCollapsed=zt(this)}else this.refresh()}}:function(Cn,Dn){ze(Dn)&&hn?Sn(this,Cn):(this.ǃOkc.addRange(Ge(Cn)),this.refresh())},kn.ǃOkE=function(Cn){if(En&&On&&1Dn;++Dn)this.addRange(Cn[Dn])}}}else{if(!(Kt(Jn,"empty")&&Kt(un,"select")&&En&&ln))return He.ǃOLk("No means of selecting a Range or TextRange was found"),!1;kn.removeAllRanges=function(){try{if(this.ǃOk$.empty(),"None"!=this.ǃOk$.type){var Cn;if(this.anchorNode)Cn=dn(this.anchorNode);else if(this.ǃOk$.type==an){var Dn=this.ǃOk$.createRange();Dn.length&&(Cn=dn(Dn.item(0)))}if(Cn){var Fn=rn(Cn).createTextRange();Fn.select(),this.ǃOk$.empty()}}}catch(Zn){}Qe(this)},kn.addRange=function(Cn){this.ǃOk$.type==an?Ft(this,Cn):(Ye.ǃOk_.ǃOkC(Cn).select(),this.ǃOkt[0]=Cn,this.rangeCount=1,this.isCollapsed=this.ǃOkt[0].collapsed,We(this,Cn,!1))},kn.ǃOkE=function(Cn){this.removeAllRanges();var Dn=Cn.length;1Cn||Cn>=this.rangeCount)throw new en(_54);return this.ǃOkt[Cn].cloneRange()};var Xn;if(ln)Xn=function(Cn){var Dn;Ye.ǃOkV(Cn.ǃOkb)?Dn=Cn.ǃOk$.createRange():(Dn=rn(Cn.ǃOkb.document).createTextRange(),Dn.collapse(!0)),Cn.ǃOk$.type==an?Dt(Cn):Lt(Dn)?Xt(Cn,Dn):Qe(Cn)};else if(Kt(Jn,_38)&&typeof Jn.rangeCount==Mt)Xn=function(Cn){if(En&&On&&Cn.ǃOk$.type==an)Dt(Cn);else if(Cn.ǃOkt.length=Cn.rangeCount=Cn.ǃOkc.rangeCount,Cn.rangeCount){for(var Dn=0,Fn=Cn.rangeCount;Fn>Dn;++Dn)Cn.ǃOkt[Dn]=new Ye.ǃOkS(Cn.ǃOkc.getRangeAt(Dn));We(Cn,Cn.ǃOkt[Cn.rangeCount-1],Rn(Cn.ǃOkc)),Cn.isCollapsed=zt(Cn)}else Qe(Cn)};else{if(!pn||typeof Jn.isCollapsed!=jt||typeof un.collapsed!=jt||!nn.ǃOLR)return He.ǃOLk("No means of obtaining a Range or TextRange from the user's selection was found"),!1;Xn=function(Cn){var Fn=Cn.ǃOkc,Dn;Fn.anchorNode?(Dn=Ln(Fn,0),Cn.ǃOkt=[Dn],Cn.rangeCount=1,Ke(Cn),Cn.isCollapsed=zt(Cn)):Qe(Cn)}}kn.refresh=function(Cn){var Dn=Cn?this.ǃOkt.slice(0):null,Fn=this.anchorNode,Zn=this.anchorOffset;if(Xn(this),Cn){var In=Dn.length;if(In!=this.ǃOkt.length)return!0;if(this.anchorNode!=Fn||this.anchorOffset!=Zn)return!0;for(;In--;)if(!on(Dn[In],this.ǃOkt[In]))return!0;return!1}};var Nn=function(Cn,Dn){var Fn=Cn.ǃOkT();Cn.removeAllRanges();for(var Zn=0,In=Fn.length;In>Zn;++Zn)on(Dn,Fn[Zn])||Cn.addRange(Fn[Zn]);Cn.rangeCount||Qe(Cn)};kn.removeRange=En&&On?function(Cn){if(this.ǃOk$.type==an){for(var Fn=this.ǃOk$.createRange(),Zn=Ut(Cn),In=dn(Fn.item(0)),_n=rn(In).createControlRange(),$n=!1,An=0,qn=Fn.length,Dn;qn>An;++An)Dn=Fn.item(An),Dn!==Zn||$n?_n.add(Fn.item(An)):$n=!0;_n.select(),Dt(this)}else Nn(this,Cn)}:function(Cn){Nn(this,Cn)};var Rn;!ln&&pn&&nn.ǃOLR?(Rn=Ve,kn.ǃOkB=function(){return Rn(this)}):Rn=kn.ǃOkB=function(){return!1},kn.ǃOkD=kn.ǃOkB,kn.toString=function(){for(var Cn=[],Dn=0,Fn=this.rangeCount;Fn>Dn;++Dn)Cn[Dn]=""+this.ǃOkt[Dn];return Cn.join("")},kn.collapse=function(Cn,Dn){At(this,Cn);var Fn=Ye.createRange(Cn);Fn.ǃOzD(Cn,Dn),this.ǃOkM(Fn),this.isCollapsed=!0},kn.collapseToStart=function(){if(!this.rangeCount)throw new en(_64);var Cn=this.ǃOkt[0];this.collapse(Cn.startContainer,Cn.startOffset)},kn.collapseToEnd=function(){if(!this.rangeCount)throw new en(_64);var Cn=this.ǃOkt[this.rangeCount-1];this.collapse(Cn.endContainer,Cn.endOffset)},kn.selectAllChildren=function(Cn){At(this,Cn);var Dn=Ye.createRange(Cn);Dn.selectNodeContents(Cn),this.ǃOkM(Dn)},kn.deleteFromDocument=function(){if(En&&On&&this.ǃOk$.type==an){for(var Dn=this.ǃOk$.createRange(),Cn;Dn.length;)Cn=Dn.item(0),Dn.remove(Cn),Vt.removeNode(Cn);this.refresh()}else if(this.rangeCount){var Fn=this.ǃOkT();if(Fn.length){this.removeAllRanges();for(var Zn=0,In=Fn.length;In>Zn;++Zn)Fn[Zn].deleteContents();this.addRange(Fn[In-1])}}},kn.ǃOki=function(Cn,Dn){for(var Fn=0,Zn=this.ǃOkt.length;Zn>Fn;++Fn)if(Cn(this.getRangeAt(Fn)))return Dn},kn.ǃOkT=function(){var Cn=[];return this.ǃOki(function(Dn){Cn.push(Dn)}),Cn},kn.ǃOkM=function(Cn,Dn){this.removeAllRanges(),this.addRange(Cn,Dn)},kn.ǃOka=function(Cn,Dn){var Fn=[];return this.ǃOki(function(Zn){Fn.push(Zn[Cn].apply(Zn,Dn||[]))}),Fn},kn.setStart=qt(!0),kn.setEnd=qt(!1),Ye.ǃOLi.select=function(Cn){xn(this.ǃOzf()).ǃOkM(this,Cn)},kn.ǃOkp=function(Cn){var Dn=[],Fn=this.ǃOkB();this.ǃOki(function(Zn){Cn(Zn),Dn.push(Zn)}),this.removeAllRanges(),Fn&&1==Dn.length?this.addRange(Dn[0],"backward"):this.ǃOkE(Dn)},kn.containsNode=function(Cn,Dn){return this.ǃOki(function(Fn){return Fn.containsNode(Cn,Dn)},!0)||!1},kn.getBookmark=function(Cn){return{ǃOkw:this.ǃOkB(),ǃOkY:this.ǃOka("getBookmark",[Cn])}},kn.moveToBookmark=function(Cn){for(var Zn=[],In=0,Dn,Fn;Dn=Cn.ǃOkY[In++];)Fn=Ye.createRange(this.ǃOkb),Fn.moveToBookmark(Dn),Zn.push(Fn);Cn.ǃOkw?this.ǃOkM(Zn[0],"backward"):this.ǃOkE(Zn)},kn.ǃOkQ=function(){return{ǃOkw:this.ǃOkB(),ǃOkj:this.ǃOka(_39)}},kn.ǃOkF=function(Cn){this.removeAllRanges();for(var Fn=0,Dn;Dn=Cn.ǃOkj[Fn];++Fn)this.addRange(Dn,Cn.ǃOkw&&0==Fn)},kn.ǃOza=function(){var Cn=[];return this.ǃOki(function(Dn){Cn.push(Qt.ǃOza(Dn))}),Cn.join("")},nn.ǃOLg&&(kn.ǃOkW=function(){var Cn;if(Cn=this.ǃOk$){var Dn=Cn.createRange();if(Lt(Dn))return Dn;throw He.ǃOLG("getNativeTextRange: selection is a control selection")}if(0bn;++bn)mn[bn].ǃOkP=vn;return vn}function de(hn,gn,mn){for(var bn=mn(hn,gn),Un=[],En=0,vn;vn=bn[En++];)Un.push(ae(hn,vn));return Un}function re(hn){var gn=hn||"",mn="string"==typeof gn?gn.split(""):gn;return mn.sort(function(vn,bn){return vn.charCodeAt(0)-bn.charCodeAt(0)}),mn.join("").replace(/(.)\1+/g,"$1")}function oe(hn){var gn,mn;return hn?(gn=hn.language||Xt,mn={},We(mn,Yt[gn]||Yt[Xt]),We(mn,hn),mn):Yt[Xt]}function ye(hn,gn){var mn=Ke(hn,gn);return gn.hasOwnProperty("wordOptions")&&(mn.wordOptions=oe(mn.wordOptions)),gn.hasOwnProperty("characterOptions")&&(mn.characterOptions=Ke(mn.characterOptions,At)),mn}function Oe(hn,gn){var mn=Vt(hn,"display",gn),vn=hn.tagName.toLowerCase();return"block"==mn&&$t&&Wt.hasOwnProperty(vn)?Wt[vn]:mn}function le(hn){for(var gn=ge(hn),mn=0,vn=gn.length;vn>mn;++mn)if(1==gn[mn].nodeType&&_71==Oe(gn[mn]))return!0;return!1}function Je(hn){var gn;return 3==hn.nodeType&&(gn=hn.parentNode)&&"hidden"==Vt(gn,"visibility")}function he(hn){for(var gn=[];hn.parentNode;)gn.unshift(hn.parentNode),hn=hn.parentNode;return gn}function ge(hn){return he(hn).concat([hn])}function me(hn){for(;hn&&!hn.nextSibling;)hn=hn.parentNode;return hn?hn.nextSibling:null}function ve(hn,gn){return!gn&&hn.hasChildNodes()?hn.firstChild:me(hn)}function be(hn){var gn=hn.previousSibling;if(gn){for(hn=gn;hn.hasChildNodes();)hn=hn.lastChild;return hn}var mn=hn.parentNode;return mn&&1==mn.nodeType?mn:null}function Ue(hn){if(!hn||3!=hn.nodeType)return!1;var gn=hn.data;if(""===gn)return!0;var mn=hn.parentNode;if(!mn||1!=mn.nodeType)return!1;var vn=Vt(hn.parentNode,_73);return /^[\t\n\r ]+$/.test(gn)&&/^(normal|nowrap)$/.test(vn)||/^[\t\r ]+$/.test(gn)&&"pre-line"==vn}function Ee(hn){if(""===hn.data)return!0;if(!Ue(hn))return!1;var gn=hn.parentNode;return!gn||!!le(hn)}function Le(hn){var gn=hn.nodeType;return 7==gn||8==gn||le(hn)||/^(script|style)$/i.test(hn.nodeName)||Je(hn)||Ee(hn)}function we(hn,gn){var mn=hn.nodeType;return 7==mn||8==mn||1==mn&&_71==Oe(hn,gn)}function xe(){this.ǃO$Z={}}function ke(hn,gn,mn){return function(vn){var bn=this.cache;if(bn.hasOwnProperty(hn))return Kt++,bn[hn];Qt++;var Un=gn.call(this,mn?this[mn]:this,vn);return bn[hn]=Un,Un}}function Se(hn,gn){this.node=hn,this.session=gn,this.cache=new xe,this.positions=new xe}function Xe(hn,gn){this.offset=gn,this.ǃOkd=hn,this.node=hn.node,this.session=hn.session,this.cache=new xe}function Re(){return De(),un=new cn}function Ce(){return un||Re()}function De(){un&&un.detach(),un=null}function Fe(hn,gn,mn,vn){function bn(){var xn=null;return gn?(xn=En,Ln||(En=En.ǃOks(),Ln=!En||mn&&En.ǃtE(mn))):Ln||(xn=En=En.ǃOVO(),Ln=!En||mn&&En.ǃtE(mn)),Ln&&(En=null),xn}mn&&(gn?Le(mn.node)&&(mn=hn.ǃOks()):Le(mn.node)&&(mn=mn.ǃOVO()));var En=hn,Ln=!1,wn=!1,Un;return{next:function(){if(wn)return wn=!1,Un;for(var xn,kn;xn=bn();)if(kn=xn.ǃOVJ(vn))return Un=xn,xn;return null},ǃOVy:function(){if(!Un)throw ne.ǃOLG("createCharacterIterator: cannot rewind. Only one position can be rewound.");wn=!0},ǃOVf:function(){hn=mn=null}}}function Ze(hn,gn,mn){function vn(Xn){for(var Cn=[],Dn=Xn?bn:Un,Fn=!1,Zn=!1,Nn,Rn;Nn=Dn.next();){if(Rn=Nn.ǃOVS,Ut.test(Rn))Zn&&(Zn=!1,Fn=!0);else{if(Fn){Dn.ǃOVy();break}Zn=!0}Cn.push(Nn)}return Cn}var bn=Fe(hn,!1,null,gn),Un=Fe(hn,!0,null,gn),En=mn.ǃOVn,Ln=vn(!0),wn=vn(!1).reverse(),xn=de(wn.concat(Ln),mn,En),kn=Ln.length?xn.slice(pn(xn,Ln[0].ǃOkP)):[],Sn=wn.length?xn.slice(0,pn(xn,wn.pop().ǃOkP)+1):[];return{ǃOVX:function(){for(var Xn,Nn;1==kn.length&&!(Xn=kn[0]).ǃOkx&&0<(Nn=vn(!0)).length;)kn=de(Xn.ǃOkv.concat(Nn),mn,En);return kn.shift()},ǃOVR:function(){for(var Xn,Nn;1==Sn.length&&!(Xn=Sn[0]).ǃOkx&&0<(Nn=vn(!1)).length;)Sn=de(Nn.reverse().concat(Xn.ǃOkv),mn,En);return Sn.pop()},ǃOVf:function(){bn.ǃOVf(),Un.ǃOVf(),kn=Sn=null}}}function Ie(hn,gn,mn,vn,bn){var xn=0,kn=hn,Sn=Math.abs(mn),Un,En,Ln,wn;if(0!==mn){var Xn=0>mn;switch(gn){case je:for(En=Fe(hn,Xn,null,vn);(Un=En.next())&&Sn>xn;)++xn,kn=Un;Ln=Un,En.ǃOVf();break;case Pe:for(var Nn=Ze(hn,vn,bn),Rn=Xn?Nn.ǃOVR:Nn.ǃOVX;(wn=Rn())&&Sn>xn;)wn.ǃOkx&&(++xn,kn=Xn?wn.ǃOkv[0]:wn.ǃOkv[wn.ǃOkv.length-1]);break;default:throw new Error("movePositionBy: unit '"+gn+"' not implemented");}Xn?(kn=kn.ǃOks(),xn=-xn):kn&&kn.ǃOVg&&!kn.ǃOVH&&(gn==Pe&&(En=Fe(hn,!1,null,vn),Ln=En.next(),En.ǃOVf()),Ln&&(kn=Ln.ǃOks()))}return{position:kn,ǃOVU:xn}}function _e(hn,gn,mn,vn){var bn=hn.ǃOVC(gn,!0),Un=hn.ǃOVC(gn,!1),En=vn?Un:bn,Ln=vn?bn:Un;return Fe(En,!!vn,Ln,mn)}function $e(hn,gn,mn){for(var bn=[],Un=_e(hn,gn,mn),vn;vn=Un.next();)bn.push(vn);return Un.ǃOVf(),bn}function Ae(hn,gn,mn){var vn=te.createRange(hn.node);return vn.ǃOzr(hn.node,hn.offset,gn.node,gn.offset),!vn.expand("word",{wordOptions:mn})}function qe(hn,gn,mn,vn,bn){function Un(Fn,Zn){var In=Cn[Fn].ǃOks(),_n=Cn[Zn-1],$n=!bn.ǃOVu||Ae(In,_n,bn.wordOptions);return{ǃOV_:In,ǃOVm:_n,valid:$n}}for(var Xn=Dt(bn.direction),Nn=Fe(hn,Xn,hn.session.ǃOVC(vn,Xn),bn.characterOptions),Rn="",Cn=[],Dn=null,En,Ln,wn,xn,kn,Sn;En=Nn.next();)if(Ln=En.ǃOVS,mn||bn.ǃOVb||(Ln=Ln.toLowerCase()),Xn?(Cn.unshift(En),Rn=Ln+Rn):(Cn.push(En),Rn+=Ln),mn){if(kn=gn.exec(Rn))if(wn=kn.index,xn=wn+kn[0].length,!Sn)Sn=!0;else if(!Xn&&xn1
",!0),gn=hn.firstChild,mn=te.getSelection();mn.collapse(gn.lastChild,2),mn.setStart(gn.firstChild,0),Ft=1==(""+mn).length,hn.innerHTML="1
",mn.collapse(hn,2),mn.setStart(hn.firstChild,0),Zt=1==(""+mn).length,hn.innerHTML="1 1
",mn.collapse(hn,2),mn.setStart(hn.firstChild,0),It=1==(""+mn).length,Me.removeNode(hn),mn.removeAllRanges()}();var At={ǃOVc:!0,ǃOVt:!0,ǃOV$:!0,ǃOVq:!0,ǃOVM:""},qt={ǃOVc:!!0,ǃOVt:!Zt,ǃOV$:!It,ǃOVq:!0},Yt={ǃOVB:{ǃOkA:/[a-z0-9]+('[a-z0-9]+)*/gi,ǃOkh:!1,ǃOVn:function(hn,gn){function mn(xn,kn,Sn){Ln.push({start:xn,end:kn,ǃOkx:Sn})}for(var En=hn.join(""),Ln=[],wn=0,vn,bn,Un;vn=gn.ǃOkA.exec(En);){if(bn=vn.index,Un=bn+vn[0].length,bn>wn&&mn(wn,bn,!1),gn.ǃOkh)for(;Lt.test(hn[Un]);)++Un;mn(bn,Un,!0),wn=Un}return wnmn;++mn)if(!Le(gn[mn]))return!0;return this.ǃOVW()},_70),ǃOVA:ke("trailingSpace",function(hn){if("br"==hn.tagName.toLowerCase())return"";switch(this.ǃOVa()){case"inline":for(var gn=hn.lastChild;gn;){if(!we(gn))return 1==gn.nodeType?this.session.ǃOVh(gn).ǃOVA():"";gn=gn.previousSibling}break;case _77:case _76:case _71:case _75:case _78:break;case _74:return"\t";default:return this.ǃOVx(!0)?"\n":"";}return""},_70),ǃOVv:ke("leadingSpace",function(){switch(this.ǃOVa()){case"inline":case _77:case _76:case _71:case _75:case _78:case _74:break;default:return this.ǃOVx(!1)?"\n":"";}return""},_70)});var Jn={ǃOVS:"",ǃOVP:en,ǃOVd:!1,ǃOVZ:function(){var hn=this;if(!hn.ǃOVs){var gn=hn.node,mn=hn.offset,vn="",bn=en,Un=!1;if(0mn;++mn)if(hn[mn]===gn)return mn;return-1};We(te.ǃOLi,{moveStart:Be(!0,!1),moveEnd:Be(!1,!1),move:Be(!0,!0),ǃOVz:Ye(!0),ǃOVk:Ye(!1),trim:Te(function(hn,gn){var mn=this.ǃOVz(gn),vn=this.ǃOVk(gn);return mn||vn}),expand:Te(function(hn,gn,mn){var vn=!1;mn=ye(mn,jt);var bn=mn.characterOptions;if(gn||(gn=je),gn==Pe){var Ln=mn.wordOptions,wn=hn.ǃOVC(this,!0),xn=hn.ǃOVC(this,!1),kn=Ze(wn,bn,Ln),Sn=kn.ǃOVX(),Xn=Sn.ǃOkv[0].ǃOks(),Un,En;if(this.collapsed)Un=Sn;else{var Nn=Ze(xn,bn,Ln);Un=Nn.ǃOVR()}return En=Un.ǃOkv[Un.ǃOkv.length-1],Xn.ǃtE(wn)||(this.setStart(Xn.node,Xn.offset),vn=!0),En&&!En.ǃtE(xn)&&(this.setEnd(En.node,En.offset),vn=!0),mn.trim&&(mn.ǃOVz&&(vn=this.ǃOVz(bn)||vn),mn.ǃOVk&&(vn=this.ǃOVk(bn)||vn)),vn}return this.moveEnd(je,1,mn)}),text:Te(function(hn,gn){return this.collapsed?"":$e(hn,this,Ke(gn,At)).join("")}),ǃOKU:Te(function(hn,gn,mn,vn,bn){var Un={characterOptions:bn};gn||(gn=Qe(this.ǃOzf())),this.selectNodeContents(gn),this.collapse(!0),this.moveStart(_72,mn,Un),this.collapse(!0),this.moveEnd(_72,vn-mn,Un)}),ǃOKC:Te(function(hn,gn,mn){gn||(gn=Qe(this.ǃOzf()));var Un=gn.parentNode,En=Me.ǃOLx(gn),Ln=-1==Me.ǃOzU(this.startContainer,this.endContainer,Un,En),wn=this.cloneRange(),vn,bn;return Ln?(wn.ǃOzr(this.startContainer,this.startOffset,Un,En),vn=-wn.text(mn).length):(wn.ǃOzr(Un,En,this.startContainer,this.startOffset),vn=wn.text(mn).length),bn=vn+this.text(mn).length,{start:vn,end:bn}}),findText:Te(function(hn,gn,mn){mn=ye(mn,Ht),mn.ǃOVu&&(mn.wordOptions.ǃOkh=!1);var vn=Dt(mn.direction),bn=mn.ǃOVL;bn||(bn=te.createRange(),bn.selectNodeContents(this.ǃOzf()));var Un=gn,En=!1;"string"==typeof Un?mn.ǃOVb||(Un=Un.toLowerCase()):En=!0;var Ln=hn.ǃOVC(this,!vn),wn=bn.comparePoint(Ln.node,Ln.offset);-1===wn?Ln=hn.ǃOVC(bn,!0):1===wn&&(Ln=hn.ǃOVC(bn,!1));for(var kn=Ln,Sn=!1,xn;;)if(xn=qe(kn,Un,En,bn,mn)){if(xn.valid)return this.ǃOzr(xn.ǃOV_.node,xn.ǃOV_.offset,xn.ǃOVm.node,xn.ǃOVm.offset),!0;kn=vn?xn.ǃOV_:xn.ǃOVm}else{if(!mn.wrap||Sn)return!1;bn=bn.cloneRange(),kn=hn.ǃOVC(bn,!vn),bn.ǃOzI(Ln.node,Ln.offset,vn),Sn=!0}}),ǃOKu:function(hn){if(this.deleteContents(),hn){var gn=this.createContextualFragment(hn),mn=gn.lastChild;this.insertNode(gn),this.ǃOzx(mn)}}}),We(te.ǃOLa,{expand:Te(function(hn,gn,mn){this.ǃOkp(function(vn){vn.expand(gn,mn)})}),move:Te(function(hn,gn,mn,vn){var bn=0;if(this.focusNode){this.collapse(this.focusNode,this.focusOffset);var Un=this.getRangeAt(0);vn||(vn={}),vn.characterOptions=Ke(vn.characterOptions,qt),bn=Un.move(gn,mn,vn),this.ǃOkM(Un)}return bn}),ǃOVz:He("trimStart"),ǃOVk:He("trimEnd"),trim:He("trim"),ǃOKU:Te(function(hn,gn,mn,vn,bn,Un){var En=te.createRange(gn);En.ǃOKU(gn,mn,vn,Un),this.ǃOkM(En,bn)}),ǃOK_:Te(function(hn,gn,mn){for(var vn=this.ǃOkT(),bn=vn.length,Un=[],En=1==bn&&this.ǃOkB(),Ln=0,wn=vn.length;wn>Ln;++Ln)Un[Ln]={ǃOKm:vn[Ln].ǃOKC(gn,mn),ǃOkw:En,characterOptions:mn};return Un}),ǃOKb:Te(function(hn,gn,mn){this.removeAllRanges();for(var En=0,Ln=mn.length,vn,bn,Un;Ln>En;++En)bn=mn[En],Un=bn.ǃOKm,vn=te.createRange(gn),vn.ǃOKU(gn,Un.start,Un.end,bn.characterOptions),this.addRange(vn,bn.ǃOkw)}),text:Te(function(hn,gn){for(var mn=[],vn=0,bn=this.rangeCount;bn>vn;++vn)mn[vn]=this.getRangeAt(vn).text(gn);return mn.join("")})}),te.innerText=function(hn,gn){var mn=te.createRange(hn);mn.selectNodeContents(hn);var vn=mn.text(gn);return vn},te.ǃOKc=function(hn,gn,mn){var vn=Ce();mn=ye(mn,Mt);var bn=vn.ǃOVE(hn,gn),Un=Ze(bn,mn.characterOptions,mn.wordOptions),En=Dt(mn.direction);return{next:function(){return En?Un.ǃOVR():Un.ǃOVX()},ǃOVf:function(){Un.ǃOVf(),this.next=function(){}}}},te.ǃOKt=function(hn){var gn=Ce();hn(gn),De()},te.ǃOKt.ǃOK$=Te,te.ǃOkU={ǃOKq:function(hn){return hn&&(1==hn.nodeType&&!/^(inline(-block|-table)?|none)$/.test(Oe(hn))||9==hn.nodeType||11==hn.nodeType)},ǃOKM:Ee,ǃOKB:Te(function(hn,gn,mn){return hn.ǃOVE(gn,mn)})}}),ee},this),!function(ee,te){"function"==typeof ǃql&&ǃql.ǃqx?ǃql(["./rangy-core"],ee):"undefined"!=typeof ǃqZ&&"object"==typeof exports?ǃqZ.exports=ee(ǃqA("rangy")):ee(te.rangy)}(function(ee){const _79="class",_80="object",_81="string",_82="display",_83="className";return ee.ǃOLE("ClassApplier",["WrappedSelection"],function(te,ne){function ie(Lt,Xt){for(var Dt in Lt)if(Lt.hasOwnProperty(Dt)&&!1===Xt(Dt,Lt[Dt]))return!1;return!0}function ae(Lt){return Lt.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function de(Lt,Xt){return!!Lt&&new RegExp("(?:^|\\s)"+Xt+"(?:\\s|$)").test(Lt)}function re(Lt,Xt){if(_80==typeof Lt.classList)return Lt.classList.contains(Xt);var Dt=_81==typeof Lt.className,Ft=Dt?Lt.className:Lt.getAttribute(_79);return de(Ft,Xt)}function oe(Lt,Xt){if(_80==typeof Lt.classList)Lt.classList.add(Xt);else{var Dt=_81==typeof Lt.className,Ft=Dt?Lt.className:Lt.getAttribute(_79);Ft?de(Ft,Xt)||(Ft+=" "+Xt):Ft=Xt,Dt?Lt.className=Ft:Lt.setAttribute(_79,Ft)}}function ye(Lt){var Xt=_81==typeof Lt.className;return Xt?Lt.className:Lt.getAttribute(_79)}function Oe(Lt){return Lt&&Lt.split(/\s+/).sort().join(" ")}function le(Lt){return Oe(ye(Lt))}function Je(Lt,Xt){return le(Lt)==le(Xt)}function ue(Lt,Xt){for(var Dt=Xt.split(/\s+/),Ft=0,Zt=Dt.length;Zt>Ft;++Ft)if(!re(Lt,ae(Dt[Ft])))return!1;return!0}function pe(Lt){var Xt=Lt.parentNode;return Xt&&1==Xt.nodeType&&!/^(textarea|style|script|select|iframe)$/i.test(Xt.nodeName)}function he(Lt,Xt,Dt,Ft,Zt){var It=Lt.node,_t=Lt.offset,$t=It,At=_t;It==Ft&&_t>Zt&&++At,It!=Xt||_t!=Dt&&_t!=Dt+1||($t=Ft,At+=Zt-Dt),It==Xt&&_t>Dt+1&&--At,Lt.node=$t,Lt.offset=At}function ge(Lt,Xt,Dt){Lt.node==Xt&&Lt.offset>Dt&&--Lt.offset}function me(Lt,Xt,Dt,Ft){-1==Dt&&(Dt=Xt.childNodes.length);var Zt=Lt.parentNode,It=qe.ǃOLx(Lt);He(Ft,function(_t){he(_t,Zt,It,Xt,Dt)}),Xt.childNodes.length==Dt?Xt.appendChild(Lt):Xt.insertBefore(Lt,Xt.childNodes[Dt])}function ve(Lt,Xt){var Dt=Lt.parentNode,Ft=qe.ǃOLx(Lt);He(Xt,function(Zt){ge(Zt,Dt,Ft)}),qe.removeNode(Lt)}function be(Lt,Xt,Dt,Ft,Zt){for(var _t=[],It;It=Lt.firstChild;)me(It,Xt,Dt++,Zt),_t.push(It);return Ft&&ve(Lt,Zt),_t}function Ue(Lt,Xt){return be(Lt,Lt.parentNode,qe.ǃOLx(Lt),!0,Xt)}function Ee(Lt,Xt){var Dt=Lt.cloneRange();Dt.selectNodeContents(Xt);var Ft=Dt.ǃOzY(Lt),Zt=Ft?Ft.toString():"";return""!=Zt}function Le(Lt){for(var Dt=Lt.ǃOzZ([3]),Ft=0,Xt;(Xt=Dt[Ft])&&!Ee(Lt,Xt);)++Ft;for(var Zt=Dt.length-1;(Xt=Dt[Zt])&&!Ee(Lt,Xt);)--Zt;return Dt.slice(Ft,Zt+1)}function we(Lt,Xt){if(Lt.attributes.length!=Xt.attributes.length)return!1;for(var It=0,_t=Lt.attributes.length,Dt,Ft,Zt;_t>It;++It)if(Dt=Lt.attributes[It],Zt=Dt.name,_79!=Zt){if(Ft=Xt.attributes.getNamedItem(Zt),null===Dt!=(null===Ft))return!1;if(Dt.specified!=Ft.specified)return!1;if(Dt.specified&&Dt.nodeValue!==Ft.nodeValue)return!1}return!0}function xe(Lt,Xt){for(var Ft=0,Zt=Lt.attributes.length,Dt;Zt>Ft;++Ft)if(Dt=Lt.attributes[Ft].name,(!Xt||!Be(Xt,Dt))&&Lt.attributes[Ft].specified&&_79!=Dt)return!0;return!1}function ke(Lt){var Xt;return Lt&&1==Lt.nodeType&&((Xt=Lt.parentNode)&&9==Xt.nodeType&&"on"==Xt.designMode||Ve(Lt)&&!Ve(Lt.parentNode))}function Se(Lt){return(Ve(Lt)||1!=Lt.nodeType&&Ve(Lt.parentNode))&&!ke(Lt)}function Xe(Lt){return Lt&&1==Lt.nodeType&&!We.test(Me(Lt,_82))}function Ne(Lt){if(0==Lt.data.length)return!0;if(Ke.test(Lt.data))return!1;var Xt=Me(Lt.parentNode,"whiteSpace");switch(Xt){case"pre":case"pre-wrap":case"-moz-pre-wrap":return!1;case"pre-line":if(/[\r\n]/.test(Lt.data))return!1;}return Xe(Lt.previousSibling)||Xe(Lt.nextSibling)}function Re(Lt){var Ft=[],Xt,Dt;for(Xt=0;Dt=Lt[Xt++];)Ft.push(new Te(Dt.startContainer,Dt.startOffset),new Te(Dt.endContainer,Dt.endOffset));return Ft}function Ce(Lt,Xt){for(var It=0,_t=Lt.length,Dt,Ft,Zt;_t>It;++It)Dt=Lt[It],Ft=Xt[2*It],Zt=Xt[2*It+1],Dt.ǃOzr(Ft.node,Ft.offset,Zt.node,Zt.offset)}function De(Lt,Xt){return qe.ǃOLs(Lt)?0==Xt?!!Lt.previousSibling:Xt!=Lt.length||!!Lt.nextSibling:0Zt;++Zt)"*"==Dt[Zt]?$t.ǃOKG=!0:$t.ǃOKK.push(Dt[Zt].toLowerCase());else $t.ǃOKK=[$t.ǃOKV]}var qe=te.ǃOLW,Te=qe.ǃOzt,Be=qe.ǃOLZ,Ye=te.ǃOLM,He=Ye.forEach,je=Ye.ǃOLC(document,"createElementNS"),Pe=function(){function Lt(Xt,Dt,Ft){return Dt&&Ft?" ":""}return function(Xt,Dt){if(_80==typeof Xt.classList)Xt.classList.remove(Dt);else{var Ft=_81==typeof Xt.className,Zt=Ft?Xt.className:Xt.getAttribute(_79);Zt=Zt.replace(new RegExp("(^|\\s)"+Dt+"(\\s|$)"),Lt),Ft?Xt.className=Zt:Xt.setAttribute(_79,Zt)}}}(),Me=qe.ǃOz_,Ve=function(){var Lt=document.createElement("div");return"boolean"==typeof Lt.isContentEditable?function(Xt){return Xt&&1==Xt.nodeType&&Xt.isContentEditable}:function(Xt){return Xt&&1==Xt.nodeType&&"false"!=Xt.contentEditable&&("true"==Xt.contentEditable||Ve(Xt.parentNode))}}(),We=/^inline(-block|-table)?$/i,Ke=/[^\r\n\t\f \u200B]/,Qe=Ie(!1),Ge=Ie(!0);_e.prototype={ǃOKE:function(Lt){var Xt=this.ǃOKz,Dt=Xt[0];if(1Zt&&(--qt.offset,qt.offset==Zt+1&&ǃOqV-1>At&&(qt.node=Dt,qt.offset=_t))})),It[At]=$t.data,_t+=$t.data.length}),Dt.data=It.join("")}return Dt.data},ǃOqW:function(){for(var Lt=this.ǃOKz.length,Xt=0;Lt--;)Xt+=this.ǃOKz[Lt].length;return Xt},toString:function(){var Lt=[];return He(this.ǃOKz,function(Xt,Dt){Lt[Dt]="'"+Xt.data+"'"}),"[Merge("+Lt.join(",")+")]"}};var Jt=["elementTagName","ignoreWhiteSpace","applyToEditableOnly","useExistingElements","removeEmptyElements","onElementCreate"],Ut={};$e.prototype={ǃOKV:"span",ǃOKo:{},ǃOKe:{},ǃOKT:!0,ǃOKD:!1,ǃOKi:!0,ǃOKa:!0,ǃOKp:null,ǃOKI:function(Lt,Xt,Dt){var qt={},Ft,Zt,It,_t,$t,At;for(var Yt in Lt)if(Lt.hasOwnProperty(Yt))if(_t=Lt[Yt],$t=Xt[Yt],_83==Yt)oe(Xt,_t),oe(Xt,this.className),Xt[Yt]=Oe(Xt[Yt]),Dt&&(qt[Yt]=_t);else if("style"==Yt){for(Ft in Zt=$t,Dt&&(qt[Yt]=It={}),Lt[Yt])Lt[Yt].hasOwnProperty(Ft)&&(Zt[Ft]=_t[Ft],Dt&&(It[Ft]=Zt[Ft]));this.ǃOKr.push(Yt)}else Xt[Yt]=_t,Dt&&(qt[Yt]=Xt[Yt],At=Ut.hasOwnProperty(Yt)?Ut[Yt]:Yt,this.ǃOKr.push(At));return Dt?qt:""},ǃOKw:function(Lt,Xt){for(var Dt in Lt)Lt.hasOwnProperty(Dt)&&!/^class(?:Name)?$/i.test(Dt)&&Xt.setAttribute(Dt,Lt[Dt])},ǃOKY:function(Lt){return Be(this.ǃOKK,Lt.tagName.toLowerCase())},ǃOKQ:function(Lt){var Xt=this;return Lt.ǃOzZ([1],function(Dt){return Xt.ǃOKY(Dt)&&!Dt.hasChildNodes()})},ǃOKj:function(Lt){return 1==Lt.nodeType&&(this.ǃOKG||this.ǃOKY(Lt))&&re(Lt,this.className)},ǃOKF:function(Lt){for(;Lt;){if(this.ǃOKj(Lt))return Lt;Lt=Lt.parentNode}return null},ǃOKW:function(Lt){return!this.ǃOKD||Se(Lt)},ǃOKZ:function(Lt){return this.ǃOKT&&Lt&&3==Lt.nodeType&&Ne(Lt)},ǃOKl:function(Lt,Xt,Dt,Ft){var _t=Lt[0],$t=Lt[Lt.length-1],At=[],qt=_t,Yt=$t,Ht=0,zt=$t.length,Zt,It;He(Lt,function(Wt){It=Qe(Wt,!Ft),It?(Zt||(Zt=new _e(It),At.push(Zt)),Zt.ǃOKz.push(Wt),Wt===_t&&(qt=Zt.ǃOKz[0],Ht=qt.length),Wt===$t&&(Yt=Zt.ǃOKz[0],zt=Zt.ǃOqW())):Zt=null});var jt=Ge($t,!Ft);if(jt&&(Zt||(Zt=new _e($t),At.push(Zt)),Zt.ǃOKz.push(jt)),At.length){for(var Mt=0,Vt=At.length;Vt>Mt;++Mt)At[Mt].ǃOKE(Dt);Xt.ǃOzr(qt,Ht,Yt,zt)}},ǃOKx:function(Lt){var Dt=qe.ǃOzf(Lt),Ft=je&&!qe.ǃOLl(Lt)&&(Xt=Lt.namespaceURI)?Dt.createElementNS(Lt.namespaceURI,this.ǃOKV):Dt.createElement(this.ǃOKV),Xt;return this.ǃOKI(this.ǃOKo,Ft,!1),this.ǃOKw(this.ǃOKe,Ft),oe(Ft,this.className),this.ǃOKp&&this.ǃOKp(Ft,this),Ft},ǃOKA:function(Lt,Xt){var Dt=this;return ie(Xt,function(Ft,Zt){if(_83==Ft)return ue(Lt,Zt);if(_80==typeof Zt){if(!Dt.ǃOKA(Lt[Ft],Zt))return!1;}else if(Lt[Ft]!==Zt)return!1})},ǃOKh:function(Lt,Xt){return ie(Xt,function(Dt,Ft){return!(Lt.getAttribute(Dt)!==Ft)&&void 0})},ǃOKv:function(Lt){if(pe(Lt)){var Xt=Lt.parentNode;if(1==Xt.childNodes.length&&this.ǃOKi&&this.ǃOKY(Xt)&&this.ǃOKA(Xt,this.ǃOKo)&&this.ǃOKh(Xt,this.ǃOKe))oe(Xt,this.className);else{var Dt=Lt.parentNode,Ft=this.ǃOKx(Dt);Dt.insertBefore(Ft,Lt),Ft.appendChild(Lt)}}},ǃOKP:function(Lt){return Lt.tagName.toLowerCase()==this.ǃOKV&&le(Lt)==this.ǃOKN&&this.ǃOKA(Lt,this.ǃOKo)&&!xe(Lt,this.ǃOKr)&&this.ǃOKh(Lt,this.ǃOKe)&&this.ǃOKW(Lt)},ǃOKd:function(Lt){var Xt=Lt.childNodes.length;return 1==Lt.nodeType&&this.ǃOKP(Lt)&&(0==Xt||1==Xt&&this.ǃOKd(Lt.firstChild))},ǃOKs:function(Lt){var Xt=this,Dt=Lt.ǃOzZ([1],function(It){return Xt.ǃOKd(It)}),Ft=[Lt],Zt=Re(Ft);He(Dt,function(It){ve(It,Zt)}),Ce(Ft,Zt)},ǃOoO:function(Lt,Xt,Dt,Ft){if(!Xt.containsNode(Dt)){var Zt=Xt.cloneRange();Zt.selectNode(Dt),Zt.isPointInRange(Xt.endContainer,Xt.endOffset)&&(Fe(Dt,Xt.endContainer,Xt.endOffset,Ft),Xt.setEndAfter(Dt)),Zt.isPointInRange(Xt.startContainer,Xt.startOffset)&&(Dt=Fe(Dt,Xt.startContainer,Xt.startOffset,Ft))}this.ǃOKP(Dt)?Ue(Dt,Ft):Pe(Dt,this.className)},ǃOoJ:function(Lt,Xt,Dt){var Ft=this.ǃOKF(Lt);Ft&&Fe(Ft,Lt,Xt,Dt)},ǃOoy:function(Lt,Xt){this.ǃOKP(Lt)?Ue(Lt,Xt):Pe(Lt,this.className)},ǃOof:function(Lt,Xt){var Dt=this;Xt=Xt||[];var Ft=Re(Xt||[]);Lt.ǃOzE(Ft),Dt.ǃOKa&&Dt.ǃOKs(Lt);var Zt=Le(Lt);if(Zt.length){He(Zt,function($t){Dt.ǃOKZ($t)||Dt.ǃOKF($t)||!Dt.ǃOKW($t)||Dt.ǃOKv($t,Ft)});var It=Zt[Zt.length-1];Lt.ǃOzr(Zt[0],0,It,It.length),Dt.normalize&&Dt.ǃOKl(Zt,Lt,Ft,!1),Ce(Xt,Ft)}var _t=Dt.ǃOKQ(Lt);He(_t,function($t){oe($t,Dt.className)})},ǃOoS:function(Lt){for(var Xt=Lt.length;Xt--;)this.ǃOof(Lt[Xt],Lt);return Lt},ǃOon:function(Lt){var Xt=te.getSelection(Lt);Xt.ǃOkE(this.ǃOoS(Xt.ǃOkT()))},ǃOoX:function(Lt,Xt){var Dt=this;Xt=Xt||[];var Ft=Re(Xt);Lt.ǃOzE(Ft),Dt.ǃOKa&&Dt.ǃOKs(Lt,Ft);var _t=Le(Lt),$t=_t[_t.length-1],Zt,It;if(_t.length){Dt.ǃOoJ(Lt.endContainer,Lt.endOffset,Ft),Dt.ǃOoJ(Lt.startContainer,Lt.startOffset,Ft);for(var At=0,qt=_t.length;qt>At;++At)Zt=_t[At],It=Dt.ǃOKF(Zt),It&&Dt.ǃOKW(Zt)&&Dt.ǃOoy(It,Ft);Lt.ǃOzr(_t[0],0,$t,$t.length),Dt.normalize&&Dt.ǃOKl(_t,Lt,Ft,!0),Ce(Xt,Ft)}var Yt=Dt.ǃOKQ(Lt);He(Yt,function(Ht){Pe(Ht,Dt.className)})},ǃOoR:function(Lt){for(var Xt=Lt.length;Xt--;)this.ǃOoX(Lt[Xt],Lt);return Lt},ǃOog:function(Lt){var Xt=te.getSelection(Lt),Dt=te.getSelection(Lt).ǃOkT();this.ǃOoR(Dt),Xt.ǃOkE(Dt)},ǃOoH:function(Lt){if(Lt.collapsed||""==Lt.toString())return!!this.ǃOKF(Lt.commonAncestorContainer);var Xt=Lt.ǃOzZ([3]);if(Xt.length)for(var Ft=0,Dt;Dt=Xt[Ft++];)if(!this.ǃOKZ(Dt)&&Ee(Lt,Dt)&&this.ǃOKW(Dt)&&!this.ǃOKF(Dt))return!1;return!0},ǃOoU:function(Lt){var Xt=Lt.length;if(0==Xt)return!1;for(;Xt--;)if(!this.ǃOoH(Lt[Xt]))return!1;return!0},ǃOoC:function(Lt){var Xt=te.getSelection(Lt);return this.ǃOoU(Xt.ǃOkT())},ǃOou:function(Lt){this.ǃOoH(Lt)?this.ǃOoX(Lt):this.ǃOof(Lt)},ǃOo_:function(Lt){this.ǃOoC(Lt)?this.ǃOog(Lt):this.ǃOon(Lt)},ǃOom:function(Lt){var Xt=[],Dt=this;return Lt.ǃOzZ([3],function(Ft){var Zt=Dt.ǃOKF(Ft);Zt&&!Be(Xt,Zt)&&Xt.push(Zt)}),Xt},detach:function(){}},$e.ǃOLM={ǃOKj:re,ǃOob:oe,ǃOoc:Pe,ǃOot:ye,ǃOo$:Je,ǃOoq:ue,ǃOoM:Ue,ǃOoB:we,ǃOoL:xe,ǃOoz:Fe,ǃOok:Ve,ǃOoV:ke,ǃOoK:Se},te.ǃOoo=te.ǃOoe=$e,te.ǃOor=function(Lt,Xt,Dt){return new $e(Lt,Xt,Dt)},Ye.ǃOLo(te,"createCssClassApplier","createClassApplier",ne)}),ee},this),"use strict";{let ee=!1,te=!1,ne="dev";window.ǃJ=class{constructor(){throw TypeError("static class can't be instantiated")}static ǃOoI(){ee=!0}static ǃOoN(){return ee}static ǃOoG(){te=!0}static ǃOoE(){return te}static ǃOoT(ae){ne=ae}static ǃOoD(){return ne}static ǃOoi(){return"final"===ne}},ǃJ.ǃOD=!1,ǃJ.ǃOoa=!1,ǃJ.hardwareConcurrency=navigator.hardwareConcurrency||2}"use strict",ǃJ.ǃOop=class{constructor(te){this.ǃOow=te,this.ǃOoY=new Map,this.ǃOoQ()}ǃOoQ(){let te=this.ǃOow;(te.startsWith("?")||te.startsWith("#"))&&(te=te.substr(1));const ne=te.split("&");for(const ie of ne)this.ǃOoj(ie)}ǃOoj(te){if(te){if(!te.includes("="))return void this.ǃOoY.set(te,null);const ne=te.indexOf("="),ie=decodeURIComponent(te.substring(0,ne)),ae=decodeURIComponent(te.substring(ne+1));this.ǃOoY.set(ie,ae)}}ǃOoF(){for(const te of this.ǃOoY)console.log("[QueryParser] Parameter '"+te[0]+"' = "+(null===te[1]?"null":"'"+te[1]+"'"))}ǃYN(te){return this.ǃOoY.has(te)}ǃOX(te){const ne=this.ǃOoY.get(te);return"undefined"==typeof ne?null:ne}ǃHW(){history.replaceState("",document.title,location.pathname+location.search)}ǃOoW(te){this.ǃOow=te,this.ǃOoY.clear(),this.ǃOoQ()}},ǃJ.ǃYG=new ǃJ.ǃOop(location.search),ǃJ.ǃHj=new ǃJ.ǃOop(location.hash),"dev"!==ǃJ.ǃYG.ǃOX("mode")&&ǃJ.ǃOoT("final"),"use strict";{function ee(ge,me,ve){if(!0===me){ve();he.set(ge,!0)}else if(me&&me.length){ve(me[0]);he.set(ge,!0)}else;}const _85="nwjs",_86="64-bit",_87="32-bit",_88="Android",_89="Windows",_90="Trident",_91="Mac OS X",_92="Blackberry",_93="Windows Phone",_94="Internet Explorer",te="(unknown)",ne=navigator.userAgent;let ie={ǃOoZ:/linux|openbsd|freebsd|netbsd/i.test(ne),ǃOol:/CrOS/.test(ne),ǃOox:/trident|iemobile|msie|tizen/i.test(ne),ǃOoA:/trident|iemobile|msie|edge\//i.test(ne),opera:/OPR/.test(ne),ǃOoh:/bb10/i.test(ne),ǃOov:/edge\//i.test(ne),ǃOoP:/trident/i.test(ne),ǃOod:/webkit/i.test(ne),safari:/safari\//i.test(ne),chrome:/chrome\//i.test(ne),ǃOos:/chromium\//i.test(ne),ǃOeO:/crosswalk|xwalk/i.test(ne),ǃOeJ:/nwjs/i.test(ne),ǃOey:/amazonwebappplatform/i.test(ne),ǃOef:/wv\)/.test(ne),ǃOeS:/android/i.test(ne),ǃOen:/nokiabrowser\/[0-9.]+/i.test(ne)},ae={ǃOeX:/windows\s+nt\s+\d+\.\d+/i.exec(ne),ǃOeR:/mac\s+os\s+x\s+[0-9_]+/i.exec(ne),ǃOeS:/android\s+[0-9.]+/i.exec(ne),opera:/OPR\/[0-9.]+/.exec(ne),ǃOeg:/tizen\s+[0-9.]+/i.exec(ne),ǃOeH:/iphone\s+os\s+[0-9_]+/i.exec(ne),ǃOeU:/ipad[^)]*os\s+[0-9_]+/i.exec(ne),ǃOeC:/windows\s+phone\s+[0-9.]+/i.exec(ne),ǃOeu:/windows\s+phone\s+os\s+[0-9.]+/i.exec(ne),chrome:/chrome\/[0-9.]+/i.exec(ne),ǃOos:/chromium\/[0-9.]+/i.exec(ne),ǃOeJ:/nwjs\/[0-9.]+/i.exec(ne),ǃOe_:/firefox\/[0-9.]+/i.exec(ne),ǃOem:/msie\s+[0-9.]+/i.exec(ne),ǃOov:/edge\/[0-9.]+/i.exec(ne),ǃOeb:/silk\/[0-9.]+/i.exec(ne)},de=te,re=te,oe=te,ye=te,Oe=te,le=te,Je=te,ue="browser",pe=!1,he=new Map;ee("isWindows",ae.ǃOeX,ge=>{de=_89;const me=ge.split(" ")[2];me&&("5.0"===me?re="2000":"5.1"===me?re="XP":"5.2"===me?re="XP":"6.0"===me?re="Vista":"6.1"===me?re="7":"6.2"===me?re="8":"6.3"===me?re="8.1":"10.0"===me?re="10":void 0)}),ee("isOSX",ae.ǃOeR,ge=>{de=_91;const me=ge.split(" ")[3];me&&(re=me.replace("_","."))}),ee("isLinux",ie.ǃOoZ,()=>{de="Linux"}),ee("isChromeOS",ie.ǃOol,()=>{de="Chrome OS"}),ee("isAndroid",!ie.ǃOox&&ae.ǃOeS,ge=>{de=_88;const me=ge.split(" ")[1];me&&(re=me)}),ee("isTizen",ae.ǃOeg,ge=>{de="Tizen";const me=ge.split(" ")[1];me&&(re=me)}),ee("isIPhone",!ie.ǃOox&&ae.ǃOeH,ge=>{de="iOS";const me=ge.split(" ")[2];me&&(re=me.replace("_","."))}),ee("isIPad",!ie.ǃOox&&ae.ǃOeU,ge=>{de="iOS";const me=ge.split(" ")[3];me&&(re=me.replace("_","."))}),ee("isWindowsPhone",ae.ǃOeC,ge=>{de=_93;const me=ge.split(" ")[2];me&&(re=me)}),ee("isWindowsPhoneOS",ae.ǃOeu,ge=>{de=_93;const me=ge.split(" ")[3];me&&(re=me)}),ee("isBlackberry",ie.ǃOoh,()=>{de=_92,re="10",ye="stock",Je="webkit"}),ee("isChrome",!ie.ǃOov&&!ie.opera&&ae.chrome,ge=>{ye="Chrome",Je="Blink";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isOpera",ae.opera,ge=>{ye="Opera",Je="Blink";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isChromium",ae.ǃOos,ge=>{ye="Chromium",Je="Blink";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isFirefox",ae.ǃOe_,ge=>{ye="Firefox",Je="Gecko";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isInternetExplorer",ae.ǃOem,ge=>{ye=_94,Je=_90;const me=ge.split(" ")[1];me&&(Oe=me)}),ee("isTrident",ye!==_94&&ie.ǃOoP,()=>{Je=_90;const ge=/rv:[0-9.]+/i.exec(ne);if(ge&&ge.length){ye=_94;const me=ge[0].split(":")[1];me&&(Oe=me)}}),ee("isEdge",ae.ǃOov,ge=>{ye="Edge",Je="Edge";const me=ge[0].split("/")[1];me&&(Oe=me)}),ee("isSafari",ie.safari&&!ie.ǃOen&&!ie.chrome&&!ie.ǃOos&&!ie.ǃOec&&!ie.ǃOoh,()=>{ye="Safari",Je="WebKit";const ge=/version\/[0-9.]+/i.exec(ne),me=/crios\/[0-9.]+/i.exec(ne),ve=/fxios\/[0-9.]+/i.exec(ne);if(ge&&ge.length){const be=ge[0].split("/")[1];be&&(Oe=be)}if(me&&me.length){ye="Chrome for iOS";const be=me[0].split("/")[1];be&&(Oe=be)}if(ve&&ve.length){ye="Firefox for iOS";const be=ve[0].split("/")[1];be&&(Oe=be)}}),ee("isSilk",ae.ǃOeb,ge=>{ye="Silk";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isCrosswalk",ie.ǃOeO,()=>ue="crosswalk"),ee("isCordova",window.ǃOet&&window.ǃOet.ǃOe$||window.ǃOet&&window.ǃOet.ǃOeq,()=>ue="cordova"),ee("isNWJS",ae.ǃOeJ,ge=>{ue=_85,ye="NW.js",Je="Chromium";const me=ge.split("/")[1];me&&(Oe=me)}),ee("isAmazonWebApp",ie.ǃOey,()=>ue="webapp"),ee("isHomeScreenWebApp",ue!==_85&&window.matchMedia("(display-mode: standalone)").matches,()=>ue="webapp"),ee("isFalseSafari","Safari"===ye&&(de===_88||"Tizen"===de||de===_92),()=>ye="stock"),ee("isAndroidWebview","Chrome"===ye&&"browser"===ue&&ie.ǃOef,()=>ue="webview"),ee("isFirefoxOS","Firefox"===ye&&de===te,()=>de="Firefox OS"),ee("isAndroidFallback",de===te&&!ie.ǃOox&&ie.ǃOeS,()=>de=_88),ee("isTridentFallback",de===te&&ie.ǃOoP,()=>Je=_90),ee("isWebkitFallback",de===te&&ie.ǃOod,()=>Je="WebKit"),ee("is64Bit",(ge=>{return ge.test(ne)||ge.test(navigator.platform)||"x64"===navigator.cpuClass})(/x86_64|x86-64|win64|x64;|x64\)|x64_|amd64|wow64|ia64|arm64|arch64|sparc64|ppc64|irix64/i),()=>oe=_86),ee("is32Bit",(ge=>{return ge.test(ne)||ge.test(navigator.platform)||"x86"===navigator.cpuClass})(/x86;|x86\)|i86|i386|i486|i586|i686|armv1|armv2|armv3|armv4|armv5|armv6|armv7/i),()=>oe=_87),ee("is64BitFallback",oe===te&&de===_91&&10.7<=parseFloat(re),()=>oe=_86),ee("is32BitFallback",oe===te&&de===_89||de===_88&&5>parseFloat(re),()=>oe=_87),ee("is32BitBrowser",oe===_87||/wow64/i.test(ne),()=>le=_87),ee("is64BitBrowser",/win64/i.test(ne),()=>le=_86),ee("isDesktop",(()=>{return de===_89||de===_91||"Linux"===de||"Chrome OS"===de||ue===_85})(),()=>pe=!0),ǃJ.ǃl={ǃHd:de,ǃOeM:re,ǃOeB:oe,ǃHP:ye,ǃOeL:Oe,ǃOez:le,ǃOek:Je,ǃZ:ue,ǃJW:pe,ǃO_:!pe,ǃOeV:!!(window.chrome&&chrome.runtime&&chrome.runtime.id),ǃOeK:ue===_85,ǃOeo:de===_91||"iOS"===de}}{function ee(){return ne=!1,console.log("(testing if dev tools open, which requires a log)",ie),ne}function te(de){let re=ǃJ.ǃOee();if(console.error("Assertion failure: "+de+"\n\nStack trace:\n"+re),!ǃJ.ǃOD&&!ae&&!ee()){ae=!0;let ye=ǃJ.ǃU.ǃOR.ǃOX("CrashReport");ye.ǃOg("assertion failure",{stack:re,message:de},document.body)}}ǃJ.ǃOD=!ǃJ.ǃOoi()&&ǃJ.ǃYG.ǃYN("debug"),ǃJ.ǃOoa=!ǃJ.ǃOoi()&&ǃJ.ǃYG.ǃYN("debug-defend"),ǃJ.ǃOoa&&(ǃJ.ǃOD=!0);let ne=!1,ie=new Image;ie.__defineGetter__("id",function(){ne=!0});let ae=!1;window.assert=function(re,oe){re||te(oe)}}"use strict",!String.prototype.startsWith&&Object.defineProperty(String.prototype,"startsWith",{ǃOer:!1,ǃOeI:!1,ǃOeN:!1,value:function(te,ne){return ne=ne||0,this.lastIndexOf(te,ne)===ne}}),!String.prototype.endsWith&&Object.defineProperty(String.prototype,"endsWith",{ǃOer:!1,ǃOeI:!1,ǃOeN:!1,value:function(te,ne){var ie=this.toString();(ne===void 0||ne>ie.length)&&(ne=ie.length),ne-=te.length;var ae=ie.indexOf(te,ne);return-1!==ae&&ae===ne}}),!String.prototype.includes&&(String.prototype.includes=function(){return-1!==String.prototype.indexOf.apply(this,arguments)}),!Array.prototype.includes&&(Array.prototype.includes=function(){return-1!==Array.prototype.indexOf.apply(this,arguments)}),!Object.entries&&Object.defineProperty(Object,"entries",{ǃOer:!1,value:function(te){let ne=[];for(let ie of Object.keys(te))ne.push([ie,te[ie]]);return ne}}),!Array.prototype.values&&(Array.prototype.values=function*(){for(const ee of this)yield ee}),!RegExp.escape&&(RegExp.escape=function(ee){return(ee+"").replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")}),navigator.storage&&!navigator.storage.estimate&&navigator.webkitTemporaryStorage&&navigator.webkitTemporaryStorage.queryUsageAndQuota&&(navigator.storage.estimate=function(){return new Promise((ee,te)=>{return navigator.webkitTemporaryStorage.queryUsageAndQuota((ne,ie)=>ee({usage:ne,quota:ie}),te)})}),"use strict";{const _95="undefined";ǃJ.ǃOeG={},ǃJ.ǃOeG.ǃOeE=(()=>{try{const ee=document.createElement("div"),te=ee.animate([{opacity:"0"},{opacity:"1"}],1e3);return typeof te.reverse!==_95}catch(ee){return!1}})(),ǃJ.ǃOeG.ǃOeT="import"in document.createElement("link"),ǃJ.ǃOeG.ǃOeD=typeof HTMLDialogElement!==_95,ǃJ.ǃOeG.ǃOei=!!window.requestIdleCallback,ǃJ.ǃOeG.ǃOea=!1;try{window.createImageBitmap(new ImageData(32,32),{ǃOep:"none"}).then(()=>{ǃJ.ǃOeG.ǃOea=!0}).catch(()=>{ǃJ.ǃOeG.ǃOea=!1})}catch(ee){ǃJ.ǃOeG.ǃOea=!1}ǃJ.ǃOeG.ǃOew=typeof Proxy!==_95,ǃJ.ǃOeG.ǃOeY=(()=>{const ee=document.createElement("a");return typeof ee.download!==_95})(),ǃJ.ǃOeG.ǃpA=(()=>{const ee=document.createElement("canvas");return typeof ee.toBlob!==_95})(),ǃJ.ǃOeG.ImageBitmap=!!window.createImageBitmap,ǃJ.ǃOeG.ǃOeQ=CSS.supports("background","element(#test)"),ǃJ.ǃOeG.ǃOej="function"==typeof fetch,ǃJ.ǃOeG.ǃOeF=window.isSecureContext&&"Opera"!==ǃJ.ǃl.ǃHP&&navigator.storage&&navigator.storage.persist,ǃJ.ǃOeG.ǃOeW=window.isSecureContext&&navigator.storage&&navigator.storage.estimate}{const _96="undefined",_97="unexpected type",_98="expected 2d array",_99="expected function",_100="expected simple object",_101="expected drawable or image data",_102="expected same function reference";ǃJ.ǃOeZ=function(te){return"number"==typeof te},ǃJ.ǃLR=function(te){return ǃJ.ǃOeZ(te)&&isFinite(te)},ǃJ.ǃzE=function(te){if(!ǃJ.ǃOeZ(te))throw new TypeError("expected number")},ǃJ.ǃzk=function(te){ǃJ.ǃiu(te)||ǃJ.ǃzE(te)},ǃJ.ǃOel=function(te,ne,ie){if(!ǃJ.ǃOeZ(te)||isNaN(te)||ne>te||ie","|"]),ne=new Set(["."]),ie=new Set(["."," "]),ae=200;ǃJ.ǃOrz=function(re){if(ǃJ.ǃJO(re),!re)return!1;if(re.length>=ae)return!1;let oe=[...re];return!oe.some(ye=>te.has(ye))&&!ne.has(oe[0])&&!ie.has(oe[oe.length-1])&&!ǃJ.ǃOrk(re)},ǃJ.ǃOrV=function(re){ǃJ.ǃJO(re),ǃJ.ǃJO(name);let oe=[...re];for(ǃJ.ǃPS(oe,ye=>te.has(ye));oe.length&&ie.has(oe[oe.length-1]);)oe.pop();for(;oe.length&&ne.has(oe[0]);)oe.shift();return oe.length>ae&&ǃJ.ǃXR(oe,ae),oe.join("")},ǃJ.ǃOrk=function(re){return ǃJ.ǃJO(re),ee.has(re.toLowerCase())}}{const ee=document,te=document.querySelector("base");let ne=te&&te.hasAttribute("href")?te.getAttribute("href"):"";ne&&(ne.startsWith("/")&&(ne=ne.substr(1)),!ne.endsWith("/")&&(ne+="/")),ǃJ.ǃgD=function(){const de=ee.location;return ǃJ.ǃy(de.origin+de.pathname)+ne},ǃJ.ǃy=function(de){if(ǃJ.ǃJO(de),!de.length)return de;const re=de.charAt(de.length-1);if("/"===re||"\\"===re)return de;let oe=de.lastIndexOf("/");return-1===oe&&(oe=de.lastIndexOf("\\")),-1===oe?"":de.substr(0,oe+1)},ǃJ.ǃOrK=function(de){if(ǃJ.ǃJO(de),!de.length)return de;const re=de.charAt(de.length-1);if("/"===re||"\\"===re)return"";let oe=de.lastIndexOf("/");return-1===oe&&(oe=de.lastIndexOf("\\")),-1===oe?de:de.substr(oe+1)},ǃJ.ǃDI=function(de){if(ǃJ.ǃk(de,DataTransfer),de.types)for(let re=0;rere?"":de.substr(re)},ǃJ.ǃri=function(de){let re=de.lastIndexOf(".");return 1>re?de:de.substr(0,re)},ǃJ.ǃCt=function(de,re){return ǃJ.ǃXq(de),new Promise(oe=>{window.setTimeout(oe,de,re)})},ǃJ.ǃOre=function(de){ǃJ.ǃ$V(de);try{de()}catch(re){ǃJ.ǃOD&&console.warn("Swallowed exception: ",re)}},ǃJ.ǃOrr=function(de){assert(!1,de||"Unknown error")},ǃJ.ǃOrI=function(){},ǃJ.ǃO$X=function(de,re){return ǃJ.ǃUV(de),ǃJ.ǃUV(re),"string"!=typeof de||"string"!=typeof re?!1:de.length===re.length&&(de===re||de.toLowerCase()===re.toLowerCase())},ǃJ.ǃXR=function(de,re){ǃJ.ǃCl(de),ǃJ.ǃXq(re),de.length=re},ǃJ.ǃXX=function(de){ǃJ.ǃQv(de);de&&0!==de.length&&ǃJ.ǃXR(de,0)},ǃJ.ǃDl=function(de){if(ǃJ.ǃDW(de),!!de){for(let re=0,oe;reye&&ǃJ.ǃOrN(de,re,oe)},ǃJ.ǃmx=function(de,re){ǃJ.ǃCl(de),ǃJ.ǃCl(re),ǃJ.ǃXX(de),ǃJ.ǃXn(de,re)},ǃJ.ǃXn=function(de,re){ǃJ.ǃCl(de),ǃJ.ǃCl(re),de.push(...re)},ǃJ.ǃOrE=function(de,re){ǃJ.ǃCl(de);let oe=de.indexOf(re);0<=oe&&de.splice(oe,1)},ǃJ.ǃsF=function(de,re){ǃJ.ǃCl(de),ǃJ.ǃCl(re);let oe=de.length;if(re.length!==oe)return!1;for(let ye=0;yeoe:5===re?de>=oe:(assert(!1,"Invalid comparison value: "+re),!1)},ǃJ.ǃOrQ=function(de){for(let re in ǃJ.ǃFt(de),de)if(de.hasOwnProperty(re))return!0;return!1},ǃJ.ǃOrj=function(de,re){return ǃJ.ǃbw(de,Promise),ǃJ.ǃ$V(re),de.length?new Promise((oe,ye)=>{const Oe=[];let le=0,Je=!1;for(let ue=0,pe=de.length;ue{Je||(Oe[ue]=he,++le,le===de.length?oe(Oe):re(le,de.length))}).catch(he=>{Je=!0,ye(he)})}):Promise.resolve([])};let ie=[];ǃJ.ǃOrF=function(de){ǃJ.ǃ$V(de),ie.push(de)},ǃJ.ǃOrW=function(){let de=0;for(let re of ie){let oe=re();ǃJ.ǃXq(oe),de+=oe}return Math.floor(de)}}{function te(Je){Je.clipboardData.setData("text/plain",de),Je.stopPropagation(),Je.preventDefault()}const _105="contenteditable";ǃJ.ǃO=function(){let ue=window.getImportDocument(),pe=window.c3_releaseMainImportDoc;return ue===document&&pe&&(ue=pe),ue},ǃJ.ǃOp=function(ue){ǃJ.ǃJO(ue),window.open(ue)},ǃJ.ǃHv=function(){return window.matchMedia("(display-mode: fullscreen)").matches?"fullscreen":window.matchMedia("(display-mode: standalone)").matches?"standalone":window.matchMedia("(display-mode: minimal-ui)").matches?"minimal-ui":"browser"},ǃJ.ǃOrZ=function(ue,pe){for(ǃJ.ǃOrg(ue),ǃJ.ǃJO(pe),pe=pe.toUpperCase();ue.parentNode;)if(ue=ue.parentNode,ue.tagName===pe)return ue;return null},ǃJ.ǃQU=function(ue,pe){for(ǃJ.ǃLF(ue),ǃJ.ǃCl(pe);ue;){for(const he of pe)if(ue.classList.contains(he))return ue;ue=ue.parentElement}return null},ǃJ.ǃjs=function(ue,pe){return ǃJ.ǃLF(ue),ǃJ.ǃCl(pe),!!ǃJ.ǃQU(ue,pe)},ǃJ.ǃQc=function(ue,pe){for(ǃJ.ǃLF(ue),ǃJ.ǃCl(pe);ue;){const he=ue.tagName;for(const ge of pe)if(ǃJ.ǃO$X(he,ge))return ue;ue=ue.parentElement}return null},ǃJ.ǃOrl=function(ue,pe){return ǃJ.ǃLF(ue),ǃJ.ǃCl(pe),!!ǃJ.ǃQc(ue,pe)},ǃJ.ǃFe=function(ue,pe){for(ǃJ.ǃLA(ue),ǃJ.ǃLA(pe);ue.parentNode;){if(ue.parentNode===pe)return!0;ue=ue.parentNode}return!1},ǃJ.ǃl_=function(ue){ǃJ.ǃLA(ue);const pe=ue.childNodes;for(let he=0,ge=pe.length,me;he{if(!ǃJ.ǃOeG.ǃOeY)return void ge("browser does not support downloading local content");let me=document.createElement("a");me.textContent=ue,me.href=pe,me.download=ue,document.body.appendChild(me),me.click(),document.body.removeChild(me),window.setTimeout(he,16)})},ǃJ.ǃpl=function(ue,pe){ǃJ.ǃJO(ue),ǃJ.ǃk(pe,Blob);let he=URL.createObjectURL(pe);return setTimeout(()=>URL.revokeObjectURL(he),6e4),ǃJ.ǃNz(ue,he)},ǃJ.ǃOrv=function(ue){performance.mark(ue+"-Start")},ǃJ.ǃOrP=function(ue){performance.mark(ue+"-End"),performance.measure(ue,ue+"-Start",ue+"-End")};let ie=document.createElement("input");ie.setAttribute("type","color"),ie.className="hiddenColorPicker",ie.style.opacity="0",ie.addEventListener("change",function(){ae&&(ae(ie.value),ae=null)}),window.C3_IsPopupWindow||document.body.appendChild(ie);let ae=null;ǃJ.ǃxU=function(ue){ǃJ.ǃJO(ue),ie.value=ue;let pe=new Promise(he=>{ae=he});return ie.click(),pe};let de="",re="";ǃJ.ǃHY=function(ue){ǃJ.ǃJO(ue),re=ue;let pe=document.createElement("textarea");pe.value="x",document.body.appendChild(pe),pe.select();let he;window.addEventListener("copy",te,!0),de=ue;try{he=document.execCommand("copy")}catch(ge){he=!1}return de="",window.removeEventListener("copy",te,!0),document.body.removeChild(pe),he},ǃJ.ǃWd=function(ue){ǃJ.ǃJO(ue),re=ue},ǃJ.ǃZf=function(){return re},ǃJ.ǃOrd=function(ue){ue.reverse(),window.setTimeout(()=>{"pending"===ue.playState&&ue.finish()},50)},ǃJ.ǃOrs=function(ue){ue.playbackRate*=-1,window.setTimeout(()=>{"pending"===ue.playState&&ue.finish()},50)};const oe=document.createElement,ye=document.appendChild,Oe=MessageChannel,le=MessagePort.prototype.postMessage;ǃJ.ǃOIO=function(ue){ǃJ.ǃFt(ue),ǃJ.ǃJO(ue.src),ǃJ.ǃJO(ue.ǃOIJ),ǃJ.ǃUg(ue.ǃOIy),ǃJ.ǃUV(ue.sandbox);const pe=oe.call(document,"iframe"),he=new Oe,ge=he.port1,me=he.port2;ue.ǃOIy&&(ge.onmessage=ue.ǃOIy);const ve=new Promise((be,Ue)=>{pe.addEventListener("load",()=>{pe.contentWindow.postMessage({type:"init"},ue.ǃOIJ,[me]),be({ǃOIf:pe,ǃOIS:function(Le,we){le.call(ge,Le,we)}})}),pe.addEventListener("error",Ee=>{Ue(Ee)})});return"string"==typeof ue.sandbox&&pe.setAttribute("sandbox",ue.sandbox),pe.style.display="none",pe.src=ue.src,ye.call(ue.parent||document.body,pe),ve}}{function ee(de){const re=[];for(let oe in de)de[oe]&&re.push(oe+"="+encodeURIComponent(de[oe]));return re.join("&")}function te(de,re,oe,ye,Oe,le,Je){return new Promise((ue,pe)=>{const he=new XMLHttpRequest;if(he.open(de,re),he.responseType="json"===Oe?"text":Oe,le&&he.overrideMimeType(le),oe)for(const[ge,me]of Object.entries(oe))he.setRequestHeader(ge,me);he.onload=()=>{if(!(300>he.status&&200<=he.status))pe({response:he.response,code:he.status,status:he.statusText});else if("json"===Oe)try{ue(JSON.parse(he.response))}catch(ge){pe(ge)}else ue(he.response)},Je&&(he.onprogress=Je),he.onerror=()=>pe({response:he.response,code:he.status,status:he.statusText}),he.send(ye)})}function ne(de,re,oe,ye,Oe){const le={method:de};return ye&&(le.body=ye),oe&&(ǃOIn.headers=oe),fetch(re,le).then(Je=>{return Je.ok?Je[Oe]():Je.text().then(ue=>Promise.reject({response:ue,code:Je.status,status:Je.statusText}))})}const ie=new Set(["text","blob","json","arraybuffer"]),ae=new Set(["text","blob","json","arraybuffer","document"]);ǃJ.ǃOej=function(re){re=ǃJ.ǃLX(re)?{url:re}:re,ǃJ.ǃFt(re),ǃJ.ǃJO(re.url),ǃJ.ǃUV(re.method),ǃJ.ǃBA(re.arguments),ǃJ.ǃBA(re.ǃOIX),ǃJ.ǃUV(re.response),ǃJ.ǃBA(re.headers),ǃJ.ǃUV(re.encode),ǃJ.ǃUV(re.ǃOIR),ǃJ.ǃUg(re.onprogress);let oe=re.url,ye=re.data;const Oe=re.ǃOIR,le=re.onprogress,Je=re.headers,ue=re.method||"GET",pe=ee(re.arguments)||"",he=re.response||"text";pe&&(oe+=oe.includes("?")?"&":"?",oe+=pe),ye&&("json"===re.encode?ye=JSON.stringify(re.data):"url"===re.encode&&(ye=ee(re.data)));const ge=ǃJ.ǃOeG.ǃOej&&ie.has(he),me=ae.has(he);if(ge&&!le)return ne(ue,oe,Je,ye,he);if(me)return te(ue,oe,Je,ye,he,Oe,le);throw new TypeError(`Invalid responseType requested ${he}`)},ǃJ.ǃOIg=function(re){return ǃJ.ǃJO(re),ǃJ.ǃOej({url:re,mimeType:"text/plain; charset=utf-8"})},ǃJ.ǃOIH=function(re,oe){return ǃJ.ǃJO(re),ǃJ.ǃUV(oe),ǃJ.ǃOej({url:re,response:"document",ǃOIR:oe})},ǃJ.ǃgT=function(re){return ǃJ.ǃJO(re),ǃJ.ǃOej({url:re,response:"json"})},ǃJ.ǃ$Z=function(re,oe){return ǃJ.ǃJO(re),ǃJ.ǃUg(oe),ǃJ.ǃOej({url:re,onprogress:oe,response:"blob"})},ǃJ.ǃUY=function(re,oe=!0){return ǃJ.ǃJO(re),window.addImport(re,oe)},ǃJ.ǃOIU=function(re){return ǃJ.ǃJO(re),new Promise((oe,ye)=>{let Oe=document.createElement("link");Oe.onload=function(){oe(Oe)},Oe.onerror=function(Je){ye(Je)},Oe.rel="stylesheet",Oe.href=re,document.head.appendChild(Oe)})},ǃJ.ǃOIC=function(re){return ǃJ.ǃJO(re),new Promise((oe,ye)=>{let Oe=document.createElement("script");Oe.onload=function(){oe(Oe)},Oe.onerror=function(Je){ye(Je)},Oe.src=re,document.head.appendChild(Oe)})},ǃJ.ǃ_Z=function(re){return ǃJ.ǃJO(re),new Promise((oe,ye)=>{let Oe=new Image;Oe.onload=function(){oe(Oe)},Oe.onerror=function(Je){ye(Je)},Oe.src=re})}}{function ee(){Oe||(Oe=new ǃJ.ǃOJE(te,5)),Oe.ǃHH();oe||(oe=document.createElement(_107),oe.width=32,oe.height=32,ye=oe.getContext("2d"))}function te(){oe.width=32,oe.height=32}function ne(le){ǃJ.ǃOrC(le),ee(),oe.width=le.width,oe.height=le.height,ye.drawImage(le,0,0)}function ie(le,Je,ue,pe){ǃJ.ǃOrC(le),ǃJ.ǃXq(Je),assert(1<=Je,"step count must be greater or equal to 1");let he,ge;0==Je%2?(he=pe.canvas,ge=pe):(he=ue.canvas,ge=ue);const me=0.5*le.width,ve=0.5*le.height;return he.width=me,he.height=ve,ge.scale(0.5,0.5),ge.drawImage(le,0,0),he}function ae(le,Je,ue){ǃJ.ǃOrC(le),ǃJ.ǃXq(Je),ǃJ.ǃXq(ue);let pe=le;const he=pe.width,ge=pe.height;let me=null,ve=null,be=1,Ue=he>ge?he:ge;for(const Ee=he>ge?Je:ue;Ue>Ee;)Ue*=0.5,1==be?me=document.createElement(_107).getContext("2d"):2==be&&(ve=document.createElement(_107).getContext("2d")),pe=ie(pe,be,me,ve),be++;return pe}function de(le,Je,ue,pe,he,ge,me){let ve=pe*Je+ue;for(let Ue=ve;UeJSON.parse(Je))},ǃJ.ǃOIu=function(Je){if(ǃJ.ǃJO(Je),"data:"!==Je.substr(0,5))throw new URIError("expected data: uri");let ue=Je.indexOf(",");if(0>ue)throw new URIError("expected comma in data: uri");let pe=Je.substring(5,ue),he=Je.substring(ue+1),ge=pe.split(";"),me=ge[0]||"",ve=ge[1],be=ge[2],Ue;return Ue="base64"===ve||"base64"===be?atob(he):decodeURIComponent(he),{ǃOI_:me,data:Ue}},ǃJ.ǃOIm=function(Je){ǃJ.ǃJO(Je);let ue=ǃJ.ǃOIu(Je);return ǃJ.ǃOIb(ue.data,ue.ǃOI_)},ǃJ.ǃOnG=function(Je){return ǃJ.ǃk(Je,Blob),new Promise((ue,pe)=>{let he=new FileReader;he.onload=ge=>ue(ge.target.result),he.onerror=ge=>pe(ge),he.readAsDataURL(Je)})},ǃJ.ǃOIb=function(Je,ue){ǃJ.ǃJO(Je),ǃJ.ǃUV(ue);let pe=Je.length,he=pe>>2,ge=new Uint8Array(pe),me=new Uint32Array(ge.buffer,0,he),ve,be;for(ve=0,be=0;ve{let he=new FileReader;he.onload=ge=>ue(ge.target.result),he.onerror=ge=>pe(ge),he.readAsArrayBuffer(Je)})},ǃJ.ǃOIt=function(Je,ue,pe){return ǃJ.ǃLA(Je,_107),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),"number"!=typeof pe&&(pe=1),ue=ue||_108,pe=ǃJ.ǃRf(pe,0,1),ǃJ.ǃOIm(Je.toDataURL(ue,pe))},ǃJ.ǃpA=function(Je,ue,pe){return ǃJ.ǃLA(Je,_107),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),"number"!=typeof pe&&(pe=1),ue=ue||_108,pe=ǃJ.ǃRf(pe,0,1),ǃJ.ǃOeG.ǃpA?new Promise(he=>{Je.toBlob(he,ue,pe)}):ǃJ.ǃgi(()=>ǃJ.ǃOIt(Je,ue,pe))},ǃJ.ǃOI$=function(le,Je,ue,pe,he){ǃJ.ǃLA(le,_107);let ge=document.createElement(_107);if(ge.width=le.width,ge.height=le.height,ǃJ.ǃLR(Je)&&ǃJ.ǃLR(ue)&&ǃJ.ǃLR(pe)&&ǃJ.ǃLR(he)){let me=pe-Je,ve=he-ue;ge.getContext("2d").drawImage(le,Je,ue,me,ve,0,0,me,ve)}else ge.getContext("2d").drawImage(le,0,0);return ge};let oe=null,ye=null,Oe=null;ǃJ.ǃOrF(()=>{return oe?4*(oe.width*oe.height):0});ǃJ.ǃOIq=function(Je){ǃJ.ǃk(Je,Blob);let ue=URL.createObjectURL(Je);return ǃJ.ǃ_Z(ue).then(pe=>{return URL.revokeObjectURL(ue),pe}).catch(pe=>{throw URL.revokeObjectURL(ue),pe})},ǃJ.ǃ$T=function(Je,ue=!1){return ǃJ.ǃk(Je,Blob),ue=!!ue,ǃJ.ǃOeG.ImageBitmap&&!ue?createImageBitmap(Je):ǃJ.ǃOIq(Je)},ǃJ.ǃUG=function(Je){return ǃJ.ǃk(Je,Blob),new Promise((ue,pe)=>{let he=new FileReader;he.onload=ge=>ue(ge.target.result),he.onerror=ge=>pe(ge),he.readAsText(Je)})},ǃJ.ǃOIM=function(Je){return ǃJ.ǃk(Je,Blob),ǃJ.ǃUG(Je).then(ǃJ.ǃzp)},ǃJ.ǃzU=function(Je,ue){let pe=ue?JSON.stringify(Je,null,4):JSON.stringify(Je);return new Blob([pe],{type:"application/json"})};ǃJ.ǃOIB=function(Je){return ǃJ.ǃk(Je,ImageBitmap),ne(Je),ye.getImageData(0,0,Je.width,Je.height)},ǃJ.ǃOIL=function(Je,ue,pe){return ǃJ.ǃOrC(Je),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),ne(Je),ǃJ.ǃpA(oe,ue,pe)},ǃJ.ǃOIz=function(Je,ue,pe){return ǃJ.ǃOrC(Je),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),ne(Je),oe.toDataURL(ue||_108,pe)},ǃJ.ǃOIk=function(Je,ue=!1){return ǃJ.ǃk(Je,Blob),ue=!!ue,ǃJ.ǃOeG.ImageBitmap&&!ue?createImageBitmap(Je).then(ǃJ.ǃOIB):ǃJ.ǃOIq(Je).then(pe=>ǃJ.ǃOIV(pe))},ǃJ.ǃOIK=function(Je){return ǃJ.ǃk(Je,Image),ne(Je),ye.getImageData(0,0,Je.width,Je.height)},ǃJ.ǃOIV=function(Je){return ǃJ.ǃOeG.ImageBitmap?(ǃJ.ǃKw(Je,Image,ImageBitmap),createImageBitmap(Je).then(ǃJ.ǃOIB)):(ǃJ.ǃk(Je,Image),ǃJ.ǃgi(()=>ǃJ.ǃOIK(Je)))},ǃJ.ǃOIo=function(Je,ue,pe){return ǃJ.ǃk(Je,ImageData),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),ee(),oe.width=Je.width,oe.height=Je.height,ye.putImageData(Je,0,0),ǃJ.ǃOIt(oe,ue,pe)},ǃJ.ǃOIe=function(Je,ue,pe){return ǃJ.ǃk(Je,ImageData),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),ǃJ.ǃOeG.ǃpA?ǃJ.ǃOeG.ImageBitmap?createImageBitmap(Je).then(he=>ǃJ.ǃOIL(he,ue,pe)):ǃJ.ǃgi(()=>{return ee(),oe.width=Je.width,oe.height=Je.height,ye.putImageData(Je,0,0),ǃJ.ǃpA(oe,ue,pe)}):ǃJ.ǃgi(()=>ǃJ.ǃOIo(Je,ue,pe))},ǃJ.ǃOIr=function(Je,ue,pe){return ǃJ.ǃk(Je,ImageData),ǃJ.ǃUV(ue),ǃJ.ǃaB(pe),"number"!=typeof pe&&(pe=1),ue=ue||_108,pe=ǃJ.ǃRf(pe,0,1),ee(),oe.width=Je.width,oe.height=Je.height,ye.putImageData(Je,0,0),oe.toDataURL(ue,pe)},ǃJ.ǃOII=function(Je,ue,pe,he="columns"){if(ǃJ.ǃOrC(Je),ǃJ.ǃXq(ue),ǃJ.ǃXq(pe),ǃJ.ǃUV(he),"columns"!=he&&"rows"!=he)throw new Error("unexpected slicing mode. Supported values are 'columns' and 'rows'.");ee(),oe.width=Je.width,oe.height=Je.height,ye.drawImage(Je,0,0);let ge=Math.floor(Je.width/ue),me=Math.floor(Je.height/pe),ve=[],be=0,Ue=0;if("columns"===he)for(be=0;beue||0>pe)throw new Error("invalid target size");const ge=he?he:document.createElement(_107).getContext("2d");if(ge.canvas.width=ue,ge.canvas.height=pe,0===ue||0===pe)return ge.canvas;if(Je.width>ue||Je.height>pe){const me=ae(Je,ue,pe);ge.drawImage(me,0,0,ue,pe)}else ge.drawImage(Je,0,0,ue,pe);return ge.canvas},ǃJ.ǃOIG=function(Je,ue,pe,he,ge,me,ve,be,Ue,Ee){let we=be*he+ve;for(let ke=we,Se=me*ue+ge;keue||ue>=me||0>pe||pe>=ve||ue+he>me||pe+ge>ve)throw new Error(_109);let be=new ImageData(he,ge),Ue=new Uint32Array(Je.data.buffer),Ee=new Uint32Array(be.data.buffer);return ǃJ.ǃOIG(Ue,me,Ee,he,ue,pe,0,0,he,ge),be},ǃJ.ǃOIi=function(Je,ue,pe,he){ǃJ.ǃk(Je,ImageData),ǃJ.ǃk(ue,ImageData),ǃJ.ǃXq(pe),ǃJ.ǃXq(he),pe|=0,he|=0;let ge=0|Je.width,me=0|Je.height,ve=0|ue.width,be=0|ue.height;if(0>pe||0>he||pe>ge-ve||he>me-be)throw new Error(_109);let Ue=new Uint32Array(ue.data.buffer),Ee=new Uint32Array(Je.data.buffer);ǃJ.ǃOIG(Ue,ve,Ee,ge,0,0,pe,he,ve,be)};ǃJ.ǃOIa=function(Je,ue,pe,he,ge){ǃJ.ǃk(Je,ImageData),ǃJ.ǃXq(ue),ǃJ.ǃXq(pe),ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ue|=0,pe|=0,he|=0,ge|=0;let me=0|Je.width,ve=0|Je.height;if(0>ue||ue>=me||0>pe||pe>=ve||ue+he>me||pe+ge>ve)throw new Error(_109);let be=new Uint32Array(Je.data.buffer);de(be,me,ue,pe,he,ge,0)};ǃJ.ǃOIp=function(Je,ue,pe,he,ge,me,ve,be,Ue,Ee,Le){if(ǃJ.ǃk(Je,Uint32Array),ǃJ.ǃXq(ue),ǃJ.ǃXq(pe),ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(me),ǃJ.ǃXq(ve),ǃJ.ǃXq(be),ǃJ.ǃXq(Ue),ǃJ.ǃXq(Ee),ǃJ.ǃXq(Le),me>ue||Ee>ue||ve>pe||Le>pe)throw new Error("rectangle larger than destination");if(me>Ee||ve>Le)throw new Error("inner size larger than outer size");if(hebe+Ee||ge+ve>Ue+Le)throw new Error("inner rectange not inside outer rectangle");if(me!==Ee||ve!==Le){let we=he+me,xe=we-1,ke=be+Ee,Se=ge+ve,Xe=Se-1,Ne=Ue+Le,Re=re(Je,ue,he,ge);de(Je,ue,be,Ue,he-be,ge-Ue,Re);for(let Ce=Ue;Cehe&&(he=Je.byteLength);let ge=new Uint8Array(Je,pe,he);return ǃJ.ǃOIY(ge,ue)},ǃJ.ǃOIY=function(Je,ue){ǃJ.ǃk(Je.buffer,ArrayBuffer),ǃJ.ǃUV(ue);let pe=new TextDecoder(ue||"utf-8");return pe.decode(Je)},ǃJ.ǃOIQ=function(Je){ǃJ.ǃJO(Je);let ue=new TextEncoder("utf-8");return ue.encode(Je).buffer},ǃJ.ǃOIj=function(Je,ue,pe){ǃJ.ǃk(Je,ArrayBuffer),ǃJ.ǃ$V(ue),ǃJ.ǃzE(pe);let he=0,ge=Je.byteLength,me=[];for(;heǃJ.ǃOzM(he))),pe=[...ue].join(",");console.warn(`An object derived from DefendedBase was not protected with debugDefend(). This will disable some checks. See the coding guidelines! Possible affected class names: ${pe}`),de.clear(),re.clear()}}function ie(ue){let pe=new Set;for(let he in ue)pe.add(he);return pe}function ae(ue,pe){let he=ie(pe),ge=Je.get(ue);if(ge){let me=[];for(let ve of ge.values())he.has(ve)?he.delete(ve):me.push(ve);ǃJ.ǃXn(me,[...he]),me.length&&console.warn(`[Defence] '${ǃJ.ǃOzM(ue)}' constructor creates inconsistent properties: ${me.join(", ")}`)}else Je.set(ue,he)}const _110="undefined";ǃJ.ǃOee=function(){return new Error().stack},ǃJ.ǃOIF=function(){debugger},ǃJ.cast=function(pe,he){return pe&&pe instanceof he?pe:null},ǃJ.ǃOzM=function(pe){return typeof pe===_110?_110:null===pe?"null":"boolean"==typeof pe?"":ǃJ.ǃOeZ(pe)?"":ǃJ.ǃLX(pe)?"":ǃJ.ǃLn(pe)?"":"symbol"==typeof pe?"<"+pe.toString()+">":ǃJ.ǃOes(pe)?pe.name&&"Function"!==pe.name?pe.name:"":"object"==typeof pe?pe.constructor&&pe.constructor.name&&"Object"!==pe.constructor.name?pe.constructor.name:"":""},ǃJ.ǃOIW=function(pe){return null===pe?"null":Array.isArray(pe)?"array":typeof pe};let de=new Map,re=new Map,oe=new WeakMap,ye=new WeakMap;ǃJ.ǃOIZ={};const Oe=new Set(["then","splice"]);ǃJ.ǃOIZ.get=function(pe,he){return he in pe||"symbol"==typeof he||Oe.has(he)||te(`Accessed missing property '${he}' from defended object '${ǃJ.ǃOzM(pe)}', returning undefined`),ye.has(pe)&&"symbol"!=typeof he&&!Oe.has(he)&&te(`Accessed property '${he}' on a released object '${ǃJ.ǃOzM(pe)}'\nObject was originally released at: ${ye.get(pe)})\nCall stack at access: `),pe[he]},ǃJ.ǃOIZ.set=function(pe,he,ge){return he in pe||de.has(pe)||te(`Set non-existent property '${he}' to '${ge}' on defended object '${ǃJ.ǃOzM(pe)}'`),ee(pe[he],ge)||de.has(pe)||te(`Set '${ǃJ.ǃOIW(pe[he])}' property '${he}' to type '${ǃJ.ǃOIW(ge)}' on defended object '${ǃJ.ǃOzM(pe)}'`),ye.has(pe)&&te(`Set property '${he}' on a released object '${ǃJ.ǃOzM(pe)}'\nObject was originally released at: ${ye.get(pe)})\nCall stack at access: `),pe[he]=ge,!0},ǃJ.ǃOIZ.ǃOIl=function(pe,he){throw new ReferenceError(`Cannot delete property '${he}' from defended object '${ǃJ.ǃOzM(pe)}'`)},ǃJ.ǃOIZ.defineProperty=function(pe,he){throw new ReferenceError(`Cannot define property '${he}' on defended object '${ǃJ.ǃOzM(pe)}'`)},ǃJ.ǃOIZ.enumerate=function(pe){throw new ReferenceError(`Cannot enumerate defended object '${ǃJ.ǃOzM(pe)}'`)};let le=-1;ǃJ.ǃq=class{constructor(){if(ǃJ.ǃOoa&&ǃJ.ǃOeG.ǃOew){let pe=new.target,he=Object.create(pe.prototype),ge=new Proxy(he,ǃJ.ǃOIZ);return de.set(he,ge),re.set(ge,he),oe.set(ge,he),-1==le&&(le=requestAnimationFrame(ne)),ge}}},ǃJ.ǃOIx=function(pe){if(ǃJ.ǃFt(pe),ǃJ.ǃOoa&&ǃJ.ǃOeG.ǃOew&&pe instanceof ǃJ.ǃq){if(!re.has(pe))return pe;let he=re.get(pe);return re.delete(pe),de.delete(he),pe}return ǃJ.ǃOD?Object.seal(pe):pe},ǃJ.ǃb=function(pe,...he){ǃJ.ǃ$V(pe);let ge;try{ge=new pe(...he)}catch(me){throw re.clear(),de.clear(),me}return ǃJ.ǃOoa&&ae(pe,ge),ǃJ.ǃOIx(ge)},ǃJ.ǃyY=function(pe){let he=oe.get(pe);he&&ye.set(he,ǃJ.ǃOee())},ǃJ.ǃ_O=function(ue){let pe=oe.get(ue);return!!pe&&!!ye.get(pe)};let Je=new Map}{function ee(de){return 0>de?-de:de}const te=2*Math.PI,ne=Math.PI/180,ie=180/Math.PI;ǃJ.wrap=function(re,oe,ye){if(re=Math.floor(re),oe=Math.floor(oe),ye=Math.floor(ye),reye?ye:re},ǃJ.ǃOgP=function(re){return re%=te,0>re&&(re+=te),re},ǃJ.ǃSK=function(re){return re*ne},ǃJ.ǃOOb=function(re){return re*ie},ǃJ.ǃ_i=function(re,oe,ye,Oe){let le=ye-re,Je=Oe-oe;return Math.sqrt(le*le+Je*Je)},ǃJ.ǃmf=function(re,oe,ye,Oe){return Math.atan2(Oe-oe,ye-re)},ǃJ.ǃmS=function(re,oe){if(re===oe)return 0;let ye=Math.sin(re),Oe=Math.cos(re),le=Math.sin(oe),Je=Math.cos(oe),ue=ye*le+Oe*Je;return 1<=ue?0:-1>=ue?Math.PI:Math.acos(ue)},ǃJ.ǃOuI=function(re,oe,ye){let Oe=Math.sin(re),le=Math.cos(re),Je=Math.sin(oe),ue=Math.cos(oe);return Math.acos(Oe*Je+le*ue)>ye?0=Oe*le-ye*Je},ǃJ.ǃOur=function(re,oe,ye){let Oe=ǃJ.ǃmS(re,oe);return ǃJ.ǃOIh(oe,re)?ǃJ.ǃOgP(re+Oe*ye):ǃJ.ǃOgP(re-Oe*ye)},ǃJ.ǃORI=function(re,oe,ye){return re+ye*(oe-re)},ǃJ.ǃOuV=function(re,oe,ye){return re===oe?0:(ye-re)/(oe-re)},ǃJ.ǃRc=function(re,oe,ye,Oe,le){return ǃJ.ǃORI(Oe,le,ǃJ.ǃOuV(re,oe,ye))},ǃJ.ǃOuK=function(re,oe,ye,Oe){return ǃJ.ǃORI(ǃJ.ǃORI(re,oe,Oe),ǃJ.ǃORI(oe,ye,Oe),Oe)},ǃJ.ǃOuo=function(re,oe,ye,Oe,le){return ǃJ.ǃORI(ǃJ.ǃOuK(re,oe,ye,le),ǃJ.ǃOuK(oe,ye,Oe,le),le)},ǃJ.ǃOue=function(re,oe,ye){return(re+oe+(re-oe)*Math.cos(ye*Math.PI))/2},ǃJ.ǃOIv=function(re){return 0oe;oe<<=1)re|=re>>oe;return re+1},ǃJ.ǃOSn=function(re,oe){return Math.round(re*oe)/oe},ǃJ.ǃOIP=function(re){return Math.round(1e6*re)/1e6},ǃJ.toFixed=function(re,oe){ǃJ.ǃzE(re),ǃJ.ǃXq(oe);let ye=re.toFixed(oe),Oe=ye.length-1;for(;0<=Oe&&"0"===ye.charAt(Oe);--Oe);return 0<=Oe&&"."===ye.charAt(Oe)&&--Oe,0>Oe?ye:ye.substr(0,Oe+1)},ǃJ.ǃOuE=function(re,oe,ye){return ǃJ.ǃRf(re,0,255)|ǃJ.ǃRf(oe,0,255)<<8|ǃJ.ǃRf(ye,0,255)<<16},ǃJ.ǃOId=function(re){return 255&re},ǃJ.ǃOIs=function(re){return(65280&re)>>8},ǃJ.ǃONO=function(re){return(16711680&re)>>16},ǃJ.ǃONJ=function(re,oe){for(ǃJ.ǃXq(re),ǃJ.ǃXq(oe),re=Math.floor(re),oe=Math.floor(oe);0!==oe;){let ye=oe;oe=re%oe,re=ye}return re};const ae=[[3,2],[4,3],[5,4],[5,3],[6,5],[14,9],[16,9],[16,10],[21,9]];ǃJ.ǃdn=function(re,oe){if(ǃJ.ǃXq(re),ǃJ.ǃXq(oe),re=Math.floor(re),oe=Math.floor(oe),re===oe)return[1,1];for(let Oe of ae){let le=re/Oe[0]*Oe[1];if(1>Math.abs(oe-le))return Oe.slice(0);if(le=re/Oe[1]*Oe[0],1>Math.abs(oe-le))return[Oe[1],Oe[0]]}let ye=ǃJ.ǃONJ(re,oe);return[re/ye,oe/ye]};ǃJ.ǃONy=function(re,oe,ye,Oe,le,Je,ue,pe){let he=0,ge=0,me=0,ve=0,be=0,Ue=0,Ee=0,Le=0;if(rebe)return!1;if(oeEe)return!1;let we=le-re+ue-ye,xe=Je-oe+pe-Oe,ke=ye-re,Se=Oe-oe,Xe=ue-le,Ne=pe-Je,Re=ee(Se*Xe-Ne*ke);if(ee(Xe*xe-Ne*we)>Re)return!1;return ee(ke*xe-Se*we)<=Re},ǃJ.ǃONf=function(re,oe,ye,Oe,le,Je,ue,pe,he,ge,me,ve){let be=0,Ue=0,Ee=0,Le=0;if(hebe)return!1;if(geEe)return!1;let we=he-re+me-ye,xe=ge-oe+ve-Oe,ke=ye-re,Se=Oe-oe,Xe=me-he,Ne=ve-ge,Re=ee(Se*Xe-Ne*ke);if(ee(Xe*xe-Ne*we)>Re)return!1;return ee(ke*xe-Se*we)<=Re},ǃJ.ǃONS=function(re,oe,ye,Oe,le){let Je=0,ue=0,pe=0,he=0;return rere&&(re+=1),1re.length)return!1;let oe=parseInt(re[0].trim(),10)/255,ye=parseInt(re[1].trim(),10)/255,Oe=parseInt(re[2].trim(),10)/255;return isFinite(oe)&&(this.ǃONX[0]=oe),isFinite(ye)&&(this.ǃONX[1]=ye),isFinite(Oe)&&(this.ǃONX[2]=Oe),this.ǃRf(),!0}ǃONz(de){if(typeof de!==_111)return!1;de=de.replace(/^rgb\(|\)|%/,"");let re=de.split(",");if(3>re.length)return!1;let oe=parseInt(re[0].trim(),10)/100,ye=parseInt(re[1].trim(),10)/100,Oe=parseInt(re[2].trim(),10)/100;return isFinite(oe)&&(this.ǃONX[0]=oe),isFinite(ye)&&(this.ǃONX[1]=ye),isFinite(Oe)&&(this.ǃONX[2]=Oe),this.ǃRf(),!0}ǃONk(de){if(typeof de!==_111)return!1;de=de.replace(/^rgba\(|\)|%/,"");let re=de.split(",");if(4>re.length)return!1;let oe=parseInt(re[0].trim(),10)/255,ye=parseInt(re[1].trim(),10)/255,Oe=parseInt(re[2].trim(),10)/255,le=parseFloat(re[3].trim());return isFinite(oe)&&(this.ǃONX[0]=oe),isFinite(ye)&&(this.ǃONX[1]=ye),isFinite(Oe)&&(this.ǃONX[2]=Oe),isFinite(le)&&(this.ǃONX[3]=le),this.ǃRf(),!0}ǃONV(de){if(typeof de!==_111)return!1;de=de.replace(/^rgba\(|\)|%/,"");let re=de.split(",");if(4>re.length)return!1;let oe=parseInt(re[0].trim(),10)/100,ye=parseInt(re[1].trim(),10)/100,Oe=parseInt(re[2].trim(),10)/100,le=parseFloat(re[3].trim());return isFinite(oe)&&(this.ǃONX[0]=oe),isFinite(ye)&&(this.ǃONX[1]=ye),isFinite(Oe)&&(this.ǃONX[2]=Oe),isFinite(le)&&(this.ǃONX[3]=le),this.ǃRf(),!0}ǃOnx(de){if(typeof de!==_111)return!1;if(de=de.replace(/\s+/,""),de.includes(",")){if(de.match(/^rgb\(/))return de.includes("%")?this.ǃONz(de):this.ǃONL(de);if(de.match(/^rgba\(/))return de.includes("%")?this.ǃONV(de):this.ǃONk(de);if(de.match(/^hsl|hsla\(/))return this.ǃONK(de);let re=de.split(",");return de.includes("%")?3===re.length?this.ǃONz(de):4===re.length&&this.ǃONV(de):3===re.length?this.ǃONL(de):4===re.length&&this.ǃONk(de)}return this.ǃxC(de)}toJSON(){return[this.r,this.ǃONo,this.b,this.a]}ǃONe(de,re,oe,ye){let Oe,le,Je;if(ǃJ.ǃOel(de,0,360),ǃJ.ǃOel(re,0,100),ǃJ.ǃOel(oe,0,100),ǃJ.ǃOel(ye,0,1),de/=360,re/=100,oe/=100,0===re)Oe=le=Je=oe;else{const ue=0.5>oe?oe*(1+re):oe+re-oe*re,pe=2*oe-ue;Oe=te(pe,ue,de+1/3),le=te(pe,ue,de),Je=te(pe,ue,de-1/3)}return this.ǃONX[0]=ǃJ.ǃRf(Oe,0,1),this.ǃONX[1]=ǃJ.ǃRf(le,0,1),this.ǃONX[2]=ǃJ.ǃRf(Je,0,1),this.ǃONX[3]=ǃJ.ǃRf(ye,0,1),this}ǃONK(de){const re=de.replace(/ |hsl|hsla|\(|\)|;/gi,""),oe=ne.exec(re),ye=ie.exec(re);return oe&&4===oe.length?(this.ǃONe(+oe[1],+oe[2],+oe[3],1),!0):ye&&5===ye.length&&(this.ǃONe(+oe[1],+oe[2],+oe[3],+oe[4]),!0)}ǃONr(){const de=this.ǃONX[0],re=this.ǃONX[1],oe=this.ǃONX[2],ye=this.ǃONX[3],Oe=Math.max(de,re,oe),le=Math.min(de,re,oe);let Je,ue,pe=(Oe+le)/2;if(Oe==le)Je=ue=0;else{const he=Oe-le;ue=0.5de.length||(this.r=de[0],this.ǃONo=de[1],this.b=de[2],this.a=4<=de.length?de[3]:1)}set r(de){this.ǃONX[0]=ǃJ.ǃRf(de,0,1)}get r(){return this.ǃONX[0]}set ǃONo(de){this.ǃONX[1]=ǃJ.ǃRf(de,0,1)}get ǃONo(){return this.ǃONX[1]}set b(de){this.ǃONX[2]=ǃJ.ǃRf(de,0,1)}get b(){return this.ǃONX[2]}set a(de){this.ǃONX[3]=ǃJ.ǃRf(de,0,1)}get a(){return this.ǃONX[3]}},ǃJ.ǃSR.ǃONN=Object.freeze(ǃJ.ǃb(ǃJ.ǃSR,1,1,1,1)),ǃJ.ǃSR.ǃONG=Object.freeze(ǃJ.ǃb(ǃJ.ǃSR,0,0,0,1)),ǃJ.ǃSR.ǃONE=Object.freeze(ǃJ.ǃb(ǃJ.ǃSR,0,0,0,0))}"use strict",ǃJ.Rect=class{constructor(te,ne,ie,ae){this.ǃONT=new Float64Array(4),te instanceof ǃJ.Rect?this.ǃRV(te):this.set(te||0,ne||0,ie||0,ae||0)}set(te,ne,ie,ae){let de=this.ǃONT;de[0]=te,de[1]=ne,de[2]=ie,de[3]=ae}ǃRV(te){this.ǃONT.set(te.ǃONT)}clone(){let te=this.ǃONT;return new ǃJ.Rect(te[0],te[1],te[2],te[3])}static ǃOND(te,ne){ǃJ.ǃk(te,ǃJ.Rect),ǃJ.ǃk(ne,ǃJ.Rect);let ie=te.ǃONT,ae=ne.ǃONT,de=new ǃJ.Rect;return de.ǃ_B(ie[0]ae[2]?ie[2]:ae[2]),de.ǃfN(ie[3]>ae[3]?ie[3]:ae[3]),de}static ǃls(te){return ǃJ.ǃFt(te),new ǃJ.Rect(te.left,te.top,te.right,te.bottom)}ǃtE(te){let ne=this.ǃONT,ie=te.ǃONT;return ne[0]===ie[0]&&ne[1]===ie[1]&&ne[2]===ie[2]&&ne[3]===ie[3]}ǃ_B(te){this.ǃONT[0]=te}ǃRm(){return this.ǃONT[0]}ǃ_L(te){this.ǃONT[1]=te}ǃRo(){return this.ǃONT[1]}ǃfr(te){this.ǃONT[2]=te}ǃRb(){return this.ǃONT[2]}ǃfN(te){this.ǃONT[3]=te}ǃRe(){return this.ǃONT[3]}ǃsT(){return this.ǃONT}width(){return this.ǃONT[2]-this.ǃONT[0]}height(){return this.ǃONT[3]-this.ǃONT[1]}ǃSt(){let te=this.ǃONT;return te[0]+(te[2]-te[0])/2}ǃS$(){let te=this.ǃONT;return te[1]+(te[3]-te[1])/2}offset(te,ne){let ie=this.ǃONT;ie[0]+=te,ie[1]+=ne,ie[2]+=te,ie[3]+=ne}offsetLeft(te){this.ǃONT[0]+=te}offsetTop(te){this.ǃONT[1]+=te}ǃRr(te){this.ǃONT[2]+=te}ǃONi(te){this.ǃONT[3]+=te}ǃONa(te){if(ǃJ.ǃJO(te),"x"!==te&&"y"!==te)throw new Error("invalid axis. Use 'x' or 'y'");let ne=this.ǃONT;if("x"===te)ne[3]=ne[1]ie&&(de[2]=ie),de[3]>ae&&(de[3]=ae)}ǃOXc(te,ne,ie,ae){let de=this.ǃONT;de[0]ne&&(de[1]=ne),de[2]>ie&&(de[2]=ie),de[3]te[2]&&this.ǃONY(),te[1]>te[3]&&this.ǃOXH()}ǃX$(te){let ne=this.ǃONT,ie=te.ǃONT;return!(ie[2]ne[2]||ie[1]>ne[3])}ǃONj(te,ne,ie){let ae=this.ǃONT,de=te.ǃONT;return!(de[2]+neae[2]||de[1]+ie>ae[3])}ǃORA(te,ne){let ie=this.ǃONT;return te>=ie[0]&&te<=ie[2]&&ne>=ie[1]&&ne<=ie[3]}ǃOnq(te){let ne=this.ǃONT,ie=te.ǃONT;return ie[0]>=ne[0]&&ie[1]>=ne[1]&&ie[2]<=ne[2]&&ie[3]<=ne[3]}ǃOgu(te){let ne=this.ǃONT,ie=te.ǃONT;ie[0]ne[2]&&(ne[2]=ie[2]),ie[3]>ne[3]&&(ne[3]=ie[3])}ǃtY(te){let ne=this.ǃONT,ie=te.ǃONT;ne[0]=ǃJ.ǃORI(ie[0],ie[2],ne[0]),ne[1]=ǃJ.ǃORI(ie[1],ie[3],ne[1]),ne[2]=ǃJ.ǃORI(ie[0],ie[2],ne[2]),ne[3]=ǃJ.ǃORI(ie[1],ie[3],ne[3])}},"use strict";{function ee(ie,ae,de,re){iere?ae:re):(te=iede?ae:de):dere?ie:re):(te=aede?ie:de)}let te=0,ne=0;ǃJ.ǃfw=class{constructor(ae,de,re,oe,ye,Oe,le,Je){this.ǃONT=new Float64Array(8),ae instanceof ǃJ.ǃfw?this.ǃRV(ae):this.set(ae||0,de||0,re||0,oe||0,ye||0,Oe||0,le||0,Je||0)}set(ae,de,re,oe,ye,Oe,le,Je){let ue=this.ǃONT;ue[0]=ae,ue[1]=de,ue[2]=re,ue[3]=oe,ue[4]=ye,ue[5]=Oe,ue[6]=le,ue[7]=Je}ǃSq(ae,de,re,oe){this.set(ae,de,re,de,re,oe,ae,oe)}ǃRV(ae){this.ǃONT.set(ae.ǃONT)}ǃtE(ae){let de=this.ǃONT,re=ae.ǃONT;return de[0]===re[0]&&de[1]===re[1]&&de[2]===re[2]&&de[3]===re[3]&&de[4]===re[4]&&de[5]===re[5]&&de[6]===re[6]&&de[7]===re[7]}ǃONF(ae){this.ǃONT[0]=ae}ǃSB(){return this.ǃONT[0]}ǃONW(ae){this.ǃONT[1]=ae}ǃSz(){return this.ǃONT[1]}ǃONZ(ae){this.ǃONT[2]=ae}ǃOHF(){return this.ǃONT[2]}ǃONl(ae){this.ǃONT[3]=ae}ǃOHl(){return this.ǃONT[3]}ǃONx(ae){this.ǃONT[4]=ae}ǃOHW(){return this.ǃONT[4]}ǃONA(ae){this.ǃONT[5]=ae}ǃOHx(){return this.ǃONT[5]}ǃONh(ae){this.ǃONT[6]=ae}ǃSL(){return this.ǃONT[6]}ǃONv(ae){this.ǃONT[7]=ae}ǃSk(){return this.ǃONT[7]}ǃsT(){return this.ǃONT}offset(ae,de){let re=this.ǃONT;re[0]+=ae,re[1]+=de,re[2]+=ae,re[3]+=de,re[4]+=ae,re[5]+=de,re[6]+=ae,re[7]+=de}round(){let ae=this.ǃONT;ae[0]=Math.round(ae[0]),ae[1]=Math.round(ae[1]),ae[2]=Math.round(ae[2]),ae[3]=Math.round(ae[3]),ae[4]=Math.round(ae[4]),ae[5]=Math.round(ae[5]),ae[6]=Math.round(ae[6]),ae[7]=Math.round(ae[7])}floor(){let ae=this.ǃONT;ae[0]=Math.floor(ae[0]),ae[1]=Math.floor(ae[1]),ae[2]=Math.floor(ae[2]),ae[3]=Math.floor(ae[3]),ae[4]=Math.floor(ae[4]),ae[5]=Math.floor(ae[5]),ae[6]=Math.floor(ae[6]),ae[7]=Math.floor(ae[7])}ceil(){let ae=this.ǃONT;ae[0]=Math.ceil(ae[0]),ae[1]=Math.ceil(ae[1]),ae[2]=Math.ceil(ae[2]),ae[3]=Math.ceil(ae[3]),ae[4]=Math.ceil(ae[4]),ae[5]=Math.ceil(ae[5]),ae[6]=Math.ceil(ae[6]),ae[7]=Math.ceil(ae[7])}ǃRK(ae){let de=this.ǃONT,re=ae.ǃONT;de[0]=re[0],de[1]=re[1],de[2]=re[2],de[3]=re[1],de[4]=re[2],de[5]=re[3],de[6]=re[0],de[7]=re[3]}ǃOHv(ae,de){if(0===de)this.ǃRK(ae);else{let re=Math.sin(de),oe=Math.cos(de);this.ǃ$H(ae,re,oe)}}ǃ$H(ae,de,re){let oe=this.ǃONT,ye=ae.ǃONT,Oe=ye[0]*de,le=ye[1]*de,Je=ye[2]*de,ue=ye[3]*de,pe=ye[0]*re,he=ye[1]*re,ge=ye[2]*re,me=ye[3]*re;oe[0]=pe-le,oe[1]=he+Oe,oe[2]=ge-le,oe[3]=he+Je,oe[4]=ge-ue,oe[5]=me+Je,oe[6]=pe-ue,oe[7]=me+Oe}ǃONP(ae){let de=this.ǃONT,re=ae.ǃsT();ee(de[0],de[2],de[4],de[6]),re[0]=te,re[2]=ne,ee(de[1],de[3],de[5],de[7]),re[1]=te,re[3]=ne}ǃORA(ae,de){let re=this.ǃONT,oe=re[2]-re[0],ye=re[3]-re[1],Oe=re[4]-re[0],le=re[5]-re[1],Je=ae-re[0],ue=de-re[1],pe=oe*oe+ye*ye,he=oe*Oe+ye*le,ge=oe*Je+ye*ue,me=Oe*Oe+le*le,ve=Oe*Je+le*ue,be=1/(pe*me-he*he),Ue=(me*ge-he*ve)*be,Ee=(pe*ve-he*ge)*be;return 0<=Ue&&0Ue+Ee||(oe=re[6]-re[0],ye=re[7]-re[1],pe=oe*oe+ye*ye,he=oe*Oe+ye*le,ge=oe*Je+ye*ue,be=1/(pe*me-he*he),Ue=(me*ge-he*ve)*be,Ee=(pe*ve-he*ge)*be,0<=Ue&&0Ue+Ee)}ǃSt(){let ae=this.ǃONT;return(ae[0]+ae[2]+ae[4]+ae[6])/4}ǃS$(){let ae=this.ǃONT;return(ae[1]+ae[3]+ae[5]+ae[7])/4}ǃONd(ae,de,re,oe){return this.ǃORA(ae,de)||this.ǃORA(re,oe)||ǃJ.ǃONS(ae,de,re,oe,this.ǃONT)}ǃONs(ae){let de=ae.ǃSt(),re=ae.ǃS$();if(this.ǃORA(de,re))return!0;if(de=this.ǃSt(),re=this.ǃS$(),ae.ǃORA(de,re))return!0;let oe=this.ǃONT,ye=ae.ǃONT;return ǃJ.ǃONS(oe[0],oe[1],oe[2],oe[3],ye)||ǃJ.ǃONS(oe[2],oe[3],oe[4],oe[5],ye)||ǃJ.ǃONS(oe[4],oe[5],oe[6],oe[7],ye)||ǃJ.ǃONS(oe[6],oe[7],oe[0],oe[1],ye)}ǃiR(){this.ǃOGO(0,2),this.ǃOGO(1,3),this.ǃOGO(6,4),this.ǃOGO(7,5)}ǃig(){this.ǃOGO(0,6),this.ǃOGO(1,7),this.ǃOGO(2,4),this.ǃOGO(3,5)}ǃOCs(){this.ǃOGO(2,6),this.ǃOGO(3,7)}ǃOGO(ae,de){let re=this.ǃONT[ae];this.ǃONT[ae]=this.ǃONT[de],this.ǃONT[de]=re}}}{const ne="loaded",de=localforage.ǃMi({name:"PersistantMap"});ǃJ.ǃOGJ=class extends Map{constructor(oe){super(),this.state="loading",this.ǃOGy=oe,this.ǃOGf=[],this.ǃOGS=ǃJ.ǃb(ǃJ.ǃgX,()=>this.ǃOGn(oe),500),this.ǃOGX=this.ǃOGR(oe)}ǃOGg(){if(!this.ǃOGH())throw new Error("PersistantMap not ready for access")}ǃOGU(){if(0this.ǃOGU()).catch(ye=>app.ǃHB(ye))}ǃOGR(oe){return de.getItem(oe).then(ye=>{ye=ye||[];for(let Oe of ye)super.set(Oe[0],Oe[1]);return this.state=ne,this},ye=>{throw this.state="failed",`Failed to load PersistantMap with id "${oe}" Error => "${ye}"`})}release(){this.clear(),this.ǃOGS.ǃyY()}ǃOGC(oe,...ye){if(!oe||!oe in this||"async"===oe||"onReady"===oe||"force"===oe)throw new Error(`Cannot execute invalid method "${oe}" asychronously`);return this.ǃOGX.then(()=>new Promise(Oe=>{let le=this[oe](...ye);this.ǃOGf.push(()=>Oe(le)),this.ǃOGn(this.ǃOGy)}))}async(oe,...ye){if(!oe||!oe in this||"async"===oe||"onReady"===oe||"force"===oe)throw new Error(`Cannot execute invalid method "${oe}" asychronously`);return this.ǃOGX.then(()=>new Promise(Oe=>{let le=this[oe](...ye);this.ǃOGf.push(()=>Oe(le))}))}ǃOGu(oe){return oe?this.ǃOGX.then(oe):this.ǃOGX}ǃOGH(){return this.state===ne}set(oe,ye){return ǃJ.ǃJO(oe),this.ǃOGg(),this.ǃOGS.ǃHp(),super.set(oe,ye)}get(oe){return this.ǃOGg(),super.get(oe)}has(oe){return this.ǃOGg(),super.has(oe)}clear(){return this.ǃOGg(),this.ǃOGS.ǃHp(),super.clear()}delete(oe){return this.ǃOGg(),this.ǃOGS.ǃHp(),super.delete(oe)}entries(){return this.ǃOGg(),super.entries()}forEach(oe,ye){return this.ǃOGg(),super.forEach(oe,ye)}keys(){return this.ǃOGg(),super.keys()}values(){return this.ǃOGg(),super.values()}[Symbol.iterator](){return this.ǃOGg(),super[Symbol.iterator]()}}}{const ee="00";ǃJ.Crypto={},ǃJ.Crypto.ǃOGm=function(ne){let ie="",ae=new DataView(ne);for(let de=0;de{ye&&(ye(oe.value),ye=null);try{oe.value=null}catch(ue){}},oe.oncancel=()=>{ye&&(ye(null),ye=null)},document.body.appendChild(oe),Oe=document.createElement("input"),Oe.style.display="none",Oe.setAttribute("type","file"),Oe.setAttribute("nwsaveas",""),Oe.onchange=()=>{le&&(le(Oe.value),le=null);try{Oe.value=null}catch(ue){}},Oe.oncancel=()=>{le&&(le(null),le=null)},document.body.appendChild(Oe)),ǃJ.ǃOF.ǃOGt=function(Je,ue){return new Promise((pe,he)=>{re.ǃOG$(Je,ue,ge=>{ge?he(ge):pe()})})},ǃJ.ǃOF.ǃOGq=function(){if(!te)throw new Error(_114);return new Promise(ue=>{ye=ue,oe.click()})},ǃJ.ǃOF.ǃOGM=function(ue){if(ǃJ.ǃUV(ue),!te)throw new Error(_114);return Oe.setAttribute("accept",ue||""),new Promise(pe=>{le=pe,Oe.click()})},ǃJ.ǃOF.ǃOGB=function(ue,pe="text",he=!1){if(ǃJ.ǃJO(pe),he=!!he,!te)throw new Error(_114);if(!ee.includes(pe))throw new Error(_115);de.set(ue,pe,he)},ǃJ.ǃOF.ǃOGL=function(ue="text",pe=!1){if(ǃJ.ǃJO(ue),pe=!!pe,!te)throw new Error(_114);if(!ee.includes(ue))throw new Error(_115);return de.get(ue,pe)},ǃJ.ǃOF.ǃZy=function(){if(!te)throw new Error(_114);return de.get("text")},ǃJ.ǃOF.ǃOGz=function(){if(!te)throw new Error(_114);return ae.homedir()},ǃJ.ǃOF.ǃOGk=function(...ue){if(!te)throw new Error(_114);return ie.join(...ue)},ǃJ.ǃOF.ǃOGV=function(ue){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);return new Promise((pe,he)=>{ne.stat(ue,(ge,me)=>{ge?"ENOENT"===ge.code?pe(!1):he(ge):pe(me.isFile())})})},ǃJ.ǃOF.ǃOGK=function(ue){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);try{return ne.statSync(ue).isDirectory()}catch(pe){if("ENOENT"===pe.code)return!1;throw pe}},ǃJ.ǃOF.ǃOGo=function(ue){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);if(!ǃJ.ǃOF.ǃOGK(ue))try{ne.mkdirSync(ue)}catch(pe){ǃJ.ǃOF.ǃOGo(ie.dirname(ue)),ne.mkdirSync(ue)}},ǃJ.ǃOF.ǃOGe=function(ue,pe){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);if("string"==typeof pe)return ǃJ.ǃOF.ǃOGr(ue,pe);if(pe instanceof Blob)return ǃJ.ǃOF.ǃOGI(ue,pe);throw new TypeError("expected string or blob")},ǃJ.ǃOF.ǃOGr=function(ue,pe){if(ǃJ.ǃJO(ue),ǃJ.ǃJO(pe),!te)throw new Error(_114);return new Promise((he,ge)=>{ne.writeFile(ue,pe,"utf8",me=>{me?ge(me):he()})})},ǃJ.ǃOF.ǃOGI=function(ue,pe){if(ǃJ.ǃJO(ue),ǃJ.ǃk(pe,Blob),!te)throw new Error(_114);return ǃJ.ǃOIc(pe).then(he=>{return new Promise((ge,me)=>{ne.writeFile(ue,ǃOGN.from(new Uint8Array(he)),{encoding:null},ve=>{ve?me(ve):ge()})})})},ǃJ.ǃOF.ǃOGG=function(ue,pe,he){return ǃJ.ǃJO(ue),ǃJ.ǃJO(pe),ǃJ.ǃOF.ǃOGe(pe,he).then(()=>ǃJ.ǃOF.ǃOGE(ue)).then(()=>ǃJ.ǃOF.ǃOGT(pe,ue))},ǃJ.ǃOF.ǃOGD=function(ue,pe,he){if(ǃJ.ǃJO(ue),ǃJ.ǃk(pe,Map),ǃJ.ǃUg(he),!te)throw new Error(_114);let ge=new Set;for(let ve of pe.keys())ge.add(ie.dirname(ie.join(ue,ve)));for(let ve of ge)ǃJ.ǃOF.ǃOGo(ve);let me=[];for(let[ve,be]of pe)me.push(ǃJ.ǃOF.ǃOGe(ie.join(ue,ve),be));return he?ǃJ.ǃOrj(me,he):Promise.all(me)},ǃJ.ǃOF.ǃOGi=function(ue,pe){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);return new Promise((he,ge)=>{ne.readFile(ue,pe,(me,ve)=>{me?ge(me):he(ve)})})},ǃJ.ǃOF.ǃOGE=function(ue){if(ǃJ.ǃJO(ue),!te)throw new Error(_114);return new Promise((pe,he)=>{ne.unlink(ue,ge=>{ge?"ENOENT"===ge.code?pe():he(ge):pe()})})},ǃJ.ǃOF.ǃOGa=function(ue,pe){if(ǃJ.ǃJO(ue),ǃJ.ǃJO(pe),!te)throw new Error(_114);return new Promise(he=>{let me=ne.createReadStream(ue),ve=ne.createWriteStream(pe);me.on("error",function(be){he(be)}),ve.on("error",function(be){he(be)}),ve.on("finish",function(){he()}),me.pipe(ve)})},ǃJ.ǃOF.ǃOGT=function(ue,pe){if(ǃJ.ǃJO(ue),ǃJ.ǃJO(pe),!te)throw new Error(_114);return new Promise((he,ge)=>{ne.rename(ue,pe,me=>{me?ge(me):he()})})},ǃJ.ǃOF.ǃOj=function(){if(!te)throw new Error(_114);return ǃOmj.Window.get()}}{function ee(ge,me){let ve=ge.data,be=me.data;if(ve.length!==be.length)return!1;let Ue=new Uint32Array(ve.buffer),Ee=new Uint32Array(be.buffer);for(let Le=0,we=Ue.length;Le{let me=ǃJ.ǃOGp.ǃOGY,ve=me.fontCandidateList,be=new Set(me.fontAlwaysShowList),Ue=[];ue=document.createElement("canvas"),ue.width=ye,ue.height=Oe,pe=ue.getContext("2d"),pe.textBaseline="top",pe.fillStyle="black",he=te("unknownFontName948958658");for(let Ee of ve){if(be.has(Ee)){re.push(Ee);continue}Ue.push(ǃJ.ǃgi(()=>{ne(Ee)&&re.push(Ee)}))}return Promise.all(Ue)}).then(()=>{return de=!0,ue.width=32,ue.height=32,ue=null,pe=null,he=null,oe=null,re.sort(),re}).catch(me=>{throw oe=null,me}),oe)}}}{const _117="Times New Roman";ǃJ.ǃOGp.ǃOGY={fontCandidateList:["Algerian","Andale Mono","Arial","Avant Garde","Baskerville","Big Caslon","Bitstream Vera","Bodoni MT","Book Antiqua","Bookman","Bookman Old Style","Bradley Hand ITC TT","Broadway","Brush Script MT","Calibri","Calisto MT","Candara","Cambria","Cardo","Carrois Gothic SC","Caslon Roman","Century Gothic","Century Schoolbook","Comic Sans MS","Consolas","Copperplate","Copperplate Gothic","Courier New","Cutive Mono","Dancing Script","Diavlo","Didot","Droid","Droid Sans","Droid Sans Mono","Droid Serif","Franklin Gothic","Futura","Garamond","Geneva","Gentium","Georgia","Ghostscript","Gill Sans","Goudy","Goudy Old Style","Haettenschweiler","Helvetica","Hoefler Text","Impact","ITC Stone Serif","Junicode","Latin Modern","Lucida Bright","Lucida Calligraphy","Lucida Console","Lucida Grande","Lucida Sans","Lucida Sans Typewriter","Lucida Sans Unicode","Mistral","Moire","Monaco","MS Mincho","MS Sans Serif","New Athena Unicode","New York","Noto","Noto Sans","Noto Serif","Old Standard TT","Onyx","Optima","Oxygen","Palatino","Palatino Linotype","Papyrus","Perpetua","Perpetua Titling MT","Playbill","Roboto","Rockwell","San Francisco","Segoe UI","Snap ITC","Source Sans Pro","Source Code Pro","Stencil","Symbol","Symbola","Tahoma","Times",_117,"Trebuchet MS","Tw Cen MT","UniFraktur","Verdana","Webdings","Wide Latin","Wingdings"],fontAlwaysShowList:["Arial",_117]}}{function ee(pe){return ae.get(pe)}const te=new Set([..."0123456789"]);ǃJ.ǃOGQ=function(he){return ǃJ.ǃJO(he),te.has(he)};const ne=new Set([..." \t\n\r\xA0\x85\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u200B\u2028\u2029\u202F\u205F\u3000"]);ǃJ.ǃOGj=function(he){return ǃJ.ǃJO(he),ne.has(he)},ǃJ.ǃOGF=function(he){return[...he].filter(ge=>!ǃJ.ǃOGj(ge)).join("")},ǃJ.ǃOGW=function(he){return[...he].every(ge=>ǃJ.ǃOGj(ge))},ǃJ.ǃOGZ=function(he){return ǃJ.ǃJO(he),1===he.length&&32>he.charCodeAt(0)},ǃJ.ǃOGl=function(he){return[...he].filter(ge=>!ǃJ.ǃOGZ(ge)).join("")};const ie=new Set([..."0123456789.+-e"]);ǃJ.ǃOGx=function(he){if(ǃJ.ǃJO(he),he=he.trim(),!he.length)return!1;let ge=he.charAt(0);if("-"!==ge&&!te.has(ge))return!1;for(let me of he)if(!ie.has(me))return!1;return!0},ǃJ.ǃIZ=function(he){ǃJ.ǃJO(he);let ge=he.length;for(;0",">"],["\"","""],["'","'"]]);const de=/[&<>"']/g;ǃJ.ǃOGh=function(he){return ǃJ.ǃUR(he),he.replace(de,ee)},ǃJ.ǃOGv=function(he){let ge=ǃJ.ǃOcf(he,"\\","\\\\");return ge=ǃJ.ǃOcf(ge,"\"","\\\""),ge=ǃJ.ǃOcf(ge,"\t","\\t"),ge=ǃJ.ǃOcf(ge,"\r",""),ǃJ.ǃOcf(ge,"\n","\\n")},ǃJ.ǃOcS=function(he){let ge=ǃJ.ǃOcf(he,"&","&");return ge=ǃJ.ǃOcf(ge,"<","<"),ge=ǃJ.ǃOcf(ge,">",">"),ǃJ.ǃOcf(ge,"\"",""")};const re=/[-[\]{}()*+?.,\\^$|#\s]/g;ǃJ.ǃOGP=function(he){return ǃJ.ǃUR(he),he.replace(re,"\\$&")},ǃJ.ǃOGd=function(he,ge,me=!1){if(ǃJ.ǃJO(he),ǃJ.ǃJO(ge),!ge)return[];me||(he=he.toLowerCase(),ge=ge.toLowerCase());const ve=ge.length;let be=0,Ue=0,Ee=[];for(;-1<(Ue=he.indexOf(ge,be));)Ee.push(Ue),be=Ue+ve;return Ee},ǃJ.ǃOcf=function(he,ge,me){return ǃJ.ǃJO(he),ǃJ.ǃJO(ge),ǃJ.ǃJO(me),he.replace(new RegExp(ǃJ.ǃOGP(ge),"g"),me)},ǃJ.ǃOuN=function(he,ge,me){return ǃJ.ǃJO(he),ǃJ.ǃJO(ge),ǃJ.ǃJO(me),he.replace(new RegExp(ǃJ.ǃOGP(ge),"gi"),me)};let oe=new WeakMap;ǃJ.ǃHe=function(he,ge,me){ǃJ.ǃLA(he),ǃJ.ǃUR(ge);let ve=oe.get(he);if("string"==typeof ge){if(!me&&ge===ve)return;he.textContent=ge,oe.set(he,ge)}else{if(!me&&ge.ǃtE(ve))return;if(ge.ǃOGs()){let be=ge.toString();he.textContent=be,oe.set(he,be)}else he.innerHTML=ge.ǃxL(),ge instanceof ǃJ.ǃHr&&ge.ǃOEO(he),oe.set(he,ge.toString())}},ǃJ.ǃOEJ=function(he,ge){return he instanceof ǃJ.ǃOrc||he instanceof ǃJ.ǃHr?he.ǃtE(ge):ge instanceof ǃJ.ǃOrc||ge instanceof ǃJ.ǃHr?ge.ǃtE(he):he===ge},ǃJ.ǃOEy=function(he,...ge){ǃJ.ǃJO(he);let me=he;for(let ve=0,be=ge.length,Ue;veve?1:meve?Math.round(10*ve)/10:Math.round(ve),ǃCM(me+"kilobytes",ve)}if(heve?Math.round(10*ve)/10:Math.round(ve),ǃCM(me+"megabytes",ve)}if(heve?Math.round(10*ve)/10:Math.round(ve),ǃCM(me+"gigabytes",ve)}let ve=he/Je;return ve=10>ve?Math.round(10*ve)/10:Math.round(ve),ǃCM(me+"terabytes",ve)};const ue={ǃOES:!1,ǃOEn:!0,ǃOEX:!0,ǃOER:!0,ǃOEg:!0};ǃJ.ǃOEH=function(he,ge){ge=Object.assign({},ue,ge),ǃJ.ǃS.ǃT("common.time");const me=[];if(ge.ǃOEn){const be=Math.floor(he/86400);0pe?"-":"";pe=Math.abs(pe);let me=pe.toString(),ve=he-me.length;for(let be=0;bege.toUpperCase())},ǃJ.ǃOEC=function(he,ge){let me=he.split(".").map(be=>be.trim()),ve=ge.split(".").map(be=>be.trim());ǃJ.ǃOrG(me,4,"0"),ǃJ.ǃOrG(ve,4,"0"),me=me.map(be=>parseInt(be,10)),ve=ve.map(be=>parseInt(be,10));for(let be=0;4>be;++be){const Ue=me[be]-ve[be];if(0!=Ue)return 0>Ue?-1:1}return 0},ǃJ.ǃOEu=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,he=>{const ge=Math.floor(16*Math.random()),me="x"===he?ge:8|3≥return me.toString(16)})}}"use strict",ǃJ.ǃOrc=class{constructor(te){ǃJ.ǃJO(te),this.ǃOE_=te,this.ǃOEm=!this.ǃOE_.includes("<")&&!this.ǃOE_.includes("&")}toString(){return this.ǃOE_}valueOf(){return this.ǃOE_}ǃOGs(){return this.ǃOEm}ǃxL(){return this.ǃOE_}ǃtE(te){return te instanceof ǃJ.ǃOrc?this.ǃOE_===te.ǃOE_:te instanceof ǃJ.ǃHr?this.ǃOE_===te.ǃxL():this.ǃOE_===te}},"use strict";{function ee(de,re,oe){const ye=te.get(oe);if(!ye)return de;else if("string"!=typeof ye){if(Array.isArray(ye)){assert(2===ye.length,_120);let Oe=ye[0],le=ye[1];return re?""+Oe+">":`<${Oe} class="${le}">`}assert(!1,_120)}else if("a"===ye&&!re){const Oe=parseInt(oe.substring(1),10)-1;if(0>Oe||Oe>=ie.length)throw new Error("invalid bbcode link substitution");const le=ie[Oe];if("string"==typeof le)return``;if("function"==typeof le)return``;throw new TypeError("invalid bbcode link action")}else return"<"+re+ye+">"}const _119="span",_120="invalid bbcode entry",te=new Map([["b","strong"],["i","em"],["s","s"],["u","u"],["sub","sub"],["sup","sup"],["small","small"],["mark","mark"],["a1","a"],["a2","a"],["a3","a"],["a4","a"],["a5","a"],["a6","a"],["a7","a"],["a8","a"],["a9","a"],["bad",[_119,"bbCodeBad"]],["good",[_119,"bbCodeGood"]],["info",[_119,"bbCodeInfo"]],["h1",[_119,"bbCodeH1"]],["h2",[_119,"bbCodeH2"]],["h3",[_119,"bbCodeH3"]],["h4",[_119,"bbCodeH4"]],["item",[_119,"bbCodeItem"]]]),ne=/\[(\/?)([a-zA-Z0-9]+)\]/g;let ie=null;const ae=/\n/g;ǃJ.ǃHr=class{constructor(re,oe){if(ǃJ.ǃJO(re),ǃJ.ǃBA(oe),this.ǃOEb=oe&&oe.ǃOEc?re:ǃJ.ǃOGh(re),this.ǃOEt="",this.ǃOE$=!1,this.ǃOEq=[],oe&&(this.ǃOE$=!!oe.ǃHI,oe.links)){if(ǃJ.ǃCl(oe.links),9")),this.ǃOEt=re}return this.ǃOEt}ǃOEO(re){if(this.ǃOEq.length)for(let oe=0,ye=this.ǃOEq.length;oede)){if(100>=ie.length&&-1===ie.indexOf("\n")){let ye=this.ǃOEd(ae,ie);if(ye<=de)return void this.ǃOEP.push({text:ie,width:ye})}let oe;"word"===re?(this.ǃOEs(ie),oe=te):oe=[...ie],this.ǃOTO(oe,ae,de,re),ǃJ.ǃXX(te)}}ǃOEs(ie){let ae="",de=0;for(;de=de&&(0!==Oe&&(le=ee(le),this.ǃOEP.push({text:le,width:this.ǃOEd(ae,le)})),oe=ie[Oe]," "===oe&&"character"===re?(oe="",ye=0):ye=this.ǃOEd(ae,oe))}oe.length&&(oe=ee(oe),this.ǃOEP.push({text:oe,width:this.ǃOEd(ae,oe)}))}ǃbi(){ǃJ.ǃXX(this.ǃOEP)}}}{const _122="synthetic-";let ee=null,te=null,ne="",ie=!1,ae=[],de=[],re=ǃJ.ǃOoi();const oe="[???]";ǃJ.ǃS=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃXC(le){if(ǃJ.ǃJO(le),ne=le,te=ǃJ.ǃb(ǃJ.ǃS.ǃOTJ),re?te.ǃOTy("loader/precompiled-en-US.json",!0):te.ǃOTy(`lang/en-US.json`),"en-US"!=ne)if(ne.startsWith(_122)){let Je=ǃJ.ǃS.ǃOTf(ne);if(!Je)throw new Error(`invalid synthetic language '${ne}'`);ee=ǃJ.ǃb(ǃJ.ǃS.ǃOTS,te,Je)}else ee=ǃJ.ǃb(ǃJ.ǃS.ǃOTJ),re||ee.ǃOTy(`lang/${ne}.json`);ie=!0;for(let Je of ae)ǃJ.ǃS.ǃf(Je);return ǃJ.ǃXX(ae),ǃJ.ǃS.ǃGY()}static ǃf(le,Je){if(ǃJ.ǃJO(le),re){if(!Je)return;}else if(Je)throw new Error("do not specify the 'includeWhenPrecompiled' flag on AddPath when not using a pre-compiled language file");return ie?void(te.ǃOTy(`${le}/en-US.json`),"en-US"===ne||ne.startsWith(_122)||ee.ǃOTy(`${le}/${ne}.json`)):void ae.push(le)}static ǃOTn(le){return ǃJ.ǃJO(le),ie?void te.ǃOTy(le):void ae.push(le)}static ǃGY(le){return"en-US"===ne||ne.startsWith(_122)?te.ǃGY(le):Promise.all([te.ǃGY(le),ee.ǃGY(le)]).then(()=>ǃJ.ǃU.ǃOTX(ee.ǃOTR()))}static ǃOX(le){if(ǃJ.ǃJO(le),assert(te,"English language not initialised"),ee){let Je=ee.ǃOTg(le);return Je===oe?(Je=te.ǃOTg(le),Je===oe?Je:`[${Je}]`):Je}return te.ǃOTg(le)}static ǃOTH(le){return ǃJ.ǃJO(le),new ǃJ.ǃHr(ǃJ.ǃS.ǃOX(le))}static ǃOTU(le){return!!ǃJ.ǃS.ǃOX(le).match(/{\d+}|\{{1}.+\}{1}/g)}static ǃOTC(le,...Je){return ǃJ.ǃJO(le),1===Je.length?ǃJ.ǃzD(Je[0])?ǃJ.ǃOEf(ǃJ.ǃS.ǃOX(le),Je[0]):ǃJ.ǃOEy(ǃJ.ǃS.ǃOX(le),...Je):ǃJ.ǃOEy(ǃJ.ǃS.ǃOX(le),...Je)}static ǃOTu(le,...Je){return ǃJ.ǃJO(le),new ǃJ.ǃHr(ǃJ.ǃOEy(ǃJ.ǃS.ǃOX(le),...Je))}static ǃEc(){let le=de.length,Je=le-1;for(;0<=Je&&!("."!==de[Je][0]);--Je);0>Je&&(Je=0);let ue="";for(;Jede.length,"language context stack reached 100 items - is this right?"),ǃJ.ǃS.ǃOT_()}static ǃOu(){assert(0{return ǃJ.ǃgT(ae).then(de=>this.ǃOoQ(de,ne))})).then(()=>this)}ǃOoQ(ne,ie){ǃJ.ǃFt(ne);let ae=ne.languageTag;if(!this.ǃOTL)this.ǃOTL=ae;else if(this.ǃOTL!==ae)throw new Error(`language file has wrong language tag (has '${ae}', expected '${this.ǃOTL}')`);ne.main&&(this.ǃOTM=ne.englishName,this.ǃOTB=ne.nativeName,this.ǃOTz=!!ne.rightToLeft,this.ǃOTq=!0),this.ǃOTV(ne.text,"",ie)}ǃOTV(ne,ie,ae){ǃJ.ǃFt(ne),ǃJ.ǃJO(ie),ie&&(ie+=".");for(let[de,re]of Object.entries(ne)){let oe=ie+de;if("object"==typeof re)this.ǃOTV(re,oe,ae);else if("string"==typeof re){if(!ae&&this.ǃOTk.has(oe))throw new Error(`key name '${oe}' already exists in language string map`);this.ǃOTk.set(oe,re)}}}ǃOTm(ne){ǃJ.ǃJO(ne),this.ǃNv=ne}ǃOTg(ne){if(ǃJ.ǃJO(ne),!this.ǃOTq)throw new Error(_124);if(!ne)throw new Error("cannot lookup empty key");if(ne.startsWith(".")){if(!this.ǃNv)throw new Error("relative language string used with no context set");ne=this.ǃNv+ne}let ie=this.ǃOTk.get(ne);return"undefined"==typeof ie?(console.warn(`[LANG] Failed to find '${this.ǃOTL}' string ${ne}'`),ǃJ.ǃS.ǃOTc):ie}ǃOTR(){if(!this.ǃOTq)throw new Error(_124);return this.ǃOTz}ǃOTb(){let ne={};for(let[ie,ae]of this.ǃOTk)ee(ne,ie,ae);return ne}}}{function ee(ge){return ge===ǃJ.ǃS.ǃOTc||ge.startsWith("http:")||ge.startsWith("https:")}function te(ge,me){if(!me)return ge;let ve="",be=!1,Ue=!1;for(let Ee=0,Le=ge.length,we;Eete(ve,me)}let le=new Set([" ","\n","\t","-",".",":",";","'","\"","(",")","+","=","[","]","{","}","!","?","|","\\","/","<",">","@","#","~","%","&","*"]);let Je="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",pe=new Map;for(let ge=0,me=Je.length;gete&&(this.ǃOim=!0)}ǃOib(Oe){this.ǃOiu=Oe.clientX,this.ǃOi_=Oe.clientY;let le=Date.now(),Je=!1;if(!this.ǃOim&&le-this.ǃOiCde(te)));for(let ie=0,ae=this.ǃOip.length,de;iede(te)));return Promise.all(ne).then(()=>!te.defaultPrevented)}}}{const _133="ctrlKey",_134="metaKey",_135="shiftKey",_136="unexpected argument";let ee=[];ǃJ.ǃeh=class{constructor(){throw new TypeError("static class")}static ǃi$(ne){let ie=ne.which;for(;ee.length<=ie;)ee.push(!1);ie===ǃJ.ǃCi.ǃOSB&&ee[ie]&&ne.preventDefault(),ee[ie]=!0}static ǃOyB(ne){let ie=ne.which;0>ie||ie>=ee.length||(ee[ie]=!1)}static ǃOix(){for(let ne=0,ie=ee.length;nene||ne>=ee.length?!1:ee[ne]}},window.addEventListener("keydown",ǃJ.ǃeh.ǃi$),window.addEventListener("keyup",ǃJ.ǃeh.ǃOyB),window.addEventListener("blur",ǃJ.ǃeh.ǃOix)}{let ee=new Set;ǃJ.ǃORg=class{constructor(){throw new TypeError("static class")}static ǃORR(ne){if(ǃJ.ǃXq(ne),ee.has(ne))throw new Error("pointer already captured");ee.add(ne)}static ǃyY(ne){if(ǃJ.ǃXq(ne),!ee.has(ne))throw new Error("pointer not captured");ee.delete(ne)}static ǃOih(ne){return ǃJ.ǃXq(ne),ee.has(ne)}}}{function ee(Je){ye=re&&0===Oe?requestIdleCallback(te,{timeout:de}):setTimeout(te,Je)}function te(Je){if(ye=-1,!!oe.length){let ue=performance.now(),pe=ue,he=0,ge=0;do ne(oe.shift()),pe=performance.now(),++he,ge=1.1*((pe-ue)/he);while(oe.length&&(re&&0===Oe&&"undefined"!=typeof Je?ge{return oe.push({ǃOiv:ue,resolve:he,reject:ge,stack:pe}),le?void ne(oe.pop()):void(-1===ye&&ee(ae))})},ǃJ.ǃgi.ǃwt=function(ue){if(ue)++Oe;else if(--Oe,0>Oe)throw new Error("already turned off high throughput mode")}}{function ee(){te&&(ne=!te.charging)}let te=null,ne=!1;navigator.getBattery&&navigator.getBattery().then(ie=>{te=ie,ee(),ie.addEventListener("chargingchange",ee)}),ǃJ.ǃOiP=class{constructor(){throw new Error("static class")}static ǃOid(){return ne}}}{const _138="already disposed";ǃJ.ǃJa=class ee{constructor(te){ǃJ.ǃUg(te),this.ǃOis=!1,this.ǃOaO=te}ǃuO(){this.ǃOis||(this.ǃOis=!0,this.ǃOaO&&(this.ǃOaO(),this.ǃOaO=null))}ǃOaJ(){return this.ǃOis}ǃyY(){this.ǃuO()}static ǃyY(te){return new ee(()=>te.ǃyY())}static ǃJi(te,ne,ie,ae,de){if(ǃJ.ǃKw(te,EventTarget,ǃJ.Event.ǃU_),ǃJ.ǃJO(ne),ǃJ.ǃ$V(ie),"undefined"==typeof ae||null===ae)ae=!1;else if("boolean"!=typeof ae&&"object"!=typeof ae)throw new TypeError("invalid event listener options");if(de&&(ie=ie.bind(de)),ne.includes(" ")){ne=ne.split(" ");const re=new ǃJ.ǃJD;for(let oe of ne)te.addEventListener(oe,ie,ae),re.ǃCK(ǃJ.ǃb(ǃJ.ǃJa,()=>te.removeEventListener(oe,ie,ae)));return re}return te.addEventListener(ne,ie,ae),ǃJ.ǃb(ǃJ.ǃJa,()=>te.removeEventListener(ne,ie,ae))}},ǃJ.ǃOay=class extends ǃJ.ǃJa{ǃOaf(te){ǃJ.ǃ$V(te),this.ǃOaO=te}},ǃJ.ǃJD=class extends ǃJ.ǃJa{constructor(...te){super(),this.ǃJT=new Set;for(let ne of te)this.ǃCK(ne)}ǃCK(...te){if(ǃJ.ǃbw(te,ǃJ.ǃJa),this.ǃOis)throw new Error(_138);for(let ne of te)this.ǃJT.add(ne)}ǃOn(te){if(ǃJ.ǃk(te,ǃJ.ǃJa),this.ǃOis)throw new Error(_138);this.ǃJT.delete(te)}ǃOaJ(){return this.ǃOis}ǃuO(){if(this.ǃOis)throw new Error(_138);this.ǃOis=!0;for(let te of this.ǃJT)te.ǃuO();this.ǃJT.clear(),this.ǃJT=null}ǃyY(){this.ǃuO()}}}{function ee(){ae=-1}function te(){de=-1,re=-1;let ye=Date.now();for(let Oe of oe)if(Oe.ǃOan(ye)){let le=Oe.ǃOaX();(-1===re||leOe+ne&&(window.clearTimeout(de),re=this.ǃOag,de=window.setTimeout(te,this.ǃXJ+ie))}ǃOan(Oe){return!(Oe>=this.ǃOag)||(this.ǃOaR()?(this.ǃOag=Oe+this.ǃXJ,!0):(this.ǃXl=!1,!1))}ǃOaX(){return this.ǃOag}ǃSP(){this.ǃXl&&(oe.delete(this),this.ǃXl=!1,0===oe.size&&-1!==de&&(window.clearTimeout(de),de=-1,re=-1))}ǃyY(){this.ǃSP(),this.ǃOaR=null}}}{function ee(){ae=-1;let de=performance.now()-ie;for(let re of ne.values())re.ǃOaH++,re.ǃOaU.push(de);0ye&&(ye=le);if(3<=re.ǃOaU.length){re.ǃOaU.pop(),re.ǃOaU.shift();for(let le of re.ǃOaU)le>Oe&&(Oe=le)}console.log(`[JankMeasurement] '${this.ǃOau}' ended. Duration: ${Math.round(10*oe)/10} ms, frame count: ${re.ǃOaH}, max dt: ${Math.round(10*ye)/10}ms, max dt exclusive: ${Math.round(10*Oe)/10}ms`)}}}{function ee(){return de}function te(oe,ye,Oe,le){let Je=new ǃJ.MimeType(oe,ye,Oe,le);re.set(oe,Je)}const ne=1,ie=2,ae=4;let de=null,re=new Map;ǃJ.MimeType=class{constructor(ye,Oe,le,Je){if(ǃJ.ǃJO(ye),ǃJ.ǃUV(le),ǃJ.ǃaB(Je),!ye)throw new Error("invalid MIME type");if(this.ǃOa_=ye,this.ǃOam=ye.split("/")[0],this.ǃOab=[],this.ǃOac=le||ye,this.ǃOat=!1,this.ǃOa$=!1,this.ǃOaq=!1,"string"==typeof Oe)this.ǃOab.push(Oe);else if(Array.isArray(Oe))this.ǃOab=Oe;else throw new TypeError("expected string or array");"number"==typeof Je&&(this.ǃOat=!!(Je&ne),this.ǃOa$=!!(Je&ie),this.ǃOaq=!!(Je&ae))}ǃCG(){return this.ǃOa_}ǃOaM(){return this.ǃOam}ǃOaB(){return this.ǃOab}ǃOaL(){return this.ǃOac}ǃOaz(){return this.ǃOat}ǃUW(){return this.ǃOa$||"text"===this.ǃOaM()}ǃNB(){return this.ǃOaq}static ǃOX(ye){return ǃJ.ǃJO(ye),re.get(ye)||ee()}static ǃOak(ye){ǃJ.ǃk(ye,Blob);const Oe=ye.name?ǃJ.ǃHE(ye.name).slice(1):"",le=ye.type;if(!Oe)return le?ǃJ.MimeType.ǃOX(le):ee();if(!le)return ǃJ.MimeType.ǃOaV(Oe);for(let Je of re.values())if(Je.ǃCG()===le)for(let ue of Je.ǃOaB())if(ue===Oe)return Je;return ǃJ.MimeType.ǃOaV(Oe)}static ǃUa(ye){return ǃJ.MimeType.ǃOaV(ye).ǃCG()}static ǃOaV(ye,Oe){ǃJ.ǃJO(ye),ǃJ.ǃUV(Oe),ye.length&&"."===ye[0]&&(ye=ye.substr(1)),ye=ye.toLowerCase();const le=[];for(const Je of re.values())for(const ue of Je.ǃOaB())ue===ye&&le.push(Je);if(!le.length)return ee();if(1===le.length||!Oe)return le[0];for(const Je of le)if(Je.ǃCG().toLowerCase().includes(Oe.toLowerCase()))return Je;return le[0]}},de=new ǃJ.MimeType("application/octet-stream",[],"Binary");te("text/html",["html","htm"],"HTML"),te("application/javascript","js","Javascript",ie),te("text/css","css","CSS"),te("application/json",["json","scon"],"JSON",ie),te("text/xml",["xml","scml"],"XML"),te("text/csv","csv","CSV"),te("text/plain","txt","Text"),te("image/png","png","PNG",ne),te("image/jpeg",["jpg","jpeg"],"JPEG",ne),te("image/svg+xml","svg","SVG",ie),te("image/webp","webp","WebP",ne),te("image/gif","gif","GIF",ne),te("image/tiff",["tif","tiff"],"TIFF"),te("image/bmp","bmp","Bitmap"),te("image/x-icon","ico","Icon"),te("audio/ogg; codecs=opus","opus","Ogg Opus",ne),te("audio/ogg; codecs=vorbis","ogg","Ogg Vorbis",ne),te("audio/webm; codecs=opus","webm","WebM Opus",ne),te("audio/mp4","m4a","MPEG-4 AAC",ne),te("audio/wav","wav","WAV"),te("audio/flac","flac","FLAC",ne),te("audio/mpeg","mp3","MP3",ne),te("audio/midi",["mid","midi","kar"],"MIDI"),te("video/webm","webm","WebM",ne),te("video/ogg","ogv","Ogg video",ne),te("video/mp4","mp4","MPEG-4 video",ne),te("video/mpeg",["mpg","mpeg"],"MPEG video",ne),te("video/quicktime",["mov","qt"],"Quicktime movie",ne),te("video/avi","avi","AVI"),te("application/font-woff","woff","Web font",ae|ne),te("font/woff2","woff2","Web font",ae|ne),te("application/font-sfnt",["ttf","otf"],"TrueType/OpenType font",ae),te("application/vnd.ms-fontobject","eot","Embedded OpenType",ae),te("application/pdf","pdf","PDF"),te("application/zip",["zip","c3p","nw"],"ZIP",ne),te("application/x-construct3-addon","c3addon","Construct 3 addon",ne)}"use strict",ǃJ.ǃOmW=class{constructor(te=ǃJ.hardwareConcurrency){ǃJ.ǃzE(te),this.ǃOaK=te,this.ǃOao=[],this.ǃOae=0}ǃCK(te){return ǃJ.ǃ$V(te),new Promise((ne,ie)=>{this.ǃOao.push({ǃOiv:te,resolve:ne,reject:ie}),this.ǃOar()})}ǃOar(){if(this.ǃOao.length&&!(this.ǃOae>=this.ǃOaK)){this.ǃOae++;let te=this.ǃOao.shift();te.ǃOiv().then(ne=>{te.resolve(ne),this.ǃOae--,this.ǃOar()}).catch(ne=>{te.reject(ne),this.ǃOae--,this.ǃOar()})}}},"use strict",ǃJ.ǃgX=class{constructor(te,ne,ie){ǃJ.ǃ$V(te),ǃJ.ǃXq(ne),ǃJ.ǃaB(ie),this.ǃOaR=te,this.ǃOaI=ne,this.ǃOaN=ie||2*ne,this.ǃOaG=-1,this.ǃOaE=-Infinity,this.ǃOaT=()=>this.ǃOaD(),this.ǃOai=!1,this.ǃOaa=!1,this.ǃOap=null}ǃqf(te){this.ǃOaa=!!te}ǃOaw(){return ǃJ.ǃOiP.ǃOid()?this.ǃOaN:this.ǃOaI}ǃHp(...te){if(-1===this.ǃOaG){this.ǃOap=te;let ne=ǃJ.ǃOaS(),ie=ne-this.ǃOaE,ae=this.ǃOaw();ie>=ae&&this.ǃOaa?(this.ǃOaE=ne,this.ǃOaY()):this.ǃOaG=window.setTimeout(this.ǃOaT,Math.max(ae-ie,4))}}ǃOaY(){this.ǃOai=!0,this.ǃOaR(...this.ǃOap),this.ǃOai=!1}ǃHH(){this.ǃOai||(this.ǃOaQ(),this.ǃOaE=ǃJ.ǃOaS())}ǃOaD(){this.ǃOaG=-1,this.ǃOaE=ǃJ.ǃOaS(),this.ǃOaY()}ǃOaQ(){-1!==this.ǃOaG&&(window.clearTimeout(this.ǃOaG),this.ǃOaG=-1)}ǃyY(){this.ǃOaQ(),this.ǃOaR=null,this.ǃOap=null,this.ǃOaT=null}},"use strict",ǃJ.ǃpj={},ǃJ.ǃpj.Document=class{constructor(){this.ǃOaj=null,this.ǃOaF=null}static ǃpQ(te){ǃJ.ǃJO(te);let ne=new ǃJ.ǃpj.Document;return ne.ǃOaW(te)}static ǃOaZ(te){return new Promise(ne=>{let ae=new FileReader;ae.onload=de=>ǃJ.ǃpj.Document.ǃpQ(de.target.result).then(ne),ae.readAsText(te)})}ǃOaW(te,ne){return ǃJ.ǃJO(te),ǃJ.ǃUV(ne),ǃJ.ǃgi(()=>{const ie=new DOMParser;return this.ǃOaj=ie.parseFromString(te,ne||"text/xml"),this.ǃOaF=new ǃJ.ǃpj.Element(this.ǃOaj.documentElement,this.ǃOaj),this})}ǃqc(){return this.ǃOaj}ǃpF(){return this.ǃOaF}ǃpx(){return new Blob([this.ǃOal(!0)],{type:"text/xml"})}ǃOax(){return new XMLSerializer().serializeToString(this.ǃOaj)}ǃOal(te){te=!!te;let ne="",ie=/(>)(<)(\/*)/g,ae=0,de=this.ǃOax().replace(ie,"$1\r\n$2$3");for(let re of de.split("\r\n")){let oe=0;re.match(/.+<\/\w[^>]*>$/)?oe=0:re.match(/^<\/\w/)?0!=ae&&(ae-=1):re.match(/^<\w[^>]*[^\/]>.*$/)?oe=1:oe=0;let ye="";for(let Oe=0;Oe{zip.ǃOLO(new zip.ǃOBA(ie),re=>{this.ǃOpu=re,this.ǃOpu.getEntries(oe=>{for(let ye=0,Oe=oe.length,le;yede(re))})}ǃOpL(ie){return ǃJ.ǃJO(ie),this.ǃOp_.has(ee(ie))}ǃOpz(ie){return ǃJ.ǃJO(ie),this.ǃOp_.get(ee(ie))}ǃOcX(){return this.ǃOp_.values()}ǃOpk(ie){ǃJ.ǃJO(ie);let ae=ie.toLowerCase();for(let de of this.ǃOp_.values())if(de.filename.toLowerCase().endsWith(ae))return de;return null}ǃOpV(ie){ǃJ.ǃFt(ie);let ae=ie.ǃOBE;return new Promise(de=>{let oe={ǃOpK:0};this.ǃOpc.add(oe),ie.getData(new zip.ǃOBs,ye=>{this.ǃOpc.delete(oe),this.ǃOpb+=ae,de(ye)},(ye,Oe)=>{oe.ǃOpK=ye/Oe*ae})})}ǃOpo(ie){ǃJ.ǃFt(ie);let ae=ie.ǃOBE;return new Promise(de=>{let oe={ǃOpK:0};this.ǃOpc.add(oe),ie.getData(new zip.ǃOBs,ye=>{this.ǃOpc.delete(oe),this.ǃOpb+=ae,de(ǃJ.ǃzp(ye))},(ye,Oe)=>{oe.ǃOpK=ye/Oe*ae})})}ǃOcR(ie,ae){ǃJ.ǃFt(ie),ǃJ.ǃUV(ae);let de=ae||ǃJ.MimeType.ǃOaV(ǃJ.ǃHE(ie.filename)).ǃCG(),re=ie.ǃOBE;return new Promise(oe=>{let Oe={ǃOpK:0};this.ǃOpc.add(Oe),ie.getData(new zip.ǃOBP(de),le=>{this.ǃOpc.delete(Oe),this.ǃOpb+=re,oe(le)},(le,Je)=>{Oe.ǃOpK=le/Je*re})})}ǃOpe(){return this.ǃOpm}ǃOpr(){return this.ǃOpb+this.ǃOpI()}ǃOpI(){let ie=0;for(let ae of this.ǃOpc)ie+=ae.ǃOpK;return ie}ǃOcg(){this.ǃOpu&&(this.ǃOpu.close(),this.ǃOpu=null)}ǃOpN(ie){if(ǃJ.ǃXq(ie),-1>ie||95*ae?1:ie>2*ae?2:ie>1*ae?3:ie>0.5*ae?4:5}ǃOcJ(ie,ae){return ǃJ.ǃq$(ae,Map),this.ǃOpt.length=0,this.ǃOp$=0,this.ǃOpq=0,this.ǃOpM=0,new Promise((de,re)=>{zip.ǃOLJ(new zip.ǃOBP("application/zip"),oe=>{this.ǃOpE(oe,ie,ae).then(()=>oe.close(de))},oe=>re(oe))})}ǃOpE(ie,ae,de){for(let oe of ae){this.ǃOpt.push(oe);let ye=oe[1],Oe=null;if(Oe=ǃJ.ǃzD(ye)?ye.data:ye,"string"==typeof Oe)this.ǃOp$+=Oe.length;else if(ǃJ.ǃHT(Oe,Blob))this.ǃOp$+=Oe.size;else throw new Error(_141)}return this.ǃOpT(ie,de)}ǃOpT(ie,ae){if(!this.ǃOpt.length)return Promise.resolve(!0);let de=this.ǃOpt.pop(),re=de[0],oe=de[1],ye=null,Oe=0,le=null,Je=null,ue=null;return ǃJ.ǃzD(oe)?(ye=oe.data,Oe=oe.ǃObh||0,le=oe.ǃObv||null,Je="number"==typeof oe.ǃObP?oe.ǃObP:null,ue="number"==typeof oe.ǃOpD?oe.ǃOpD:null):ye=oe,new Promise((pe,he)=>{let me=5,ve=0,ge;if("string"==typeof ye)ge=new zip.ǃOBv(ye),ve=ye.length,me=this.ǃOpG(ve);else if(ǃJ.ǃHT(ye,Blob)){ge=new zip.ǃOBA(ye),ve=ye.size,me=this.ǃOpG(ve);let Ue=ye.type;Ue||(Ue=ǃJ.MimeType.ǃOaV(ǃJ.ǃHE(re)).ǃCG()),ǃJ.MimeType.ǃOX(Ue).ǃOaz()&&(me=0)}else return void he(_141);this.ǃOpM=0;let be={level:me,ǃOBj:Oe,ǃObv:le};null!=Je&&(be.ǃObP=Je),null!=ue&&(be.version=ue),ie.add(re,ge,Ue=>{this.ǃOpq+=ve,this.ǃOpM=0,ae&&ae.set(re,Ue),pe(this.ǃOpT(ie,ae))},(Ue,Ee)=>{this.ǃOpM=Ue/Ee*ve},be)})}ǃOpi(){return this.ǃOp$}ǃOpa(){return this.ǃOpq+this.ǃOpM}}}{const _142="setInt8",_143="setInt16",_144="getUint8",_145="setInt32",_146="setUint8",_147="setUint32",_148="setUint16",_149="setFloat64",_150="setFloat32",_151="setArrayBuffer",_152="missing DataView",_153="data already commited";let ee=class{constructor(ne,ie,ae,de){if(ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),!ǃJ.ǃLR(ae)&&!ǃJ.ǃIS(ae,ArrayBuffer))throw new Error("unsupported data");this.ǃOpp=ne,this.ǃOpw=ie,this.ǃOpY=ae,this.ǃOpQ=!!de}ǃOpj(){return this.ǃOpp}ǃOpF(){return this.ǃOpw}ǃOpW(){return this.ǃOpY}ǃOpZ(){return this.ǃOpQ}};ǃJ.DataView=class{constructor(ne){ǃJ.ǃq$(ne,ArrayBuffer),this.ǃOpl=null,this.ǃOpx=[],ne&&(this.ǃOpl=new DataView(ne)),this.ǃOpA=0,this.ǃOph=0}ǃpx(){return new Blob([this.ǃOpv()])}ǃOpP(){if(!this.ǃOpl)throw new Error(_152);return this.ǃOpl}ǃOpv(){if(!this.ǃOpl)throw new Error(_152);return this.ǃOpl.buffer}ǃOpd(){this.ǃOph=0}ǃyY(){this.ǃOpl=null,this.ǃOpx=null}ǃOps(){if(this.ǃOpl)throw new Error(_153);let ne=0;for(let ie of this.ǃOpx)ne+=ie.ǃOpF();this.ǃOpl=new DataView(new ArrayBuffer(ne));for(let ie of this.ǃOpx){switch(ie.ǃOpj()){case _142:this.ǃOpl.setInt8(this.ǃOpA,ie.ǃOpW());break;case _146:this.ǃOpl.setUint8(this.ǃOpA,ie.ǃOpW());break;case _143:this.ǃOpl.setInt16(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _148:this.ǃOpl.setUint16(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _145:this.ǃOpl.setInt32(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _147:this.ǃOpl.setUint32(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _150:this.ǃOpl.setFloat32(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _149:this.ǃOpl.setFloat64(this.ǃOpA,ie.ǃOpW(),ie.ǃOpZ());break;case _151:let ae=new Uint8Array(this.ǃOpl.buffer),de=new Uint8Array(ie.ǃOpW());ae.set(de,this.ǃOpA),this.ǃOpl=new DataView(ae.buffer);}this.ǃOpA+=ie.ǃOpF()}this.ǃOpx=null}ǃOcR(ne){let ie=this.ǃOwO("raw");return new Blob([ie],ne)}ǃOwJ(ne){ǃJ.ǃk(ne,ArrayBuffer),this.ǃOwy(ne.byteLength),this.ǃOpx.push(new ee(_151,ne.byteLength,ne))}ǃOwO(ne){switch(ǃJ.ǃJO(ne),ne){case"int8":return this.ǃOwf();case"uint8":return this.ǃOwS();case"clampedUint8":return this.ǃOwn();case"int16":return this.ǃOwX();case"uint16":return this.ǃOwR();case"int32":return this.ǃOwg();case"uint32":return this.ǃOwH();case"float32":return this.ǃOwU();case"float64":return this.ǃOwC();case"raw":return this.ǃOwS().buffer;default:throw new Error("unsupported return type. supported types are 'int8, uint8, clampedUint8, int16, uint16, int32, uint32, float32, float64, raw'");}}ǃOwu(ne){this.ǃOw_(JSON.stringify(ne))}ǃOwm(ne){return JSON.parse(this.ǃOwb(ne))}ǃOw_(ne,ie){ǃJ.ǃJO(ne);let ae=Array.prototype.map.call(ne,(de,re)=>{return ne.charCodeAt(re)});this.ǃOwc(ae,ie)}ǃOwb(ne){return Array.prototype.map.call(this.ǃOwR(ne),ie=>{return String.fromCharCode(ie)}).join("")}ǃOwt(ne){this.ǃOw$(!ne?0:1)}ǃOwq(){return!!this.ǃOwM()}ǃOwB(ne){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_142,Int8Array.BYTES_PER_ELEMENT,ne))}ǃOw$(ne){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_146,Uint8Array.BYTES_PER_ELEMENT,ne))}ǃOwL(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_143,Int16Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwz(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_148,Uint16Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwk(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_145,Int32Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwy(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_147,Uint32Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwV(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_150,Float32Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwK(ne,ie){if(this.ǃOpl)throw new Error(_153);this.ǃOpx.push(new ee(_149,Float64Array.BYTES_PER_ELEMENT,ne,!!ie))}ǃOwo(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_142)}ǃOwr(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_146)}ǃOwI(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_143,!!ie)}ǃOwc(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_148,!!ie)}ǃOwN(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_145,!!ie)}ǃOwG(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_147,!!ie)}ǃOwE(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_150,!!ie)}ǃOwT(ne,ie){this.ǃOwy(ne.length,!!ie),this.ǃOwe(ne,_149,!!ie)}ǃOwD(){let ne=this.ǃOpl.getInt8(this.ǃOph);return this.ǃOph+=Int8Array.BYTES_PER_ELEMENT,ne}ǃOwM(){let ne=this.ǃOpl.getUint8(this.ǃOph);return this.ǃOph+=Uint8Array.BYTES_PER_ELEMENT,ne}ǃOwi(ne){let ie=this.ǃOpl.getInt16(this.ǃOph,!!ne);return this.ǃOph+=Int16Array.BYTES_PER_ELEMENT,ie}ǃOwa(ne){let ie=this.ǃOpl.getUint16(this.ǃOph,!!ne);return this.ǃOph+=Uint16Array.BYTES_PER_ELEMENT,ie}ǃOwp(ne){let ie=this.ǃOpl.getInt32(this.ǃOph,!!ne);return this.ǃOph+=Int32Array.BYTES_PER_ELEMENT,ie}ǃOww(ne){let ie=this.ǃOpl.getUint32(this.ǃOph,!!ne);return this.ǃOph+=Uint32Array.BYTES_PER_ELEMENT,ie}ǃOwY(ne){let ie=this.ǃOpl.getFloat32(this.ǃOph,!!ne);return this.ǃOph+=Float32Array.BYTES_PER_ELEMENT,ie}ǃOwQ(ne){let ie=this.ǃOpl.getFloat64(this.ǃOph,!!ne);return this.ǃOph+=Float64Array.BYTES_PER_ELEMENT,ie}ǃOwf(ne){return this.ǃOwj(this.ǃOww(!!ne),"getInt8",Int8Array)}ǃOwS(ne){return this.ǃOwj(this.ǃOww(!!ne),_144,Uint8Array)}ǃOwn(ne){return this.ǃOwj(this.ǃOww(!!ne),_144,Uint8ClampedArray)}ǃOwX(ne){return this.ǃOwj(this.ǃOww(!!ne),"getInt16",Int16Array,!!ne)}ǃOwR(ne){return this.ǃOwj(this.ǃOww(!!ne),"getUint16",Uint16Array,!!ne)}ǃOwg(ne){return this.ǃOwj(this.ǃOww(!!ne),"getInt32",Int32Array,!!ne)}ǃOwH(ne){return this.ǃOwj(this.ǃOww(!!ne),"getUint32",Uint32Array,!!ne)}ǃOwU(ne){return this.ǃOwj(this.ǃOww(!!ne),"getFloat32",Float32Array,!!ne)}ǃOwC(ne){return this.ǃOwj(this.ǃOww(!!ne),"getFloat64",Float64Array,!!ne)}ǃOwe(ne,ie,ae){let de=ne.length;for(let re=0;re{if(Oe){const Ee=parseFloat(ne.value);if(Ee!==oe)return ve();const Le=Math.round(ye-Ue.detail.clientY),we=""===ne.min?-Infinity:parseFloat(ne.min),xe=""===ne.max?Infinity:parseFloat(ne.max),ke=""===ne.step?1:parseFloat(ne.step);Ue.preventDefault();let Se=Le*ke;Se=ae?re-Se:re+Se,oe=ǃJ.ǃRf(Se,we,xe),ne.value=oe,ne.select(),pe.ǃHp()}},ve=()=>{Oe=!1,re=null,ye=0,ǃJ.ǃU.ǃVq(de),de=null,Je.ǃuO(),ue.ǃuO(),le.ǃOn(Je),le.ǃOn(ue),Je=null,ue=null},be=Ue=>{Ue.target!==ne&&Ue.preventDefault(),Ue.stopPropagation(),ve();let Ee=new Event("change");ne.dispatchEvent(Ee),ie&&ie()};return pe=ǃJ.ǃb(ǃJ.ǃgX,()=>{let Ue=new Event("input");ne.dispatchEvent(Ue)},60),le.ǃCK(ǃJ.ǃJa.ǃJi(ne,"dragstart",Ue=>{Oe||(Ue.preventDefault(),Oe=!0,ye=Ue.clientY,re=parseFloat(ne.value),oe=re,de=ǃJ.ǃU.ǃV_("ns-resize",ne.ownerDocument),Je=ǃJ.ǃJa.ǃJi(ne.ownerDocument,"UIPointerMove",ge),ue=ǃJ.ǃJa.ǃJi(ne.ownerDocument,"UIPointerUp ",be),le.ǃCK(Je),le.ǃCK(ue))})),le.ǃCK(ǃJ.ǃJa.ǃJi(ne,"focus",()=>ne.select())),le.ǃCK(ǃJ.ǃb(ǃJ.ǃJa,()=>{ne=null,ie=null,Je=null,ue=null,le=null,ǃJ.ǃU.ǃVq(de),de=null,pe.ǃyY()})),le}}ǃJ.ǃOwW=class{constructor(te,ne,ie,ae){this.ǃOwZ=null,this.ǃOwl=te,this.ǃOwx=ie,this.ǃOwA=ne,ae||this.ǃOul()}get ǃOwh(){return!!this.ǃOwZ}ǃyY(){this.ǃOwv(),this.ǃOwl=null,this.ǃOwx=null,this.ǃOwP=null}ǃHH(){this.ǃOwh||(this.ǃOwv(),this.ǃOul())}ǃOul(){if(!this.ǃOwh){let te=this.ǃOwx,ne=this.ǃOwl,ie=this.ǃOwA,ae=te?ne.bind(te):ne;this.ǃOwZ=setInterval(ae,ie)}}ǃOwv(){this.ǃOwh&&(clearInterval(this.ǃOwZ),this.ǃOwZ=null)}ǃOwd(te){this.ǃOwA=te,this.ǃHH()}ǃOws(te){this.ǃOwl=te,this.ǃHH()}ǃOTm(te){this.ǃOwx=te,this.ǃHH()}},"use strict";{let ee=new Set;ǃJ.ǃOYO=class{constructor(ie){ǃJ.ǃk(ie,Blob),this.ǃOYJ=ie}ǃOYy(){return this.ǃOYf().then(ie=>this.ǃOYS(ie))}ǃOYf(){return new Promise((ie,ae)=>{let de=this.ǃOYJ.slice(0,Math.min(1024,this.ǃOYJ.size));this.ǃOYJ=null;let re=new FileReader;re.onload=oe=>ie(oe.target.result),re.onerror=ae,re.readAsArrayBuffer(de)})}ǃOYS(ie){for(let ae of ee){let de=ae(ie);if(de)return de}return null}static ǃOYn(ie){ǃJ.ǃ$V(ie),ee.add(ie)}}}{let ee=new Set;ee.add((te,ne)=>{let ie=te.subarray(1,7);if("vorbis"!==ǃJ.ǃOIY(ie,"ascii"))return null;let ae={type:"audio",ǃOYX:"vorbis"},de=te[0];if(1===de){let re=7;ae.version=ne.getUint32(re,!0),re+=4,ae.ǃOYR=ne.getUint8(re),re+=1,ae.sampleRate=ne.getUint32(re,!0),re+=4,ae.ǃOYg=ne.getUint32(re,!0),re+=4,ae.ǃOYH=ne.getUint32(re,!0),re+=4,ae.ǃOYU=ne.getUint32(re,!0),re+=4}return ae}),ee.add((te,ne)=>{let ie=te.subarray(0,8);if("OpusHead"!==ǃJ.ǃOIY(ie,"ascii"))return null;let ae={type:"audio",ǃOYX:"opus"},de=8;return ae.version=ne.getUint8(de),de+=1,ae.ǃOYR=ne.getUint8(de),de+=1,de+=2,ae.ǃOYC=ne.getUint32(de,!0),de+=4,ae.sampleRate=48000,ae}),ǃJ.ǃOYO.ǃOYn(te=>{if("OggS"!==ǃJ.ǃOIw(te,"ascii",0,4))return null;let ne="",ie=[],ae=new Uint8Array(te),de=ae[26],re=27+de;for(let ye=0;yethis.ǃOYm(),10,null,!0),this.ǃOYb=new ǃJ.ǃJD(ǃJ.ǃJa.ǃJi(this.ǃOYu,"open",ae=>this.ǃOYc(ae)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"close",ae=>this.ǃOYt(ae)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"message",ae=>this.ǃOY$(ae)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"error",ae=>this.ǃOYq(ae)),ǃJ.ǃJa.ǃyY(this.ǃUQ)),this.ǃOYM=null,this.ǃOYB=[],this.ǃOYL=new Map,this.ǃOYz=null,this.ǃOYk=null}ǃyY(){this.ǃJy(),this.ǃOYM=null,this.ǃOYb.ǃuO(),this.ǃOYB.length=0,this.ǃOYL.forEach(ie=>ie.ǃyY()),this.ǃOYL.clear()}ǃOYV(){if(this.ǃOYu.readyState!==WebSocket.CLOSED)throw new Error("Websocket is not closed");return this.ǃOYb.ǃuO(),this.ǃOYu=new WebSocket(this.ǃOY_),this.ǃOYu.binaryType="arraybuffer",this.ǃUQ=new ǃJ.ǃOwW(()=>this.ǃOYm(),10,null,!0),this.ǃOYb=new ǃJ.ǃJD(ǃJ.ǃJa.ǃJi(this.ǃOYu,"open",ie=>this.ǃOYc(ie)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"close",ie=>this.ǃOYt(ie)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"message",ie=>this.ǃOY$(ie)),ǃJ.ǃJa.ǃJi(this.ǃOYu,"error",ie=>this.ǃOYq(ie)),ǃJ.ǃJa.ǃyY(this.ǃUQ)),new Promise((ie,ae)=>{this.ǃOYz=ie,this.ǃOYk=ae})}ǃOoN(){return this.ǃMK}ǃOYK(ie,ae,de=ǃJ.WebSocket.ǃOYK.ǃOYo){ǃJ.ǃJO(ie),ǃJ.ǃJO(de),ǃJ.ǃUg(ae);let re=this.ǃOYL.get(ie);if(re||(re=new ǃJ.WebSocket.ǃOYK(this,ie,de),this.ǃOYL.set(ie,re)),!re.ǃOYe(de))throw new Error(`Requested channel is not requested type "${de}"`);return ae?re.ǃOYr(ae):re}ǃOYI(ie,ae){return this.ǃOYK(ie,ae,ǃJ.WebSocket.ǃOYK.ǃOYN)}ǃOYG(ie,ae){return this.ǃOYK(ie,ae,ǃJ.WebSocket.ǃOYK.JSON)}ǃOYE(ie){ǃJ.ǃJO(ie);let ae=this.ǃOYL.get(ie);ae&&ae.ǃyY()}ǃOYT(ie){this.ǃOYL.delete(ie)}ǃJy(ie,ae){this.ǃOYu.close(ie,ae)}ǃOYD(ie,ae,de){ǃJ.ǃk(ae,Uint8Array);const re=new Uint8Array(ae.length+te);for(let oe=0;oe{let oe={data:ie,resolve:de,reject:re};ae?this.ǃOYB.unshift(oe):this.ǃOYB.push(oe),this.ǃOoN()&&!this.ǃUQ.ǃOwh&&(this.ǃOYm(),this.ǃUQ.ǃOul())})}ǃOY$({data:ie}){let ae=new Uint8Array(ie,0,te),de=[,,,];for(let ye=0;yethis.ǃOip.delete(ne))}ǃOYQ(ne){let ie;switch(this.ǃOiD){case te.ǃOYo:ie=ee.decode(ne);break;case te.JSON:ie=JSON.parse(ee.decode(ne));break;case te.ǃOYN:ie=ne;}for(let ae of this.ǃOip)ae(ie)}},ǃJ.WebSocket.ǃOYK.ǃOYN="binary",ǃJ.WebSocket.ǃOYK.JSON="json",ǃJ.WebSocket.ǃOYK.ǃOYo="text"}{function ee(){ǃJ.ǃl&&ǃJ.ǃl.ǃO_?document.body.parentElement.setAttribute("mobile",""):document.body.parentElement.setAttribute("desktop","")}const _157="--window-border-size must specify size in units of 'px'";ǃJ.ǃS.ǃf("lib/ui/lang");const te=new Map([["progress","cursorBackgroundWait"],["wait","cursorWait"],["crosshair","cursorCrosshair"],["move","cursorMove"],["not-allowed","cursorNotAllowed"],["col-resize","cursorResizeCol"],["row-resize","cursorResizeRow"],["ns-resize","cursorResizeNS"],["ew-resize","cursorResizeEW"],["nwse-resize","cursorResizeNWSE"],["nesw-resize","cursorResizeNESW"],["rotate-topleft","cursorRotateTL"],["rotate-top","cursorRotateTop"],["rotate-topright","cursorRotateTR"],["rotate-right","cursorRotateRight"],["rotate-bottomright","cursorRotateBR"],["rotate-bottom","cursorRotateBottom"],["rotate-bottomleft","cursorRotateBL"],["rotate-left","cursorRotateLeft"]]),ne="default",ie=["fr","px","mm","cm","in","pt","pc","vh","vw","vmin","vmax","em","ex","ch","rem"],ae=["auto","top","bottom"];let de=!1,re=null,oe=window.innerWidth,ye=window.innerHeight;window.addEventListener("resize",()=>{oe=window.innerWidth,ye=window.innerHeight},!0);let Oe=NaN,le=NaN,Je=NaN;const ue=new WeakMap;class pe{constructor(he,ge){ǃJ.ǃJO(he),ǃJ.ǃLF(ge),this.ǃOYW=he,this.ǃOYZ="",this.ǃNZ=ge,this.ǃOYl=ge.ownerDocument}ǃqc(){return this.ǃOYl}Set(he){if(ǃJ.ǃJO(he),he!==ne&&!te.has(he))throw new RangeError(`invalid mouse cursor name '${he}'`);this.ǃOYW===he||(this.ǃOYW=he,ǃJ.ǃU.ǃOYx(this)&&this.ǃOYA(!1))}ǃOYA(he){if(this.ǃOYW===ne)return void this.ǃOYh();let ge=te.get(this.ǃOYW);assert(ge,"invalid cursor attribute");(this.ǃOYZ!==ge||he)&&(this.ǃOYh(),this.ǃNZ.setAttribute(ge,""),this.ǃOYZ=ge)}ǃOYh(){this.ǃOYZ&&this.ǃNZ.removeAttribute(this.ǃOYZ),this.ǃOYZ=""}ǃyY(){this.ǃOYh(),this.ǃNZ=null,this.ǃOYl=null}}ǃJ.ǃU=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃOYv(){return de}static ǃOTX(ge){ge=!!ge;ge===de||(de=ge,document.getElementsByTagName("body")[0].dir=ge?"rtl":"ltr")}static ǃOYP(ge){ǃJ.ǃOrg(ge,"#document");let me=ue.get(ge);return me||(me=[],ue.set(ge,me)),me}static ǃOYx(ge){ǃJ.ǃk(ge,pe);const me=ǃJ.ǃU.ǃOYP(ge.ǃqc());let ve=me.length;return ve&&me[ve-1]===ge}static ǃV_(ge,me){ǃJ.ǃJO(ge);let ve=null,be=null;if(me?me.nodeName&&"#document"===me.nodeName?(ve=me,be=ve.body):(ǃJ.ǃLA(me),be=me,ve=be.ownerDocument):(ve=document,be=document.body),ge!==ne&&!te.has(ge))throw new RangeError(`invalid mouse cursor name '${ge}'`);const Ue=ǃJ.ǃU.ǃOYP(ve);if(100<=Ue.length)throw new Error("pushed too many mouse cursors");Ue.length&&Ue[Ue.length-1].ǃOYh();let Ee=ǃJ.ǃb(pe,ge,be);return Ue.push(Ee),Ee.ǃOYA(!1),Ee}static ǃVq(ge){if(ǃJ.ǃq$(ge,pe),!!ge){const me=ǃJ.ǃU.ǃOYP(ge.ǃqc());ge.ǃyY();const ve=me.indexOf(ge);0>ve||(me.splice(ve,1),me.length&&me[me.length-1].ǃOYA(!0))}}static ǃHU(ge){ǃJ.ǃLF(ge),ge&&ge.parentElement&&ge.parentElement.removeChild(ge)}static ǃOYd(ge){ǃJ.ǃJO(ge),ǃJ.ǃU.ǃHU(document.getElementById(ge))}static ǃOYs(ge){ǃJ.ǃJO(ge);let me=document.querySelectorAll(ge);for(let ve=0,be=me.length;ve=Ee?me.insertBefore(we,xe[0]):0me)return!1;if(0===me)return!0;let ve=ge.toLowerCase();for(let be=0,Ue=ie.length;beUe.bottom&&(ge.scrollIntoView(!1),me.scrollTop+=5):"top"===ve?(ge.scrollIntoView(!0),me.scrollTop-=5):"bottom"===ve?(ge.scrollIntoView(!1),me.scrollTop+=5):void 0}static ǃOQC(ge,me){ǃJ.ǃLA(ge),ǃJ.ǃJO(me),me=me.trim();let ve=me.lastIndexOf(" ");if(0>=ve)return void(ge.textContent=me);let be=me.lastIndexOf(" ",ve-1);if(0>=be)return void(ge.textContent=me);ge.textContent=me.substring(0,be+1);let Ue=ǃJ.ǃU.ǃH("span",ge,null,"nowrap");Ue.textContent=me.substring(be+1)}static ǃOnl(ge,me){if(ǃJ.ǃBA(me),me||(me={}),!ǃJ.ǃLX(ge)&&!ǃJ.ǃLn(ge))throw new Error("unexpected argument");let ve=me.parent||document.body,be=me.tag||"div",Ue=me.ǃgx||null,Ee=me.ǃOQu,Le=me.className,we=me.id,xe=!1;Ue||(Ue=document.createElement(be),xe=!0),Ee&&Ue.setAttribute(Ee,""),Le&&(Ue.className=Le),we&&(Ue.id=we),xe&&ve.appendChild(Ue);let ke=window.getComputedStyle(Ue),Se;if(ǃJ.ǃLX(ge))Se=ke.getPropertyValue(ge);else if(ǃJ.ǃLn(ge))for(let Xe of ge)if(Se=ke.getPropertyValue(Xe),Se)break;return xe&&ve.removeChild(Ue),Se}static ǃJl(){if(isNaN(Oe)){let ge=ǃJ.ǃU.ǃOnl("width",{className:"width100em"});if(!ge.endsWith("px"))throw new Error("expected em size in px");Oe=parseFloat(ge)/100}return Oe}static ǃOQ_(){if(isNaN(le)){const ge=ǃJ.ǃU.ǃOnl("--window-border-size");if(!ge.endsWith("px"))throw new Error(_157);le=parseFloat(ge)||7}return le}static ǃOQm(){if(isNaN(Je)){let ge=ǃJ.ǃU.ǃOnl("--window-thin-border-size");if(!ge.endsWith("px"))throw new Error(_157);Je=parseFloat(ge)||1}return Je}static ǃOQb(){return ǃJ.ǃU.ǃOQ_()}static ǃOQc(ge){ge.preventDefault()}static ǃOQt(ge){ge.stopPropagation()}static ǃOQ$(ge){ge.preventDefault(),ge.stopPropagation()}static ǃOSC(ge,me,ve,be){return ǃJ.ǃXq(ge),ǃJ.ǃXq(me),ǃJ.ǃq$(ve,ǃJ.ǃU.ǃJs.ǃUw),ve&&!be&&(be=ve.ǃGl()),ǃJ.ǃU.ǃD.ǃOQq(ge,me,be)||ǃJ.ǃU.ǃOSt.ǃOQq(ge,me,be)||ǃJ.ǃU.ǃkq.ǃOQM(ge,me,ve)}},ǃJ.ǃU.devicePixelRatio=window.devicePixelRatio||1;if("loading"===document.readyState?document.addEventListener("DOMContentLoaded",ee):ee(),!ǃJ.ǃOD){let he=new Set(["input","textarea","datalist"]);document.addEventListener("contextmenu",ge=>{let me=ge.target,ve=me.tagName.toLowerCase();he.has(ve)||ǃJ.ǃOrx(me)||ge.preventDefault()}),document.addEventListener("mousewheel",ge=>{ǃJ.ǃeh.ǃaG(ge)&&ge.preventDefault()})}}{const _158="theme not loaded yet";let ee="",te=!1,ne=null,ie=null;ǃJ.ǃU.ǃOQB=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃGY(de){ǃJ.ǃJO(de);const re=`theme/${de}/import.html`;return window.addImport(re,!0).then(oe=>{if(te)throw new Error("can't change theme at runtime yet");ee=ǃJ.ǃy(oe.URL),te=!0})}static ǃOQL(){if(!te)throw new Error(_158);return ee}static ǃOQz(){if(!te)throw new Error(_158);return ee+"icons/"}static ǃOQk(){return ie?Promise.resolve(ie):ne?ne:(ne=ǃJ.ǃgT(ǃJ.ǃU.ǃOQB.ǃOQz()+"precompiled-icons.json").then(de=>{return ie=de,ne=null,ie}).catch(de=>{throw ne=null,de}),ne)}}}{const _159="using removed window",ee=new Map;let te=!ǃJ.ǃYG.ǃYN("default-layout")&&ǃJ.ǃb(ǃJ.ǃOGJ,"UI_STATE"),ne=ǃJ.ǃb(ǃJ.ǃOGJ,"UI_USERDATA");ǃJ.ǃU.Window=class extends ǃJ.Event.ǃU_{constructor(ae,de){ǃJ.ǃLA(ae),ǃJ.ǃUV(de),super(),this.ǃNZ=ae,this.ǃOYj=de||"",this.ǃOQV=null,this.ǃOQK=!1,this.ǃOQo=-1,this.ǃOQe=null,this.ǃOQr=!1,this.ǃwD=0,this.ǃwi=0,this.ǃOQI=0,this.ǃOQN=0,this.ǃOQG="",this.ǃOHf=0,this.ǃOHS=0,this.ǃOHn=0,this.ǃOHX=0,this.ǃOQE=!1,ǃJ.ǃU.ǃJQ.ǃOQT(this)}ǃOn(){assert(!this.ǃOQE,"window already removed"),ǃJ.ǃU.ǃJQ.ǃLK(this),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃOQE=!0,this.ǃOQV&&ee.delete(this.ǃOQV),this.ǃOQV=null,super.ǃyY()}ǃ_(){return assert(!this.ǃOQE,_159),this.ǃNZ}ǃqc(){return this.ǃNZ.ownerDocument}ǃGl(){const ae=this.ǃqc();return ae?ae.defaultView:null}ǃyg(){return this.ǃOYj}ǃyo(ae){ǃJ.ǃJO(ae),this.ǃOYj=ae}ǃOQD(ae){if(ǃJ.ǃJO(ae),ee.has(ae))throw new Error("Identifier already in use");ee.set(ae,this),this.ǃOQV=ae}ǃOQi(){return this.ǃOQV}ǃOQa(ae){let de=this.ǃOQV;de&&ne&&ne.set(de,ae)}ǃOQp(){ne&&ne.ǃOGC("clear").then(()=>ne.release()).then(()=>ne=null)}ǃOQw(){let ae=this.ǃOQV;return ae&&ne&&ne.get(ae)}ǃOQY(){let ae=this.ǃOQV;return ae&&ne&&ne.has(ae)}ǃOQQ(ae){let de=this.ǃOQV;de&&te&&te.set(de,ae)}ǃOQj(){te&&te.ǃOGC("clear").then(()=>te.release()).then(()=>te=null)}ǃOQF(){let ae=this.ǃOQV;return ae&&te&&te.get(ae)}ǃOQW(){let ae=this.ǃOQV;return ae&&te&&te.has(ae)}ǃOQZ(){throw new Error("derived class must override")}ǃBE(){this.ǃOQZ()&&ǃJ.ǃU.ǃJQ.ǃBE(this)}ǃOQl(ae){ǃJ.ǃXq(ae);let de=this.ǃ_();de.style.zIndex=0>ae?"":ae,this.ǃOQo=ae}ǃOQx(){return this.ǃOQo}static ǃob(ae,de){return ae.ǃOQx()-de.ǃOQx()}ǃXb(){return!0}ǃBY(){return this.ǃOQK}ǃOQA(ae){ae=!!ae;this.ǃOQK===ae||(this.ǃOQK=ae,ǃJ.ǃU.ǃrx(this.ǃNZ,"active",this.ǃOQK))}ǃHt(){this.ǃOQe=null}ǃOQh(){this.ǃOQe=this.ǃ_().getBoundingClientRect()}ǃXt(){return assert(!this.ǃOQE,_159),this.ǃOQe||this.ǃOQh(),this.ǃOQe}ǃV$(ae,de){ǃJ.ǃXq(ae),ǃJ.ǃXq(de);let re=this.ǃXt();return ae>=re.left&&ae=re.top&&de{let Je=le.detail;ǃJ.ǃU.ǃJQ.ǃOju(Oe,Je.clientX,Je.clientY,Je.id,Je.ǃTd)&&(le.preventDefault(),le.stopPropagation())}),Oe.document.addEventListener("keydown",le=>{ǃJ.ǃU.ǃJQ.ǃi$(le)}),Oe.document.addEventListener("keypress",le=>{ǃJ.ǃU.ǃJQ.ǃCj(le)}),Oe.document.addEventListener("keyup",le=>{ǃJ.ǃU.ǃJQ.ǃOyB(le)}),Oe.document.addEventListener("cut",le=>{ǃJ.ǃU.ǃJQ.ǃYU(le)}),Oe.document.addEventListener("copy",le=>{ǃJ.ǃU.ǃJQ.ǃYC(le)}),Oe.document.addEventListener("paste",le=>{ǃJ.ǃU.ǃJQ.ǃYu(le)}),Oe.addEventListener("blur",()=>{ae=ie,ǃJ.ǃU.ǃJQ.ǃrD(null)}),Oe.addEventListener("focus",()=>{!ie&&ae&&ǃJ.ǃU.ǃJQ.ǃrD(ae),ae=null})}(window);class ye extends ǃJ.Event.ǃU_{constructor(){super()}ǃHu(Oe){ǃJ.ǃLA(Oe);for(const le of ne)if(le.ǃ_()===Oe)return le;return null}ǃOQT(Oe){ǃJ.ǃk(Oe,ǃJ.ǃU.Window),ne.push(Oe)}ǃLK(Oe){ǃJ.ǃk(Oe,ǃJ.ǃU.Window),this.ǃOj_(Oe),ae===Oe&&(ae=null);let le=ne.indexOf(Oe);assert(0<=le,"cannot find window"),ne.splice(le,1),this.ǃOjm()}*ǃHq(Oe){for(let le=ne.length-1;0<=le;--le){const Je=ne[le];Oe&&Je.ǃGl()!==Oe||(yield Je)}}ǃOju(Oe,le,Je,ue){ǃJ.ǃXq(le),ǃJ.ǃXq(Je),ǃJ.ǃXq(ue);let he=ǃJ.ǃU.ǃOSt.ǃOjb();if(he&&he.ǃKv()){for(let ge of he.ǃOjc())if(ge.ǃV$(le,Je))return this.ǃrD(ge.ǃOQv()),!1;if(he.ǃV$(le,Je))return this.ǃrD(he.ǃOQv()),!1}else for(let ge of this.ǃHq(Oe))if(ge.ǃV$(le,Je)&&(!he||ge===he))return this.ǃrD(ge.ǃOQv()),!1}ǃBE(Oe){ǃJ.ǃk(Oe,ǃJ.ǃU.Window);let le=ne.indexOf(Oe);0>le||(ne.splice(le,1),ne.push(Oe),this.ǃOjm())}ǃOjm(){let Oe=[];for(let Je of ne)Je.ǃOQZ()||(Je.ǃOQl(-1),Oe.push(Je));let le=1;for(let Je of ne)Je.ǃOQZ()&&(Je.ǃOQl(le++),Oe.push(Je));if(!ǃJ.ǃsF(Oe,ne)){ǃJ.ǃmx(ne,Oe);let Je=new ǃJ.Event("zindexchanged");this.dispatchEvent(Je)}}ǃrD(Oe,le){if(ǃJ.ǃq$(Oe,ǃJ.ǃU.Window),ie!==Oe){de="",-1!=re&&(window.clearTimeout(re),re=-1),ie&&ie.ǃOQA(!1),ie=Oe,ie&&(!le&&this.ǃBE(ie),ie.ǃOQA(!0));let Je=new ǃJ.Event("activewindowchange");this.dispatchEvent(Je)}}ǃym(){return ie}ǃi$(Oe){return Oe.which===ǃJ.ǃCi.ǃiz&&ǃJ.ǃU.ǃOSt.ǃOjt()?void Oe.preventDefault():void(ie&&ie.ǃi$(Oe))}ǃOyB(Oe){ie&&ie.ǃOyB(Oe)}ǃCj(Oe){if(Oe.key&&ie){const le=ie.ǃ_().ownerDocument;if(!ǃJ.ǃiq(le)){de+=Oe.key,-1!=re&&window.clearTimeout(re),re=window.setTimeout(ee,1e3);const Je=new ǃJ.Event("searchinput");Je.ǃzP=de,ie.dispatchEvent(Je)}}}ǃYU(Oe){ie&&ie.ǃYU(Oe)}ǃYC(Oe){ie&&ie.ǃYC(Oe)}ǃYu(Oe){ie&&ie.ǃYu(Oe)}ǃOj_(Oe){if(ǃJ.ǃk(Oe,ǃJ.ǃU.Window),Oe===ie){for(let le=ne.length-1,Je;0<=le;--le)if(Je=ne[le],Je!==Oe&&Je.ǃXb())return void this.ǃrD(Je,!0);this.ǃrD(null)}}ǃOQq(Oe,le,Je,ue){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),ǃJ.ǃq$(Je,ǃJ.ǃU.Window);let pe=ǃJ.ǃU.ǃOSt.ǃOjb();if(pe&&pe.ǃKv()){for(let he of pe.ǃOjc())if(he!==Je&&he.ǃV$(Oe,le))return!0;if(pe===Je)return!1;if(pe.ǃV$(Oe,le))return!0}else for(let he of this.ǃHq(ue))if(he!==Je&&he.ǃV$(Oe,le))return!0;return!1}ǃOj$(Oe,le,Je,ue){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),ǃJ.ǃk(Je,ǃJ.ǃU.Window);let pe=ǃJ.ǃU.ǃOSt.ǃOjb();if(pe&&pe.ǃKv()){for(let he of pe.ǃOjc()){if(he===Je)return!1;if(he.ǃV$(Oe,le))return!0}if(pe===Je)return!1;if(pe.ǃV$(Oe,le))return!0}else for(let he of this.ǃHq(ue)){if(he===Je)return!1;if(he.ǃV$(Oe,le))return!0}throw new Error("couldn't find window")}}ǃJ.ǃU.ǃJQ=ǃJ.ǃb(ye)}{window.addEventListener("message",ne=>{ne.origin!==location.origin||ǃJ.ǃU.ǃOjq.ǃOY$(ne.source,ne.data)});let ee=new Set,te=new Map;ǃJ.ǃU.ǃOjq=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃOjM(ie,ae,de,re,oe,ye){ǃJ.ǃJO(ie),ǃJ.ǃJO(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re),ǃJ.ǃaB(oe),ǃJ.ǃaB(ye);let Oe,le;Oe="number"==typeof oe?oe:window.screenX+window.outerWidth/2-de/2,le="number"==typeof ye?ye:window.screenY+window.outerHeight/2-re/2;let Je=`width=${de},height=${re},left=${Oe},top=${le},menubar=no,toolbar=no,location=no,personalbar=no,status=no,dependent=yes,dialog=yes,resizable=yes,scrollbars=no`,ue=window.open(ie,ae,Je);return new Promise((pe,he)=>{return ue?void te.set(ue,{resolve:pe,reject:he}):void he()})}static ǃOY$(ie,ae){if(ae&&"object"==typeof ae&&"string"==typeof ae.type)switch(ae.type){case"ready":ǃJ.ǃU.ǃOjq.ǃOjB(ie);break;case"keydown-event":ǃJ.ǃU.ǃOjq.ǃOjL(ae.event);break;case"closed":ǃJ.ǃU.ǃOjq.ǃOjz(ie);}}static ǃOjB(ie){ee.add(ie);let ae=te.get(ie);ae&&ae.resolve(ie),te.delete(ie),ie.addEventListener("unload",()=>{ǃJ.ǃU.ǃOSt.ǃOjk(ie).forEach(de=>{de.ǃOmz(!0)})}),ǃJ.ǃU.ǃOjq.ǃOjV(ie,"init-settings",{uiEffectsEnabled:app.ǃORT()}),ǃJ.ǃU.ǃOSt.ǃOjK(ie)}static ǃOjz(ie){ee.delete(ie);let ae=te.get(ie);ae&&ae.reject(ie),te.delete(ie)}static ǃOjV(ie,ae,de){ie.postMessage({type:ae,param:de},location.origin)}static ǃOjL(ie){const ae=new ǃJ.Event("external-keydown");ae.ǃqp=ie,app.dispatchEvent(ae)}static ǃOjo(ie){ie=!!ie;for(let ae of ee)ǃJ.ǃU.ǃOjq.ǃOjV(ae,"show-dimmer",ie)}static ǃOje(ie,ae,de){ǃJ.ǃJO(ie),ǃJ.ǃUV(name),ǃJ.ǃUV(ae),ǃJ.ǃLF(de);let re=window.open(ie,null,ae);if(re)return Promise.resolve(re);let oe=ǃJ.ǃU.ǃOR.ǃOX("OpenPopupWindow");return oe.ǃOg(ie,ae,de)}}}{function ee(ue){ue.document.addEventListener("UIPointerDown",pe=>{let he=pe.detail;ǃJ.ǃU.ǃOSt.ǃOju(ue,he.clientX,he.clientY,he.id,he.ǃTd)&&(pe.preventDefault(),pe.stopPropagation())}),ue.document.addEventListener("UIPointerMove",pe=>{let he=pe.detail;ǃJ.ǃU.ǃOSt.ǃOjr(ue,he.clientX,he.clientY,he.id)&&(pe.preventDefault(),pe.stopPropagation())}),ue.document.addEventListener("UIPointerUp",pe=>{let he=pe.detail;ǃJ.ǃU.ǃOSt.ǃOjI(ue,he.clientX,he.clientY,he.screenX,he.screenY,he.id)&&(pe.preventDefault(),pe.stopPropagation())})}let te=new Map,ne=new Set,ie=new Set,ae=new Map,de=new Map,re=new Map,oe=new Map,ye=!1,Oe=null;window.C3_IsPopupWindow||ee(window),window.addEventListener("focus",()=>{let pe=ǃJ.ǃU.ǃOSt.ǃOjb();pe&&ǃJ.ǃU.ǃJQ.ǃrD(pe)});let le=null,Je=ǃJ.ǃb(ǃJ.Event.ǃU_);ǃJ.ǃU.ǃOSt=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃOjN(pe,he){if(ǃJ.ǃJO(pe),ǃJ.ǃ$V(he),te.has(pe))throw new Error(`dialog name '${pe}' already in use`);te.set(pe,{ǃOjG:he,ǃur:[]})}static ǃOjE(pe,he){ǃJ.ǃJO(pe);let ge=te.get(pe);if(!ge)throw new Error(`dialog name '${pe}' not found`);let me=null;if(he){for(let ve of ge.ǃur)if(!ve.ǃOk()){me=ve;break}}else ge.ǃur.length&&(me=ge.ǃur[0]);return me||(ye=he,me=ǃJ.ǃb(ge.ǃOjG,he),ge.ǃur.push(me),me.ǃyo(pe),me.ǃOQD("DIALOG_"+pe+ge.ǃur.length),me.ǃOjT(),ye=!1),me}static ǃOjD(){return ye}static ǃOji(){return!!this.ǃOjb()}static ǃOjb(){const pe=[...ie];return pe.length?pe[pe.length-1]:null}static ǃOja(){const pe=[...ne];return pe.reverse(),pe}static ǃOjp(pe){const he=[];for(const ge of ne)pe===ge.ǃqc()&&he.push(ge);return he}static ǃOjk(pe){const he=[];for(const ge of ne)pe&&pe!==ge.ǃGl()||he.push(ge);return he}static ǃOjw(pe){let he=ǃJ.ǃU.ǃOSt.ǃOjb(),ge=ǃJ.ǃU.ǃOSt.ǃOja();return he?(ǃJ.ǃPS(ge,me=>!me.ǃOjY()||!me.ǃoH()===he||pe&&me.ǃGl()!==pe),(!pe||he.ǃGl()===pe)&&ge.push(he)):ǃJ.ǃPS(ge,me=>me.ǃOjQ()||pe&&me.ǃGl()!==pe),ge}static ǃOjj(){let pe=ǃJ.ǃU.ǃJQ.ǃym();return pe instanceof ǃJ.ǃU.ǃOR?pe:null}static ǃOjK(pe){ee(pe)}static ǃOjF(pe,he){ǃJ.ǃk(pe,ǃJ.ǃU.ǃOR),he?(ne.add(pe),pe.ǃOjW()&&(ie.add(pe),this.ǃOjZ("showmodal",pe)),ǃJ.ǃU.ǃJQ.ǃrD(pe)):(ne.delete(pe),pe.ǃOjW()&&(ie.delete(pe),this.ǃOjZ("hidemodal",pe)))}static ǃOQq(pe,he,ge){ǃJ.ǃXq(pe),ǃJ.ǃXq(he);for(const me of ǃJ.ǃU.ǃOSt.ǃOjk(ge))if(me.ǃV$(pe,he))return!0;return!1}static ǃOjl(pe){ǃJ.ǃk(pe,ǃJ.ǃU.ǃOR);const he=pe.ǃnK(),ge=pe.ǃne();for(const me of ǃJ.ǃU.ǃOSt.ǃOjk(pe.ǃGl()))if(pe!==me&&me.ǃnK()===he&&me.ǃne()===ge)return!0;return!1}static ǃjX(){return 0{ǃJ.ǃU.ǃOSt.ǃO_F.ǃOio("load")})}static ǃOjd(pe,he,ge,me){(ǃJ.ǃk(pe,ǃJ.ǃU.ǃOR),ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(me),!(de.has(pe)||oe.has(pe)))&&(ǃJ.ǃU.ǃD.ǃOQq(he,ge,pe.ǃGl())||(ǃJ.ǃU.ǃOSt.ǃOju(pe.ǃGl(),he,ge,me),oe.has(pe)||(ae.set(me,pe),de.set(pe,me),pe.ǃOQP(he,ge),pe.ǃOjO(pe.ǃnK()-he,pe.ǃne()-ge),pe.ǃOjs("startdragging"))))}static ǃOju(pe,he,ge,me,ve){if(ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(me),ae.has(me)||re.has(me)||ǃJ.ǃU.ǃD.ǃOQq(he,ge,pe))return!1;for(const be of ǃJ.ǃU.ǃOSt.ǃOjw(pe)){const Ue=be.ǃOFO(he,ge);if("m"===Ue)return!1;if(Ue&&ve===ǃJ.ǃDO.ǃaa){if(de.has(be))return!1;if(ǃJ.ǃU.ǃJQ.ǃOj$(he,ge,be,pe))break;return re.set(me,be),oe.set(be,me),be.ǃOjs("startresizing"),be.ǃOjf(Ue),be.ǃOQP(he,ge),be.ǃOjn(be.ǃnK(),be.ǃne()),be.ǃOjg(be.ǃfI(),be.ǃfG()),!0}}return!1}static ǃOjr(pe,he,ge,me){if(ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(me),ǃJ.ǃORg.ǃOih(me))return!1;if(ae.has(me))return ǃJ.ǃU.ǃOSt.ǃOFJ(he,ge,me,ae.get(me)),!0;if(re.has(me))return ǃJ.ǃU.ǃOSt.ǃOFy(he,ge,me,re.get(me)),!0;if(ǃJ.ǃU.ǃD.ǃOQq(he,ge,pe))return le&&le.Set("default"),!1;for(const ve of ǃJ.ǃU.ǃOSt.ǃOjw(pe)){const be=ve.ǃOFO(he,ge);if(be){if(ǃJ.ǃU.ǃJQ.ǃOj$(he,ge,ve,pe))break;if(le)"e"===be||"w"===be?le.Set("ew-resize"):"n"===be||"s"===be?le.Set("ns-resize"):"nw"===be||"se"===be?le.Set("nwse-resize"):"ne"===be||"sw"===be?le.Set("nesw-resize"):"m"===be&&(ǃJ.ǃU.ǃVq(le),le=null);else{const Ue=ve.ǃqc();"e"===be||"w"===be?le=ǃJ.ǃU.ǃV_("ew-resize",Ue):"n"===be||"s"===be?le=ǃJ.ǃU.ǃV_("ns-resize",Ue):"nw"===be||"se"===be?le=ǃJ.ǃU.ǃV_("nwse-resize",Ue):("ne"===be||"sw"===be)&&(le=ǃJ.ǃU.ǃV_("nesw-resize",Ue))}return!!le}}return ǃJ.ǃU.ǃVq(le),le=null,!1}static ǃOFJ(pe,he,ge,me){ǃJ.ǃXq(pe),ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃk(me,ǃJ.ǃU.ǃOR),me.ǃOOy(pe+me.ǃOjJ()),me.ǃOOS(he+me.ǃOjy())}static ǃOFy(pe,he,ge,me){ǃJ.ǃXq(pe),ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃk(me,ǃJ.ǃU.ǃOR);let ve=pe-me.ǃOQd(),be=he-me.ǃOQs(),Ue=me.ǃOjX(),Ee=me.ǃOjR(),Le=me.ǃOjH(),we=me.ǃOjU(),xe=me.ǃOjS();if("e"===xe||"se"===xe||"ne"===xe)me.ǃcY(Le+ve);else if("w"===xe||"sw"===xe||"nw"===xe){let ke=Ue+Le-me.ǃOFf();me.ǃOOy(Math.min(Ue+ve,ke)),me.ǃcY(Le-ve)}if("s"===xe||"sw"===xe||"se"===xe)me.ǃcQ(we+be);else if("n"===xe||"nw"===xe||"ne"===xe){let ke=Ee+we-me.ǃOFS();me.ǃOOS(Math.min(Ee+be,ke)),me.ǃcQ(we-be)}}static ǃOjI(pe,he,ge,me,ve,be){if(ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(be),ae.has(be)){let Ue=ae.get(be);if(ǃJ.ǃU.ǃOSt.ǃOFJ(he,ge,be,Ue),(0>he||0>ge||he>window.innerWidth||ge>window.innerHeight)&&Ue.ǃOFn()){let Ee=ǃJ.ǃU.devicePixelRatio;Ue.ǃYp(me/Ee+Ue.ǃOjJ(),ve/Ee+Ue.ǃOjy()).catch(()=>Ue.ǃOFX())}else Ue.ǃOFX();return ae.delete(be),de.delete(Ue),Ue.ǃOFR(),Ue.ǃOjs("finishdragging"),!0}if(re.has(be)){let Ue=re.get(be);ǃJ.ǃU.ǃOSt.ǃOFy(he,ge,be,Ue),Ue.ǃOFX(),re.delete(be),oe.delete(Ue),Ue.ǃOFR(),Ue.ǃOjs("finishresizing")}return!1}static ǃOjZ(pe,he){ǃJ.ǃJO(pe),ǃJ.ǃq$(he,ǃJ.ǃU.ǃOR);let ge=new ǃJ.Event(pe);ge.ǃOFg=he,this.dispatchEvent(ge)}static addEventListener(pe,he,ge){Je.addEventListener(pe,he,ge)}static removeEventListener(pe,he,ge){Je.removeEventListener(pe,he,ge)}static dispatchEvent(pe){return Je.dispatchEvent(pe)}},ǃJ.ǃU.ǃOSt.ǃO_F=ǃJ.ǃb(ǃJ.Event.ǃU_)}{const _163="widthchange",_164="heightchange",_165="inPopupWindow",_166="UIPointerDown",_167="startresizing",_168="startdragging",_169="positionchange",_170="afterpopupclose",_171="ui-dialog-caption",ee={duration:200,easing:"ease-out"},de=30;let re=new Map;ǃJ.ǃU.ǃOR=class extends ǃJ.ǃU.Window{constructor(ye){if(ǃJ.ǃLA(ye,"dialog"),ǃJ.ǃU.ǃOSt.ǃOjD()&&(ye=ye.cloneNode(!0)),super(ye),re.has(ye))throw new Error("dialog class already created");re.set(ye,this),this.ǃOFH=ye.querySelector(_171),this.ǃOFU=ye.querySelector("ui-dialog-contents"),this.ǃOFC=ye.querySelector("ui-dialog-footer"),this.ǃOFu=this.ǃNZ.ownerDocument,this.ǃOF_=null,this.ǃNZ.hasAttribute("role")||this.ǃNZ.setAttribute("role","dialog"),this.ǃOFm=this.ǃNZ.hasAttribute("resizable"),this.ǃOFb=!0,this.ǃOFc=!1,this.ǃOFt=!1,this.ǃOF$=null,this.ǃOFq=!1,this.ǃOFM=null,this.ǃOFB=null,this.ǃOFL=null,this.ǃOFz=this.ǃNZ.querySelector(_171),this.ǃOFk=null,this.ǃOFV=!1,this.ǃOFK=null,this.ǃOFo=!1,this.ǃOFe=!1,this.ǃOFr=!0,this.ǃOFI=!1,this.ǃOFN="",this.ǃXx=0,this.ǃXA=0,this.ǃtu=0,this.ǃt_=0,this.ǃOFG=0,this.ǃOFE=0,this.ǃRl=()=>this.ǃOFX(),this.ǃZE=null,this.ǃOFT=null,this.ǃOFD=!1,this.ǃOFi=!1,this.ǃOFa=null,this.ǃOFp=()=>this.ǃYq(),this.ǃOFw=null,this.ǃOFY=null,this.ǃOFz&&(this.ǃOFN=this.ǃOFz.textContent,ǃJ.ǃU.ǃHL(this.ǃOFz),this.ǃOFk=ǃJ.ǃU.ǃH("span",this.ǃOFz,null,"dialog-caption-text"),this.ǃOFk.textContent=this.ǃOFN,this.ǃZE=Oe=>{Oe.detail.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃOFQ(Oe.detail.clientX,Oe.detail.clientY,Oe.detail.id)},this.ǃOFT=Oe=>this.ǃOFj(Oe),this.ǃOFz.addEventListener("contextmenu",this.ǃOFT),this.ǃNZ.hasAttribute("closebutton")&&(this.ǃOFw=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃUC,this.ǃOFz),this.ǃOFw.onclick=()=>this.ǃOmq()),this.ǃNZ.hasAttribute("backbutton")&&(this.ǃOFY=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃOFF,this.ǃOFz),this.ǃOFY.onclick=()=>this.ǃOFW())),this.ǃOFZ=null,this.ǃOFl=[],this.ǃOFx=[],this.ǃOFA=0,this.ǃOFh=0,this.ǃOFv=null,this.ǃOFP=null,this.ǃOFd=Oe=>this.ǃOFs(Oe),this.ǃOWO=Oe=>this.ǃOWJ(Oe),this.ǃOWy=Oe=>this.ǃOWf(Oe),this.ǃOWS=!1}ǃOjT(){}ǃOQW(){if(super.ǃOQW()){let ye=this.ǃOQF();return ye.devicePixelRatio===window.devicePixelRatio}return!1}ǃOFR(...ye){if(!(this.ǃOjA()||this.ǃOHG())&&!this.ǃOWS&&this.ǃOYj&&this.ǃOFb&&ǃJ.ǃU.ǃOR.ǃOX(this.ǃOYj)===this){let Oe=this.ǃOF_&&this.ǃOF_.defaultView,le={popup:this.ǃOWn(),nested:this.ǃOjY(),width:this.ǃtu,height:this.ǃt_,resizable:this.ǃOFm,devicePixelRatio:window.devicePixelRatio,xRatio:Oe&&this.ǃXx/Oe.innerWidth,yRatio:Oe&&this.ǃXA/Oe.innerHeight,xParentRatio:Oe&&this.ǃOWX()/Oe.innerWidth,yParentRatio:Oe&&this.ǃOWR()/Oe.innerHeight};Object.assign(le,...ye),this.ǃOQQ(le)}}ǃOWg(){this.ǃOWS=!0;let ye=this.ǃOQF();if(this.ǃOFb&&ye)if(ye.popup)this.ǃYp(screen.width/2,screen.height/2);else{if(this.ǃOFc)this.ǃOWH();else{var Oe=this.ǃOF_&&this.ǃOF_.defaultView;if(Oe&&"xRatio"in ye&&"yRatio"in ye)if("nested"in ye&&"xParentRatio"in ye&&"yParentRatio"in ye){let le=this.ǃOWX(),Je=this.ǃOWR(),ue=ye.xParentRatio*Oe.innerWidth,pe=ye.yParentRatio*Oe.innerHeight;this.ǃOWU(ye.xRatio*Oe.innerWidth-(le-ue),ye.yRatio*Oe.innerHeight-(Je-pe))}else this.ǃOWU(ye.xRatio*Oe.innerWidth,ye.yRatio*Oe.innerHeight)}ye.resizable&&(this.ǃcY(ye.width),this.ǃcQ(ye.height)),this.ǃOFX()}this.ǃOWS=!1}static ǃO_W(ye,Oe){ǃJ.ǃU.ǃOSt.ǃOjN(ye,Oe)}static ǃOX(ye,Oe){return ǃJ.ǃU.ǃOSt.ǃOjE(ye,Oe)}static ǃOWC(ye){return re.get(ye)||null}ǃtR(ye){if(ǃJ.ǃUV(ye),this.ǃOFk){let Oe=ye||window.app.ǃyg();this.ǃOFN!==Oe&&(this.ǃOFk.textContent=Oe,this.ǃOFN=Oe)}}ǃOWu(){return!0}ǃOW_(){return!1}ǃOQZ(){return this.ǃOk()}ǃOk(){return this.ǃOFo||this.ǃOFe||this.ǃOFK||(ǃJ.ǃOeG.ǃOeD?this.ǃNZ.open:this.ǃOFV)}ǃXb(){return ǃJ.ǃOeG.ǃOeD?this.ǃNZ.open&&!this.ǃOFe:this.ǃOFV&&!this.ǃOFe}ǃOWm(){return!!(this.ǃOFo||this.ǃOFe||this.ǃOFK)}ǃOWb(){return this.ǃOFo}ǃOjx(){return this.ǃOFe}ǃOWn(){return!!this.ǃOFa}ǃOWc(){return this.ǃOF_===document}ǃOjA(){return ǃJ.ǃU.ǃOSt.ǃOjA(this)}ǃOHG(){return ǃJ.ǃU.ǃOSt.ǃOHG(this)}ǃoH(){return this.ǃOFZ||this.ǃOFv}ǃOjY(){return!!this.ǃOFZ||!!this.ǃOFv}ǃOWt(){return!!this.ǃOjY()&&-1!==this.ǃoH().ǃOW$().indexOf(this)}ǃOWq(){return!!this.ǃOjY()&&-1!==this.ǃoH().ǃOWM().indexOf(this)}ǃOWB(){return this.ǃOFH}ǃO_w(){return this.ǃOFU}ǃOWL(){return this.ǃOFC}ǃO_c(ye){ǃJ.ǃJO(ye);let Oe=this.ǃNZ.querySelector("."+ye);if(!Oe)throw new Error(`missing dialog element with class name: ${ye}`);return Oe}ǃOWz(ye){ǃJ.ǃJO(ye);let Oe=this.ǃNZ.querySelector("#"+ye);if(!Oe)throw new Error(`missing dialog element with id: ${ye}`);return Oe}ǃOWk(ye){ǃJ.ǃJO(ye);let Oe=this.ǃNZ.getElementsByTagName(ye);if(!Oe)throw new Error(`tag '${ye}' does not match any element`);return Oe}ǃOWV(ye){ǃJ.ǃJO(ye);let Oe=this.ǃNZ.querySelector(ye);if(!Oe)throw new Error(`CSS selector '${ye}' does not match any element`);return Oe}ǃY$(){return this.ǃOFa}ǃOWK(ye){this.ǃOF_=ye?ye.ownerDocument:this.ǃOFa?this.ǃOFa.document:document,assert(this.ǃOF_,"no display document for dialog")}ǃOWo(ye){ǃJ.ǃk(ye,ǃJ.ǃU.ǃOR);let Oe=this.ǃOFx.indexOf(ye);assert(-1===Oe,"child popup window is already part of parent dialog"),this.ǃOFx.push(ye),ye.addEventListener(_170,this.ǃOWy)}ǃOWe(ye){ǃJ.ǃk(ye,ǃJ.ǃU.ǃOR);let Oe=this.ǃOFx.indexOf(ye);assert(-1!==Oe,"child popup window is not part of parent dialog"),this.ǃOFx.splice(Oe,1),ye.removeEventListener(_170,this.ǃOWy)}ǃOWf(ye){let Oe=ye.ǃOFg,le=Oe.ǃoH();assert(le,"parent can not be null when a child popup is closed"),le.ǃOWe(Oe)}ǃOWr(ye){ǃJ.ǃk(ye,ǃJ.ǃU.ǃOR);let Oe=this.ǃOFl.indexOf(ye);assert(-1===Oe,"child dialog is already part of parent dialog"),ye.ǃOFZ=this,this.ǃOFl.length||(this.addEventListener(_169,this.ǃOWO),this.addEventListener(_163,this.ǃOWO),this.addEventListener(_164,this.ǃOWO),this.addEventListener(_168,this.ǃOFd),this.addEventListener(_167,this.ǃOFd)),this.ǃOFl.push(ye)}ǃOWI(ye){ǃJ.ǃk(ye,ǃJ.ǃU.ǃOR);let Oe=this.ǃOFl.indexOf(ye);assert(-1!==Oe,"child dialog is not part of parent dialog"),this.ǃOFl.splice(Oe,1),ye.ǃOFZ=null,this.ǃOFl.length||(this.removeEventListener(_169,this.ǃOWO),this.removeEventListener(_163,this.ǃOWO),this.removeEventListener(_164,this.ǃOWO),this.removeEventListener(_168,this.ǃOFd),this.removeEventListener(_167,this.ǃOFd))}ǃOWN(){for(let ye of this.ǃOFl)ye.ǃOFi||ye.ǃOmz(),ye.ǃOFZ=null;if(ǃJ.ǃXX(this.ǃOFl),!this.ǃOFi){for(let ye of this.ǃOFx)ye.ǃOFi||ye.ǃOmz(),ye.removeEventListener(_170,this.ǃOWy),ye.ǃOFv=null;ǃJ.ǃXX(this.ǃOFx)}this.removeEventListener(_169,this.ǃOWO),this.removeEventListener(_163,this.ǃOWO),this.removeEventListener(_164,this.ǃOWO),this.removeEventListener(_168,this.ǃOFd),this.removeEventListener(_167,this.ǃOFd)}ǃKv(){return!!this.ǃOFl.length}ǃOWG(){return!!this.ǃOFx.length}ǃOW$(){return this.ǃOFl}ǃOWM(){return this.ǃOFx}*ǃOjc(){for(let ye=this.ǃOFl.length-1;0<=ye;--ye)yield this.ǃOFl[ye]}ǃOWX(){let ye=this.ǃOFZ;return ye?ye.ǃXx+ye.ǃOWE():0}ǃOWR(){let ye=this.ǃOFZ;return ye?ye.ǃXA+ye.ǃOWE():0}ǃOWJ(){let Oe=this.ǃnK()-this.ǃOFA,le=this.ǃne()-this.ǃOFh;for(let Je of this.ǃOFl)Je.ǃOWU(Je.ǃOFA-Oe,Je.ǃOFh-le)}ǃOFs(){this.ǃOFA=this.ǃnK(),this.ǃOFh=this.ǃne();for(let Oe of this.ǃOFl)Oe.ǃOFA=Oe.ǃnK(),Oe.ǃOFh=Oe.ǃne()}ǃOg(ye){return this.ǃOWT(),this.ǃOWD(!0,ye)}ǃOK(ye){return this.ǃOWT(),this.ǃOWD(!1,ye)}ǃOWT(){assert(!1===this.ǃOFi,"_isPopupTransfer must be false"),assert(null===this.ǃOFZ,"_parent must be null"),assert(null===this.ǃOFv,"_parentBeforeDetach must be null")}ǃOWD(ye,Oe){if(ye=!!ye,ǃJ.ǃLF(Oe),ǃJ.ǃl.ǃO_&&(ye=!0),this.ǃOk()&&this.ǃOjW()!==ye)throw new Error("dialog already showing with different modal setting");this.ǃOFt=ye;let le=this.ǃOWi();if(le)return le;if(this.ǃOFe&&(this.ǃOFK.cancel(),this.ǃOFK=null,this.ǃOWa()),this.ǃOFL=null,this.ǃOWK(Oe),this.ǃOk())return this.ǃOFP;if(ǃJ.ǃU.ǃrx(this.ǃNZ,"modal",this.ǃOFt),ǃJ.ǃU.ǃrx(this.ǃNZ,"non-modal",!this.ǃOFt),this.ǃOFr&&this.ǃOWp(),this.ǃOFt&&(ǃJ.ǃU.ǃOWw.ǃOK(Oe),this.ǃOF$=ǃJ.ǃU.ǃV_("default",this.ǃOF_)),this.ǃOFq?this.ǃNZ.style.display="":this.ǃOFu!==this.ǃOF_&&(ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃOF_.body.appendChild(this.ǃNZ)),ǃJ.ǃOeG.ǃOeD?this.ǃOFt?this.ǃNZ.showModal():this.ǃNZ.show():this.ǃNZ.setAttribute("polyfill",""),this.ǃOFV=!0,this.ǃOWY(),ǃJ.ǃU.ǃOSt.ǃOjF(this,!0),this.ǃOQW())this.ǃOWQ(),this.ǃOWj(),this.ǃOWg(),this.ǃOFr=!1,this.ǃOFI=!1;else if(this.ǃOFr)this.ǃOWQ(),this.ǃOWj(),this.ǃOFr=!1,this.ǃOFI=!1;else if(this.ǃOFI){this.ǃNZ.style.width=`${this.ǃtu}px`,this.ǃNZ.style.height=`${this.ǃt_}px`;let Je=this.ǃXx,ue=this.ǃXA;this.ǃOWQ(),this.ǃOWU(Je,ue),this.ǃOFI=!1}else ǃJ.ǃl.ǃO_&&this.ǃOWH();if(this.ǃOWF(),this.ǃOF_.defaultView.addEventListener("resize",this.ǃRl),this.ǃOFz&&!ǃJ.ǃl.ǃO_&&this.ǃOFz.addEventListener(_166,this.ǃZE),this.ǃOFo=!0,app.ǃlN()&&!this.ǃOFi){let Je=this.ǃXt(),ue=Je.left+Je.width/2-this.ǃOWX(),pe=Je.top+Je.height/2-this.ǃOWR(),he=[{transform:`perspective(600px) translate3d(${this.ǃXx}px, ${this.ǃXA}px, -20px)`,transformOrigin:`${ue}px ${pe}px`,opacity:"0"},{transform:`perspective(600px) translate3d(${this.ǃXx}px, ${this.ǃXA}px, 0)`,transformOrigin:`${ue}px ${pe}px`,opacity:"1"}];this.ǃNZ.style.transform="",this.ǃOFK=this.ǃNZ.animate(he,ee),this.ǃOFK.onfinish=()=>this.ǃOWa()}else this.ǃOWa();return this.ǃOFi?this.ǃOFP:(this.ǃOFU&&(this.ǃOFU.scrollTop=0),this.ǃOQW()||this.ǃOFR(),this.ǃOFP?this.ǃOFP:this.ǃOWW())}ǃOWY(){if(!this.ǃOFt&&!this.ǃOWn()){let ye=ǃJ.ǃU.ǃOSt.ǃOjb();if(ye&&!ye.ǃOWn()&&ye.ǃXb()){if(this.ǃOFq)throw new Error("not supported");ǃJ.ǃU.ǃHU(this.ǃNZ),ye.ǃ_().appendChild(this.ǃNZ),ye.ǃOWr(this)}}}ǃOWi(){if(!this.ǃOFt&&!this.ǃOWn()){let ye=ǃJ.ǃU.ǃOSt.ǃOjb();if(ye&&ye.ǃOWn()){if(this.ǃOFv=ye,this.ǃOQW()){let Oe=this.ǃOQF();this.ǃcY(Oe.width),this.ǃcQ(Oe.height)}else this.ǃOWj();return this.ǃYp().then(()=>{return this.ǃOWW()})}}}ǃOWW(){return this.ǃOFP=new Promise((ye,Oe)=>{this.ǃOFM=ye,this.ǃOFB=Oe}),this.ǃOFP}ǃOWp(){this.ǃOFN||this.ǃtR(null),this.ǃzm()}ǃzm(){}ǃOWZ(ye=!1){if(!this.ǃOk())throw new Error("dialog not open");if(ǃJ.ǃU.ǃD.ǃOWl(),ǃJ.ǃU.ǃUu.ǃFr.ǃOWx(this),!this.ǃOjY()&&this.ǃOWn()&&ǃJ.ǃU.ǃOSt.ǃOjp(this.ǃqc()).forEach(Oe=>{Oe===this||Oe.ǃOmz(!0)}),ǃJ.ǃU.ǃJQ.ǃOj_(this),this.ǃOF_.defaultView.removeEventListener("resize",this.ǃRl),this.ǃOFz&&this.ǃOFz.removeEventListener(_166,this.ǃZE),this.ǃOFt&&ǃJ.ǃU.ǃOWw.ǃOV(),this.ǃOFK)if(ye)this.ǃOFK=null;else return void(this.ǃOFo&&(this.ǃOFo=!1,this.ǃOFe=!0,ǃJ.ǃOrs(this.ǃOFK)));if(this.ǃOFe=!0,(this.ǃKv()||this.ǃOWG())&&this.ǃOWN(),this.ǃOFR(),this.ǃOWt()&&this.ǃoH().ǃOWI(this),app.ǃlN()&&!this.ǃOFi&&!this.ǃOFa&&!ye){let Oe=this.ǃXt(),le=Oe.left+Oe.width/2-this.ǃOWX(),Je=Oe.top+Oe.height/2-this.ǃOWR(),ue=[{transform:`perspective(600px) translate3d(${this.ǃXx}px, ${this.ǃXA}px, 0)`,transformOrigin:`${le}px ${Je}px`,opacity:"1"},{transform:`perspective(600px) translate3d(${this.ǃXx}px, ${this.ǃXA}px, -20px)`,transformOrigin:`${le}px ${Je}px`,opacity:"0"}];this.ǃNZ.style.transform="",this.ǃOFK=this.ǃNZ.animate(ue,ee),this.ǃOFK.onfinish=()=>this.ǃOWa()}else this.ǃOWa()}ǃOjQ(){return this.ǃOFe||!this.ǃOk()}ǃO_L(){this.ǃO_j(!0)}ǃOmq(){this.ǃOmz()}ǃOFW(){this.ǃOmq()}ǃO_j(ye){this.ǃOFe||(this.ǃOWA(ye),this.ǃOWZ())}ǃOWA(ye){this.ǃOFM&&this.ǃOFM(ye),this.ǃOFP=null}ǃOmz(ye=!1){ye=!!ye;this.ǃOFe||(this.ǃOWh(),this.ǃOWZ(ye))}ǃOWh(){this.ǃOFM&&this.ǃOFM(null),this.ǃOFP=null}ǃOWv(ye){this.ǃOFe||(this.ǃOWP(ye),this.ǃOWZ())}ǃOWP(ye){this.ǃOFB&&this.ǃOFB(ye),this.ǃOFP=null}ǃOWd(){}ǃOWs(){}ǃOWa(){this.ǃOFe&&(!this.ǃOFi&&(this.ǃLK(),ǃJ.ǃU.ǃOSt.ǃOjF(this,!1),ǃJ.ǃU.ǃVq(this.ǃOF$),this.ǃOF$=null),ǃJ.ǃOeG.ǃOeD&&this.ǃNZ.close(),this.ǃOFV=!1,!this.ǃOFi&&this.ǃOFa&&(this.ǃYq(),this.ǃOFI=!0),this.ǃOFq?this.ǃNZ.style.display="none":this.ǃOFu!==this.ǃOF_&&(ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃOFu.body.appendChild(this.ǃNZ)),this.ǃOF_=null,this.ǃOFL&&(this.ǃOFL(),this.ǃOFL=null),this.ǃOWs()),this.ǃOFo&&this.ǃOWd();let ye=this.ǃOFo;this.ǃOFo=!1,this.ǃOFe=!1,this.ǃOFK=null,ye&&!this.ǃOFi&&(ǃJ.ǃl.ǃO_?this.ǃOWH():this.ǃOZO()),this.ǃHt()}ǃLK(){}ǃNg(){return new Promise(ye=>{this.ǃOFL=ye})}ǃqc(){return this.ǃOF_}ǃOjW(){return this.ǃOFt}ǃOFn(){return this.ǃsZ()&&this.ǃOjC()}ǃOFj(ye){ye.preventDefault(),ǃJ.ǃS.ǃT("ui.dialogs.caption-menu");let Oe=ǃJ.ǃb(ǃJ.ǃU.ǃD,this.ǃOFz);this.ǃOFn()&&Oe.ǃw("open-popup",lang(".open-to-popup-window"),()=>this.ǃYp(),{ǃE:!0}),Oe.ǃw("close",lang(".close"),()=>this.ǃOmq()),Oe.ǃHa(ye.clientX,ye.clientY),ǃJ.ǃS.ǃOu()}ǃYp(ye,Oe){if(ǃJ.ǃaB(ye),ǃJ.ǃaB(Oe),this.ǃOFD)throw new Error("already awaiting popup window");if(this.ǃOFa)throw new Error("already in popup window");return this.ǃOFn()?(this.ǃOFD=!0,this.ǃOjs("beforepopupopen"),ǃJ.ǃU.ǃOjq.ǃOjM("window.html",this.ǃOYj,this.ǃfI(),this.ǃfG(),ye,Oe).then(le=>{return le.addEventListener("unload",()=>this.ǃOZJ(le)),this.ǃOZy(le)}).catch(()=>{this.ǃOFD=!1,this.ǃOFR();let Je=ǃJ.ǃU.ǃOR.ǃOX("OK");Je.ǃOg("Unable to open a popup window. If the browser warned you about a popup, you will need to approve it and then try again. Otherwise you may need to configure your browser or popup blocker to allow popups for this page."),this.ǃOjs(_170)})):void 0}ǃOZf(){return this.ǃKv()?Promise.resolve().then(()=>{return Promise.all(this.ǃOW$().map(ye=>{return this.ǃOWo(ye),ye.ǃYp()}))}):Promise.resolve()}ǃOZy(ye){return Promise.resolve().then(()=>{return this.ǃOZf()}).then(()=>{if(this.ǃOFi=!0,this.ǃOFv=this.ǃoH(),this.ǃOjY()&&!this.ǃOWq()&&this.ǃOFv.ǃOWo(this),this.ǃOk())return this.ǃOWZ()}).then(()=>{return this.ǃOFD=!1,this.ǃOFa=ye,window.addEventListener("unload",this.ǃOFp),this.ǃNZ.setAttribute(_165,""),this.ǃNZ.style.transform="",this.ǃNZ.style.width="",this.ǃNZ.style.height="",this.ǃOWD(this.ǃOFt),this.ǃOFi=!1,ye.document.title=this.ǃOFN,this.ǃOjs("afterpopupopen"),ye})}ǃOZJ(){this.ǃOFa&&(this.ǃOjs("beforepopupclose"),this.ǃOFi=!0,this.ǃtu=ǃJ.ǃRf(this.ǃOFa.innerWidth,this.ǃOFG,ǃJ.ǃOrh(0.9*window.innerWidth)),this.ǃt_=ǃJ.ǃRf(this.ǃOFa.innerHeight,this.ǃOFE,ǃJ.ǃOrh(0.9*window.innerHeight)),window.removeEventListener("unload",this.ǃOFp),this.ǃOWZ(),this.ǃOFa=null,this.ǃNZ.removeAttribute(_165),this.ǃOFI=!0,this.ǃOjY()&&(!this.ǃOjY()||this.ǃoH().ǃOWn())?this.ǃOWh():this.ǃOWD(this.ǃOFt),this.ǃOjs(_170),this.ǃOFi=!1,this.ǃOFv=null)}ǃYq(){if(this.ǃOFa){this.ǃtu=ǃJ.ǃRf(this.ǃOFa.innerWidth,this.ǃOFG,ǃJ.ǃOrh(0.9*window.innerWidth)),this.ǃt_=ǃJ.ǃRf(this.ǃOFa.innerHeight,this.ǃOFE,ǃJ.ǃOrh(0.9*window.innerHeight));let ye=this.ǃOFa;this.ǃOFa=null,ye.close(),this.ǃNZ.removeAttribute(_165),this.ǃOFD=!1}}ǃOQh(){if(this.ǃOk()){super.ǃOQh(),this.ǃXx=ǃJ.ǃOrh(this.ǃOQe.left),this.ǃXA=ǃJ.ǃOrh(this.ǃOQe.top);let ye=2*this.ǃOWE();this.ǃtu=this.ǃOQe.right-this.ǃOQe.left-ye,this.ǃt_=this.ǃOQe.bottom-this.ǃOQe.top-ye}}ǃOWQ(){this.ǃOWH(),this.ǃNZ.style.margin="0",this.ǃNZ.style.position="absolute",this.ǃNZ.style.left="0px",this.ǃNZ.style.top="0px",this.ǃHt()}ǃOWH(){this.ǃHt(),super.ǃXt();let ye=2*this.ǃOWE(),Oe=(this.ǃtu+ye)/2,le=(this.ǃt_+ye)/2,Je=this.ǃOF_.defaultView.innerWidth/2,ue=this.ǃOF_.defaultView.innerHeight/2;this.ǃXx=ǃJ.ǃOrh(Je-Oe-this.ǃOWX()),this.ǃXA=ǃJ.ǃOrh(ue-le-this.ǃOWR()),this.ǃOZO()}ǃOWj(){let ye=ǃJ.ǃU.ǃOnl("min-width",{ǃgx:this.ǃNZ});if(!ye.endsWith("px"))throw new Error("CSS style for dialog min-width must specify the size in units of 'px'");let Oe=parseInt(ye,10);isFinite(Oe)||(Oe=this.ǃsZ()?300:125),this.ǃOFG=Oe;let le=ǃJ.ǃU.ǃOnl("min-height",{ǃgx:this.ǃNZ});if(!le.endsWith("px"))throw new Error("CSS style for dialog min-height must specify the size in units of 'px'");let Je=parseInt(le,10);isFinite(Je)||(Je=this.ǃsZ()?200:50),this.ǃOFE=Je}ǃXt(){if(!this.ǃOFr||this.ǃOjY()){let ye=2*this.ǃOWE(),Oe=this.ǃOWX(),le=this.ǃOWR();return{left:this.ǃXx+Oe,top:this.ǃXA+le,right:this.ǃXx+this.ǃtu+ye+Oe,bottom:this.ǃXA+this.ǃt_+ye+le,width:this.ǃtu+ye,height:this.ǃt_+ye}}return super.ǃXt()}ǃOZO(){this.ǃOFo||this.ǃOFe||(this.ǃOWn()?this.ǃNZ.style.transform="":this.ǃNZ.style.transform=`translate(${this.ǃXx}px,${this.ǃXA}px)`)}ǃOWU(ye,Oe){ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),ye=ǃJ.ǃOrh(ye),Oe=ǃJ.ǃOrh(Oe);this.ǃXx===ye&&this.ǃXA===Oe||this.ǃOFa||(this.ǃXx=ye,this.ǃXA=Oe,this.ǃOZO(),this.ǃHt(),this.ǃOjs(_169),this.ǃOFR())}ǃOOy(ye){ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye);this.ǃXx===ye||this.ǃOFa||(this.ǃXx=ye,this.ǃOZO(),this.ǃHt(),this.ǃOjs(_169),this.ǃOFR())}ǃnK(){return this.ǃXt(),this.ǃXx}ǃOZS(){return this.ǃnK()+this.ǃOWE()+this.ǃOWX()}ǃOOS(ye){ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye);this.ǃXA===ye||this.ǃOFa||(this.ǃXA=ye,this.ǃOZO(),this.ǃHt(),this.ǃOjs(_169),this.ǃOFR())}ǃne(){return this.ǃXt(),this.ǃXA}ǃOZn(){return this.ǃne()+this.ǃOWE()+this.ǃOWR()}ǃcY(ye){ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye),yeye&&this.ǃcY(ye-le),this.ǃt_+le>Oe&&this.ǃcQ(Oe-le);let Je=-this.ǃOWX(),ue=-this.ǃOWR();this.ǃXxye&&this.ǃOOy(ye-this.ǃtu-le+Je),this.ǃXAOe&&this.ǃOOS(Oe-this.ǃt_-le+ue)}this.ǃOjs("resize")}}ǃOWF(){if(!ǃJ.ǃl.ǃO_&&!this.ǃOWn())for(;ǃJ.ǃU.ǃOSt.ǃOjl(this);)this.ǃOWU(this.ǃnK()+de,this.ǃne()+de)}ǃV$(ye,Oe){return ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),!!this.ǃOk()&&super.ǃV$(ye,Oe)}ǃOFQ(ye,Oe,le){ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),ǃJ.ǃaB(le),ǃJ.ǃU.ǃOSt.ǃOjd(this,ye,Oe,le)}ǃi$(ye){const Oe=ye.which;return this.ǃOFe?void ye.preventDefault():void(Oe===ǃJ.ǃCi.ǃiz?(ye.preventDefault(),this.ǃOmq()):Oe!==ǃJ.ǃCi.ǃCD||ye.shiftKey||(ye.preventDefault(),this.ǃO_L()))}ǃOWE(){return this.ǃOWn()?0:this.ǃsZ()?ǃJ.ǃU.ǃOQb():ǃJ.ǃU.ǃOQm()}ǃOFO(ye,Oe){if(ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),!this.ǃsZ())return"";if(ǃJ.ǃl.ǃO_)return"";let le=this.ǃXt(),Je=this.ǃOWE(),ue=2*Je,pe="";return ye>le.left+Je&&yele.top+Je&&Oe=le.left&&ye<=le.left+ue?Oe>=le.top&&Oe<=le.top+ue?pe="nw":Oe<=le.bottom&&Oe>=le.bottom-ue?pe="sw":Oe>le.top+ue&&Oe=le.right-ue?Oe>=le.top&&Oe<=le.top+ue?pe="ne":Oe<=le.bottom&&Oe>=le.bottom-ue?pe="se":Oe>le.top+ue&&Oe=le.right-Je&&(pe="e"):ye>le.left+ue&&ye=le.top&&Oe<=le.top+Je?pe="n":Oe<=le.bottom&&Oe>=le.bottom-Je&&(pe="s")),pe}ǃOjs(ye){ǃJ.ǃJO(ye);let Oe=new ǃJ.Event(ye);Oe.ǃOFg=this,this.dispatchEvent(Oe)}ǃOZX(){if(this.ǃOFq)throw new Error("already keeping in main document");this.ǃOFq=!0,this.ǃOFu=document,document.body.appendChild(this.ǃNZ),this.ǃNZ.style.display="none"}ǃOZR(ye){this.ǃOFY&&this.ǃOFY.ǃJX(ye)}}}{const ee=[{opacity:"0"},{opacity:"1"}],te={duration:200,easing:"ease-out"},ne={duration:200,easing:"ease-out",direction:"reverse"};let ie=null,ae=null,de=!1,re=!1,oe=null,ye=0;ǃJ.ǃU.ǃOWw=class{constructor(){throw new TypeError("static class can't be instantiated")}static ǃOK(le){return oe=le?le.ownerDocument:document,assert(oe,"no display document for dimmer"),++ye,ae?void(re&&(re=!1,de=!0,ǃJ.ǃOrs(ae))):void(ie||(!window.C3_IsPopupWindow&&ǃJ.ǃU.ǃOjq.ǃOjo(!0),ie=ǃJ.ǃU.ǃH("div",oe.body,null,"c3-dimmer"),de=!0,!ǃJ.ǃOeG.ǃOeD&&ie.setAttribute("polyfill",""),app.ǃlN()?(ae=ie.animate(ee,te),ae.onfinish=ǃJ.ǃU.ǃOWw.ǃOWa):ǃJ.ǃU.ǃOWw.ǃOWa()))}static ǃOV(){if(0!=ye)return(--ye,!(0{this.ǃOZu=()=>{this.ǃOZC=!0,this.ǃOZU.files.length?ie?de(this.ǃOZU.files):de(this.ǃOZU.files[0]):de(null),this.ǃLK()},this.ǃOZU.addEventListener("change",this.ǃOZu),this.ǃOZU.click()})}ǃLK(){this.ǃOZU.removeEventListener("change",this.ǃOZu),this.ǃOZu=null,this.ǃOaj.defaultView.removeEventListener("focus",this.ǃOZ_),this.ǃOZ_=null,ǃJ.ǃU.ǃHU(this.ǃOZU),this.ǃOZU=null,this.ǃOaj=null}},"use strict";{const ee=ǃJ.ǃO(),te=ee.getElementById("okDialog"),ie={message:"",align:"center",ǃOZm:!1},ae=ǃJ.ǃU.ǃOR.ǃOZb=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOZc=this.ǃO_c("okMessage"),this.ǃO_B=this.ǃO_c("okButton"),this.ǃO_B.onclick=()=>this.ǃO_L(),this.ǃOFb=!1}ǃzm(){this.ǃO_B.textContent=lang("common.ok")}ǃOg(re,oe){let ye;ǃJ.ǃOrb(re)?(ye=Object.assign({},ie),ye.message=re):(ǃJ.ǃFt(re),ye=Object.assign({},ie,re));let Oe=ye.message;return ǃJ.ǃU.ǃrx(this.ǃO_w(),"alignleft","left"===ye.align),ǃJ.ǃU.ǃrx(this.ǃO_w(),"selectable",ye.ǃOZm),"string"==typeof Oe||Oe.ǃOGs()?ǃJ.ǃU.ǃOQC(this.ǃOZc,Oe.toString()):ǃJ.ǃHe(this.ǃOZc,Oe),super.ǃOg(oe)}ǃLK(){this.ǃtR(null)}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("OK",ae)})}{const ee=ǃJ.ǃO(),te=ee.getElementById("confirmDialog"),ie=ǃJ.ǃU.ǃOR.ǃOZt=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOnN=null,this.ǃOZ$=this.ǃO_c("confirmMessage"),this.ǃOZq=this.ǃO_c("confirmButton"),this.ǃOFb=!1,this.ǃOZq.onclick=()=>{return this.ǃOnN&&this.ǃOnN(),this.ǃO_L()},this.ǃOm$=this.ǃO_c("cancelConfirmButton"),this.ǃOm$.onclick=()=>this.ǃOmq()}ǃzm(){}ǃOg(de,re){ǃJ.ǃLH(de),ǃJ.ǃLF(re);let oe=de.caption||"",ye=de.message||"",Oe=de.ǃrF||lang("common.ok"),le=de.ǃrW||lang("common.cancel");return oe&&this.ǃtR(oe),"string"==typeof ye||ye.ǃOGs()?ǃJ.ǃU.ǃOQC(this.ǃOZ$,ye.toString()):ǃJ.ǃHe(this.ǃOZ$,ye),this.ǃOZq.textContent=Oe,this.ǃOm$.textContent=le,super.ǃOg(re)}ǃLK(){this.ǃOnN=null}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("Confirm",ie)})}{const ee=ǃJ.ǃO(),te=ee.getElementById("confirmMultipleDialog"),ie=ǃJ.ǃU.ǃOR.ǃOZM=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOnN=null,this.ǃOZ$=this.ǃO_c("confirmMultipleMessage"),this.ǃOZB=this.ǃO_c("confirmMultipleButtonWrap"),this.ǃOZL=""}ǃzm(){}ǃOg(de,re){ǃJ.ǃLH(de),ǃJ.ǃLF(re),ǃJ.ǃCl(de.options),de.ǃNU&&de.options.push({text:lang("common.cancel"),tag:"cancel"});const oe=de.caption||"",ye=de.message||"";oe&&this.ǃtR(oe),"string"==typeof ye||ye.ǃOGs()?ǃJ.ǃU.ǃOQC(this.ǃOZ$,ye.toString()):ǃJ.ǃHe(this.ǃOZ$,ye);const Oe=super.ǃOg(re);for(let le=0,Je=de.options.length;lethis.ǃO_L(he),0===le&&(this.ǃOZL=he,ge.setAttribute("main","")),lethis.ǃOZr(),100)):(this.ǃOZe(!0),this.ǃtR(this.ǃOZo));let Oe=super.ǃOg(ye);return this.ǃwK||(this.ǃwK=ǃJ.ǃU.ǃV_("wait")),Oe}ǃOZe(oe){oe=!!oe;this.ǃOZV===oe||(this.ǃOZV=oe,this.ǃOZV?(this.ǃOZk.removeAttribute("value"),this.ǃOZk.removeAttribute("max")):(this.ǃOZk.value=this.ǃOZK,this.ǃOZk.max=1))}ǃOZr(oe){if(this.onprogress){let ye=this.onprogress();(this.ǃOZK!==ye||oe)&&(this.ǃOZK=ye,null===this.ǃOZK?(this.ǃOZe(!0),this.ǃtR(this.ǃOZo.replace("{0}","0"))):(!isFinite(this.ǃOZK)&&(this.ǃOZK=0),this.ǃOZK=ǃJ.ǃRf(this.ǃOZK,0,1),this.ǃOZe(!1),this.ǃOZk.value=this.ǃOZK,this.ǃtR(this.ǃOZo.replace("{0}",Math.round(1e3*ye)/10))))}}ǃOWZ(){-1!==this.ǃOaG&&(window.clearInterval(this.ǃOaG),this.ǃOaG=-1),ǃJ.ǃU.ǃVq(this.ǃwK),this.ǃwK=null,this.onprogress=null,this.ǃOZK=0,super.ǃOWZ()}ǃO_L(){}ǃOmq(){}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("Progress",de)})}{const _177="Calculating...",ee=ǃJ.ǃO(),te=ee.getElementById("downloadDialog"),de=ǃJ.ǃU.ǃOR.ǃNz=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOZk=this.ǃO_c("downloadProgressBar"),this.ǃOZI=this.ǃO_c("downloadDetails"),this.ǃOaG=-1,this.ǃOZN="",this.ǃOZG="",this.ǃOZE=0,this.ǃOZT=0,this.ǃOZD=0,this.ǃOZi=[],this.ǃOZa=0,this.ǃOZp=!1,this.ǃwK=null,this.ǃOFb=!1}ǃzm(){}ǃOg(oe,ye){ǃJ.ǃJO(oe),this.ǃOZN=oe,this.ǃOZE=0,this.ǃOZT=0,this.ǃOZa=0,this.ǃOZD=0,ǃJ.ǃXX(this.ǃOZi),this.ǃOZp=!0;let Oe=this.ǃOZN.lastIndexOf("/");this.ǃOZG=this.ǃOZN.substring(Oe+1),this.ǃtR("Downloading...");let le=super.ǃOg(ye);return this.ǃwK||(this.ǃwK=ǃJ.ǃU.ǃV_("progress")),ǃJ.ǃ$Z(oe,Je=>this.ǃOZw(Je)).then(Je=>{ǃJ.ǃU.ǃVq(this.ǃwK),this.ǃwK=null,this.ǃO_j(Je)}).catch(Je=>{ǃJ.ǃU.ǃVq(this.ǃwK),this.ǃwK=null,this.ǃOWv(Je)}),this.ǃOaG=window.setInterval(()=>this.ǃOZY(!0),1e3),this.ǃOZY(),le}ǃOZw(oe){if(oe.lengthComputable){this.ǃOZa=oe.total,this.ǃOZT=oe.loaded,this.ǃOZp&&(this.ǃOZp=!1,this.ǃOZY(!1));let ye=100*this.ǃOZT/this.ǃOZa;this.ǃOZk.value=ye,this.ǃtR(`Downloading (${Math.round(ye)}%)...`)}}ǃOZQ(oe){ǃJ.ǃXq(oe),this.ǃOZi.length>=10&&this.ǃOZi.shift(),this.ǃOZi.push(oe)}ǃOZj(){if(0===this.ǃOZi.length)return 0;let oe=0;for(let ye of this.ǃOZi)oe+=ye;return oe/this.ǃOZi.length}ǃOZY(oe){oe&&(this.ǃOZD=this.ǃOZT-this.ǃOZE,this.ǃOZQ(this.ǃOZD),this.ǃOZE=this.ǃOZT);let ye="Downloading: "+this.ǃOZG;0",ye+="Speed: ",ye+=0===this.ǃOZD?_177:ǃJ.ǃO_r(this.ǃOZD,!0);let Oe=navigator.connection||navigator.ǃOZF||navigator.ǃOZW,le=Oe?Oe.type:"";le&&"other"!==le&&"unknown"!==le&&(ye+=" ("+le+")"),ye+="
",ye+="Time remaining: ";let Je=-1;if(2>this.ǃOZi.length)ye+=_177;else{let ue=this.ǃOZj();0===ue?ye+="Stalled...":(Je=(this.ǃOZa-this.ǃOZT)/ue,Je=5*Math.round(Je/5),ye+=5>Je?lang("common.time.a-few-seconds"):ǃJ.ǃOEH(Je,{ǃOES:!0}))}this.ǃOZI.innerHTML=ye,this.ǃOWH()}ǃOWZ(){window.clearInterval(this.ǃOaG),this.ǃOaG=-1,super.ǃOWZ()}ǃO_L(){}ǃOmq(){}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("Download",de)})}{const ee=ǃJ.ǃO(),te=ee.getElementById("openPopupWindowDialog"),ne=ǃJ.ǃy(ee.URL);ǃJ.ǃS.ǃf(ne+"lang");const ae=ǃJ.ǃU.ǃOR.ǃOZZ=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOZ$=this.ǃO_c("openPopupWindowMessage"),this.ǃOZl=this.ǃO_c("openPopupWindowTryAgain"),this.ǃOZl.onclick=()=>this.ǃO_L(),this.ǃOm$=this.ǃO_c("openPopupWindowCancel"),this.ǃOm$.onclick=()=>this.ǃOmq(),this.ǃOZN="",this.ǃOZx="",this.ǃOFb=!1}ǃzm(){this.ǃtR(lang("ui.dialogs.openPopupWindow.caption")),this.ǃOZ$.textContent=lang("ui.dialogs.openPopupWindow.body")}ǃOg(re,oe,ye){return this.ǃOZN=re,this.ǃOZx=oe,super.ǃOg(ye)}ǃO_L(){let re=window.open(this.ǃOZN,null,this.ǃOZx);re&&this.ǃO_j(re)}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("OpenPopupWindow",ae)})}{const _179="option",_180="ui.dialogs.std.font-picker",_181="ui.dialogs.std.font-picker.none-selected",ee=ǃJ.ǃO(),te=ee.getElementById("fontPickerDialog"),ie=250,ae={ǃOJX:"",ǃOJR:"",ǃOJg:20,ǃOJH:[],ǃOJU:""},de=ǃJ.ǃU.ǃOR.ǃOZA=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃO_B=this.ǃO_c("okButton"),this.ǃO_B.onclick=()=>this.ǃO_L(),this.ǃOm$=this.ǃO_c("cancelButton"),this.ǃOm$.onclick=()=>this.ǃOmq(),this.ǃOZh=this.ǃO_c("fontPickerLocalHeaderText"),this.ǃOZv=this.ǃO_c("localFontSelect"),this.ǃOZv.addEventListener("change",()=>this.ǃOZP()),this.ǃOZd=this.ǃO_c("additionalFontSection"),this.ǃOZs=this.ǃO_c("fontPickerAdditionalHeaderText"),this.ǃOlO=this.ǃO_c("additionalFontSelect"),this.ǃOlO.addEventListener("change",()=>this.ǃOlJ()),this.ǃOly=this.ǃO_c("sampleTextHeader"),this.ǃOlf=this.ǃO_c("sampleText"),this.ǃOlS="",this.ǃOln=this.ǃO_c("fontPickerMorePreview"),this.ǃOln.onclick=()=>this.ǃOlX(),this.ǃOlR="",this.ǃOlg="",this.ǃOlH=!1,this.ǃuv=!1,this.ǃOFb=!1}ǃzm(){ǃJ.ǃS.ǃT(_180),this.ǃtR(lang(".caption")),this.ǃOZh.textContent=lang(".loading-message"),this.ǃO_B.textContent=lang("common.ok"),this.ǃOm$.textContent=lang("common.cancel"),this.ǃOln.textContent=lang(".more-preview"),ǃJ.ǃS.ǃOu()}ǃOg(oe,ye){ǃJ.ǃFt(oe),oe=Object.assign({},ae,oe),ǃJ.ǃJO(oe.ǃOJX),ǃJ.ǃJO(oe.ǃOJR),ǃJ.ǃCl(oe.ǃOJH),ǃJ.ǃJO(oe.ǃOJU),this.ǃOlH||this.ǃuv||this.ǃOlU(),this.ǃOlR=oe.ǃOJX||"",this.ǃOlg=this.ǃOlR,this.ǃOlS=oe.ǃOJR||"";let Oe=oe.ǃOJg;return 72ie&&(this.ǃOlS=this.ǃOlS.substr(0,ie)+"..."),oe.ǃOJH.length?(this.ǃOZd.removeAttribute("hidden"),this.ǃOZs.textContent=oe.ǃOJU||lang("ui.dialogs.std.font-picker.default-additional-fonts-header"),this.ǃOlC(oe.ǃOJH)):this.ǃOZd.setAttribute("hidden",""),this.ǃOlH&&(this.ǃOlf.textContent=this.ǃOlS||lang("ui.dialogs.std.font-picker.default-sample-text"),this.ǃOlu()),super.ǃOg(ye)}ǃOlU(){this.ǃuv=!0;let oe=this.ǃ_().ownerDocument,ye=oe.createElement(_179);ye.value="",ye.textContent=lang(_181),this.ǃOZv.appendChild(ye),ǃJ.ǃOGp.ǃOGw().then(Oe=>this.ǃOl_(Oe))}ǃOl_(oe){this.ǃuv=!1,this.ǃOlH=!0;let ye=this.ǃ_().ownerDocument;for(let Oe of oe){let le=ye.createElement(_179);le.value=Oe,le.textContent=Oe,le.style.fontFamily=Oe,le.setAttribute("title",Oe),le.addEventListener("UIDoubleTap",()=>this.ǃO_j(Oe)),this.ǃOZv.appendChild(le)}this.ǃOlu(),ǃJ.ǃS.ǃT(_180),this.ǃOZh.textContent=lang(".local-font-header"),this.ǃOly.textContent=lang(".sample-text-header"),this.ǃOlf.textContent=this.ǃOlS||lang(".default-sample-text"),ǃJ.ǃS.ǃOu()}ǃOlC(oe){let ye=this.ǃ_().ownerDocument,Oe=ye.createElement(_179);Oe.value="",Oe.textContent=lang(_181),this.ǃOlO.appendChild(Oe);for(let le of oe){let Je=ye.createElement(_179);Je.value=le,Je.textContent=le,Je.style.fontFamily=le,Je.setAttribute("title",le),Je.addEventListener("UIDoubleTap",()=>this.ǃO_j(le)),this.ǃOlO.appendChild(Je)}}ǃOlu(){this.ǃOlR&&(this.ǃOZv.value=this.ǃOlR,-1===this.ǃOZv.selectedIndex?(this.ǃOlO.value=this.ǃOlR,-1===this.ǃOlO.selectedIndex?(this.ǃOZv.selectedIndex=0,this.ǃOZP()):this.ǃOlJ()):this.ǃOZP())}ǃOZP(){return 0===this.ǃOZv.selectedIndex?void(this.ǃOZv.style.fontFamily=""):void(this.ǃOlg=this.ǃOZv.value,this.ǃOZv.style.fontFamily=this.ǃOlg,this.ǃOlO.selectedIndex=0,this.ǃOlO.style.fontFamily="",this.ǃOlm())}ǃOlJ(){return 0===this.ǃOlO.selectedIndex?void(this.ǃOlO.style.fontFamily=""):void(this.ǃOlg=this.ǃOlO.value,this.ǃOlO.style.fontFamily=this.ǃOlg,this.ǃOZv.selectedIndex=0,this.ǃOZv.style.fontFamily="",this.ǃOlm())}ǃOlm(){this.ǃOlf.style.fontFamily=this.ǃOlg}ǃOlX(){let oe=ǃJ.ǃU.ǃOR.ǃOX("FontPreview");oe.ǃOg(this.ǃOlg,this.ǃ_())}ǃO_L(){this.ǃO_j(this.ǃOlg)}ǃLK(){ǃJ.ǃU.ǃHL(this.ǃOlO)}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("FontPicker",de)})}{const ee=ǃJ.ǃO(),te=ee.getElementById("fontPreviewDialog"),ne=ǃJ.ǃy(ee.URL);ǃJ.ǃS.ǃf(ne+"lang");const ae=[5,8,11,14,20,36,48,72],de=ǃJ.ǃU.ǃOR.ǃOlb=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃO_B=this.ǃO_c("okButton"),this.ǃO_B.onclick=()=>this.ǃO_L(),this.ǃOlc=this.ǃO_c("fontPreviewBody"),this.ǃOFb=!1}ǃzm(){this.ǃO_B.textContent=lang("common.close-dialog")}ǃOg(oe,ye){ǃJ.ǃJO(oe),ǃJ.ǃS.ǃT("ui.dialogs.fontPreview"),this.ǃtR(ǃCM(".caption",oe));let Oe=lang(".example-text");ǃJ.ǃS.ǃOu();for(let le=0,Je;le{ǃJ.ǃU.ǃOR.ǃO_W("FontPreview",de)})}{const ee=ǃJ.ǃO(),te=ee.getElementById("inputDialog"),ie={caption:"",message:"",label:"",ǃOlt:"text",ǃOl$:"",ǃOlq:"",ǃrF:"",ǃrW:""},ae=ǃJ.ǃU.ǃOR.ǃOlM=class extends ǃJ.ǃU.ǃOR{constructor(){super(te),this.ǃOZ$=this.ǃO_c("inputMessage"),this.ǃOau=this.ǃO_c("inputLabel"),this.ǃOZU=this.ǃO_c("input"),this.ǃO_B=this.ǃO_c("okButton"),this.ǃO_B.onclick=()=>this.ǃO_L(),this.ǃOm$=this.ǃO_c("cancelButton"),this.ǃOm$.onclick=()=>this.ǃOmq(),this.ǃOFb=!1}ǃzm(){}ǃOg(re,oe){return ǃJ.ǃFt(re),re=Object.assign({},ie,re),ǃJ.ǃJO(re.caption),ǃJ.ǃUR(re.message),ǃJ.ǃUR(re.label),ǃJ.ǃUV(re.ǃOlt),ǃJ.ǃUV(re.ǃOl$),ǃJ.ǃUV(re.ǃOlq),ǃJ.ǃUV(re.ǃrF),ǃJ.ǃUV(re.ǃrW),this.ǃtR(re.caption),ǃJ.ǃHe(this.ǃOZ$,re.message),ǃJ.ǃHe(this.ǃOau,re.label),this.ǃOZU.setAttribute("type",re.ǃOlt||"text"),this.ǃOZU.setAttribute("placeholder",re.ǃOl$||""),this.ǃOZU.value=re.ǃOlq||"",this.ǃO_B.textContent=re.ǃrF||lang("common.ok"),this.ǃOm$.textContent=re.ǃrW||lang("common.cancel"),super.ǃOg(oe)}ǃO_L(){this.ǃO_j(this.ǃOZU.value)}ǃLK(){this.ǃtR(null)}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("Input",ae)})}{const _183="left",_184="right",_185="hgrid",_186="vgrid",_187="bottom",_188="No point subdividing a Layout in the same direction",_189="Dock side incompatible with direction of this layout";ǃJ.ǃU.ǃJs=class extends ǃJ.ǃq{constructor(te,ne,ie){ǃJ.ǃJO(te),ǃJ.ǃq$(ie,ǃJ.ǃU.ǃJs.ǃUw),super(),this.ǃOmx=te,this.ǃOlB=ne,this.ǃOlL=ie||null,this.ǃOlz=!1,this.ǃOlL?(this.ǃNZ=this.ǃOlL.ǃNZ,this.ǃNZ.id=te,this.ǃOlz=ie.ǃOlz):(this.ǃNZ=ǃJ.ǃU.ǃH("ui-pane",null,te),document.body.appendChild(this.ǃNZ),ǃJ.ǃU.ǃOQy(this)),this.ǃOlk=[],this.ǃOlV=!0,this.ǃNZ.removeAttribute(this.ǃOlB?_186:_185),this.ǃNZ.setAttribute(this.ǃOlB?_185:_186,""),this.ǃOlK=null,this.ǃOlo=!0,this.ǃuP=!1}ǃOn(){if(this.ǃuP)throw new Error("layout has already been released");if(ǃJ.ǃU.ǃOQS(this))throw new Error("main layout can not be removed");this.ǃuP=!0,this.ǃNZ=null,this.ǃOlL=null,this.ǃOlK=null,ǃJ.ǃyY(this)}ǃOle(te){te?(this.ǃNZ.style.position="relative",this.ǃNZ.style.top=window.innerHeight+100+"px"):(this.ǃNZ.style.position="",this.ǃNZ.style.top="")}ǃdQ(){return this.ǃOmx}ǃOlr(){return this.ǃOlB}ǃOlI(){return this.ǃOlL}ǃOlN(te){return this.ǃOlk.includes(te)}ǃ_(){return this.ǃNZ}ǃOlG(){return this.ǃOlk}ǃOlE(){return this.ǃOlz}ǃOlT(te){if(te=!!te,this.ǃOlz!==te){this.ǃOlz=te;for(let ne=0,ie=this.ǃOlk.length;ne=ie.left&&te=ie.top&&nene&&this.ǃOxe(ne,ie);for(let ae=0,de=this.ǃOlk.length;aeye;++ye)oe+=de.charAt(Math.floor(Math.random()*re));super.ǃOQD("PANE_"+oe)}else super.ǃOQD("PANE_"+ae)}ǃOxd(){const ae=this instanceof ǃJ.ǃU.ǃJs.ǃOlY&&this.ǃOFa,de=this.ǃOJD&&this.ǃOJD.ǃOlL,re=this.ǃOxs(),oe="main"!==this.ǃOmx&&(this instanceof ǃJ.ǃU.ǃJs.ǃOlp&&"undefined"!=typeof this.ǃOx_?this.ǃOx_:!0);if(!(!ae&&oe&&(de||re))){let ye=this.ǃOAO((Oe,le)=>{const Je={id:Oe.ǃOmx,size:Oe.ǃXs,name:Oe.ǃOYj,devicePixelRatio:window.devicePixelRatio,popup:"CaptionPane"===Oe.constructor.name&&!!Oe.ǃOFa,type:null,activeTab:Oe.ǃOAJ()};switch(Oe.constructor){case ǃJ.ǃU.ǃJs.ǃOlQ:Je.side=Oe.ǃOxJ,Je.type="TabPane",Je.docked="main"!==Oe.ǃOmx&&Oe.ǃOx_;break;case ǃJ.ǃU.ǃJs.ǃOlY:Je.caption=Oe.ǃOAy,Je.side=Oe.ǃOxJ,Je.type="CaptionPane",Je.docked="main"!==Oe.ǃOmx&&Oe.ǃOx_;break;case ǃJ.ǃU.ǃJs.ǃOlp:Je.side=Oe.ǃOxJ,Je.type="DockingPane",Je.docked="main"!==Oe.ǃOmx&&Oe.ǃOx_;break;default:Je.type="Pane";}return"main"!==Oe.ǃOmx&&!1===Oe.ǃOx_&&(Je.position={x:Oe.ǃOAf,y:Oe.ǃOAS,width:Oe.ǃOAn,height:Oe.ǃOAX}),Oe.ǃOxY?Je.layout={tabSide:!1,id:Oe.ǃOxY.ǃdQ(),isHorizontal:Oe.ǃOxY.ǃOlB,children:[]}:"TabPane"===Je.type&&(Je.layout={tabSide:Oe.ǃOAg.ǃOAR,children:[]}),le&&le.layout&&le.layout.children.push(Je),Je});return ye}}ǃOAH(){return this.ǃOQF()}ǃOn(){if(!this.ǃNZ)throw new Error("removing pane which has already been removed");let ae=new ǃJ.Event("remove");ae.ǃBd=this,this.dispatchEvent(ae),this.ǃOxY&&(this.ǃOxY.ǃOn(),this.ǃOxY=null),ne.delete(this),super.ǃOn()}ǃ_w(){return this.ǃOJD}ǃOAU(){if(this.ǃOxU())throw new Error("pane has flex size");return parseInt(this.ǃXs,10)}ǃOlh(){return this.ǃXs}ǃOx$(ae){if(ǃJ.ǃJO(ae),ae=ae.toLowerCase(),!ǃJ.ǃU.ǃOQU(ae))throw new Error(`invalid CSS length: '${ae}'`);this.ǃXs=ae}ǃOxU(){return this.ǃXs.includes("fr")}ǃOlA(){return this.ǃOxU()||this.ǃOlP()}ǃOlP(){return this.ǃOxp}ǃOlv(ae){ae=!!ae,this.ǃOxp=ae}ǃgh(){this.ǃOxj=!1}ǃOAO(ae,de){if(this.ǃOxj){const re=ae(this,de);if(this.ǃOxY&&this.ǃOxY.ǃOlk)for(let oe of this.ǃOxY.ǃOlk)oe.ǃOAO(ae,re);else if(this.constructor===ǃJ.ǃU.ǃJs.ǃOlQ)for(let oe of this.ǃOAg.ǃOAC)oe.ǃOAu.ǃOAO(ae,re);return re}}ǃOQZ(){return!1}ǃOxO(){return!1}ǃOlE(){return this.ǃOlz}ǃOlT(ae){ae=!!ae;this.ǃOlz===ae||(this.ǃOlz=ae,this.ǃOxY&&this.ǃOxY.ǃOlT(ae))}ǃOxt(ae){this.ǃOxw=ae}ǃOA_(){return this.ǃOxw}ǃOxs(){return!!this.ǃOxw}ǃOAJ(){return this.ǃOxw&&this.ǃOxw.ǃOAm()===this}ǃOxa(){this.ǃOJD&&(this.ǃOJD.ǃOlj(this),this.ǃOJD.ǃ$D(),this.ǃOJD=null),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃOAb(),this.ǃOAc(),this.ǃHt()}ǃOft(){return!!this.ǃNZ.parentElement}ǃJg(){return this.ǃOft()}ǃOxC(ae,de){if(ǃJ.ǃJO(ae),de=!!de,this.ǃOxY)throw new Error("cannot create a sub-grid on a pane which already has one");return this.ǃOxY=ǃJ.ǃb(ǃJ.ǃU.ǃJs,ae,de,this),this.ǃOxY}ǃOxg(ae){if(ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs),this.ǃOxY)throw new Error("cannot attach a sub grid on a pane which already has one");this.ǃOxY=ae,this.ǃOxY.ǃOlL=this;let de=ae.ǃOlr();this.ǃNZ.removeAttribute(de?"vgrid":"hgrid"),this.ǃNZ.setAttribute(de?"hgrid":"vgrid","")}ǃOxR(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs),assert(this.ǃOxY,"Should not replace a sub grid on a pane which does not already have one"),assert(this.ǃOxY!==ae,"Should not replace a sub grid with the same grid"),this.ǃOxY=ae,this.ǃOxY.ǃOlL=this;let de=new ǃJ.Event("replacesubgrid");de.ǃBd=this,de.ǃOAt=ae,this.dispatchEvent(de)}ǃOxn(){return this.ǃOxY}ǃOxS(){return!!this.ǃOxY}ǃV$(ae,de,re){return ǃJ.ǃXq(ae),ǃJ.ǃXq(de),!re&&this.ǃOxS()?!1:super.ǃV$(ae,de)}ǃOV(){this.ǃNZ.setAttribute("hide","")}ǃOK(){this.ǃNZ.removeAttribute("hide")}ǃH_(){if(this.ǃOxl){this.ǃOxl=!1;let ae=this.ǃNZ.style.gridTemplateColumns;if(ae)this.ǃOxh=ae,this.ǃOxP=!0;else{let de=this.ǃNZ.style.gridTemplateRows;de&&(this.ǃOxh=de,this.ǃOxP=!1)}this.ǃOxv=this.ǃOlh(),this.ǃOA$(!1),this.ǃBo(!1)}}ǃH$(){this.ǃOxl||(this.ǃOxl=!0,this.ǃOA$(!0),this.ǃBo(!0),this.ǃOxh&&(this.ǃOxP?this.ǃNZ.style.gridTemplateColumns=this.ǃOxh:this.ǃNZ.style.gridTemplateRows=this.ǃOxh),this.ǃOxv&&this.ǃOx$(this.ǃOxv),this.ǃOxh="",this.ǃOxv="",this.ǃHt())}ǃOA$(ae){ae=!!ae;ae===this.ǃOxx||(this.ǃOxx=ae,ae?this.ǃNZ.removeAttribute(_190):this.ǃNZ.setAttribute(_190,""))}ǃBo(ae){ae=!!ae;ae===this.ǃOxA||(this.ǃOxA=ae,ae?this.ǃNZ.removeAttribute(_191):this.ǃNZ.setAttribute(_191,""))}ǃOAb(){this.ǃNZ.style.gridColumn="",this.ǃNZ.style.gridRow=""}ǃOAc(){this.ǃOxQ&&(this.ǃNZ.removeAttribute(this.ǃOxQ),this.ǃHt()),this.ǃOxQ=""}ǃOls(ae){ǃJ.ǃXq(ae),assert(1<=ae&&20>=ae,"Invalid grid row number, must be 1-20");let de="row"+ae;this.ǃOxQ===de||(this.ǃOAc(),this.ǃOxQ=de,this.ǃNZ.setAttribute(this.ǃOxQ,""),this.ǃHt())}ǃOld(ae){ǃJ.ǃXq(ae),assert(1<=ae&&20>=ae,"Invalid grid column number, must be 1-20");let de="col"+ae;this.ǃOxQ===de||(this.ǃOAc(),this.ǃOxQ=de,this.ǃNZ.setAttribute(this.ǃOxQ,""),this.ǃHt())}ǃHt(){super.ǃHt(),this.ǃOxY&&this.ǃOxY.ǃHt()}ǃnK(){return this.ǃXt().left}ǃne(){return this.ǃXt().top}ǃfI(){let ae=this.ǃXt();return ae.right-ae.left}ǃfG(){let ae=this.ǃXt();return ae.bottom-ae.top}ǃOFf(){return this.ǃOxS()?this.ǃOxY.ǃOFf():this.ǃOFG}ǃOFS(){return this.ǃOxS()?this.ǃOxY.ǃOFS():this.ǃOFE}ǃOAq(){"PANE_main"===this.ǃOQV&&this.ǃOQj()}ǃOAM(){if("PANE_main"===this.ǃOQV){let ae=[],de;for(let re of ne)de=re.ǃOxd(),de&&ae.push(de);this.ǃOQQ(ae)}}ǃOxq(){if(!this.ǃOQE){let ae=this.ǃfI(),de=this.ǃfG();if(ae!==this.ǃOxF||de!==this.ǃOxW){this.ǃOxF=ae,this.ǃOxW=de;let re=new ǃJ.Event("resize");re.ǃBd=this,this.dispatchEvent(re),this.ǃOxY&&this.ǃOxY.ǃOxI()}}}ǃwX(ae){ǃJ.ǃq$(ae,ǃJ.ǃSR),this.ǃOxZ=ae}ǃwR(){return this.ǃOxZ?this.ǃOxZ.clone():null}static ǃOAB(ae){return!!ne.has(ae)&&this.ǃOxj}}}{const _192="left",_193="right",_194="bottom",_195="floating",_196="UIPointerDown",_197="complementary",_198="cannot set the position of a docked pane",ee=[_192,"top",_193,_194],te=300,ne=350;ǃJ.ǃU.ǃJs.ǃOlp=class extends ǃJ.ǃU.ǃJs.ǃUw{constructor(ye,Oe,le,Je){super(ye,Oe,le,Je),this.ǃNZ.setAttribute("role","section"),this.ǃOx_=!0,this.ǃOAL=!1,this.ǃOAz=!1,this.ǃOAk=!1,this.ǃOAV=!0,this.ǃOAK=0,this.ǃOxJ="",this.ǃOFK=null,this.ǃZE=()=>this.ǃBE(),this.ǃNZ.addEventListener(_196,this.ǃZE),this.ǃOAo=100,this.ǃOAe=100,this.ǃOAf=0,this.ǃOAS=0,this.ǃOAn=0,this.ǃOAX=0,this.ǃOFG=100,this.ǃOFE=100,this.ǃOAr=!0,this.ǃOAI=null,this.ǃOAN=0,ǃJ.ǃU.ǃkq.ǃOAG(this)}ǃOlw(ye){ǃJ.ǃUV(ye),this.ǃOx_=!1,this.ǃOxp=!1,this.ǃOxJ=this.ǃOJD.ǃOlr()?_192:"top";const Oe=parseInt(ye,10)||te;this.ǃOx$(`${Oe}px`),this.ǃOAb(),this.ǃOAc(),this.ǃOAE(),this.ǃOAT(this.ǃOAe,this.ǃOAo,Oe,ne),document.body.appendChild(this.ǃNZ),this.ǃHt(),this.ǃBE()}ǃOn(){this.ǃOAr=!1,this.ǃNZ.removeEventListener(_196,this.ǃZE),this.ǃZE=null,ǃJ.ǃU.ǃkq.ǃOAD(this),super.ǃOn()}ǃOxO(){return!0}ǃOxy(ye){return ǃJ.ǃJO(ye),assert(ee.includes(ye),"Invalid dock side parameter"),this.ǃOxJ===ye?void 0:this.ǃOAi()&&this.ǃOlP()?void(this.ǃOxJ=ye):void(this.ǃOxE(),this.ǃOAa(ye),this.ǃOJD&&this.ǃOJD.ǃHt())}ǃOAp(){return this.ǃOAL}ǃOAw(){return this.ǃOAV}ǃDR(){this.ǃOAV=!1}ǃDg(){this.ǃOAV=!0}ǃOAY(){assert(!this.ǃOxw&&!this.ǃOx_,"should not be tabbed or docked to go in swipe-in mode"),this.ǃOAL=!0,this.ǃNZ.setAttribute("swipe-in-"+this.ǃOxJ,""),this.ǃNZ.removeAttribute(_195),this.ǃNZ.setAttribute("role",_197),this.ǃOAQ(!0),this.ǃOAj(),ǃJ.ǃU.ǃkq.ǃOAF(this)}ǃOAW(){for(let ye=document.activeElement;ye;)if(ye=ye.parentElement,ye===this.ǃNZ)return void document.activeElement.blur()}ǃOAZ(ye){ye=!!ye,this.ǃOAl();let Oe=ǃJ.ǃU.ǃOQn();this.ǃOAz=ye,this.ǃOAz&&this.ǃOAQ(!1),this.ǃOAz?(this.ǃOAx(this.ǃOxJ===_192?0:Oe-this.ǃfI()),ǃJ.ǃU.ǃJQ.ǃrD(this)):(this.ǃOAx(this.ǃOxJ===_192?-this.ǃfI():Oe),this.ǃOAW())}ǃOAl(){this.ǃOFK&&(this.ǃOFK.cancel(),this.ǃOWa())}ǃOAx(ye){if(ǃJ.ǃXq(ye),this.ǃOAf===ye)return void this.ǃOWa();let Oe=this.ǃOAf;this.ǃOOy(ye),app.ǃlN()?(this.ǃOFK=this.ǃNZ.animate([{transform:`translate(${Oe}px,${this.ǃOAS}px)`},{transform:`translate(${ye}px,${this.ǃOAS}px)`}],{duration:200,easing:"ease"}),this.ǃOFK.onfinish=()=>this.ǃOWa()):this.ǃOWa()}ǃOWa(){this.ǃOFK=null,this.ǃOAz||this.ǃOAQ(!0)}ǃOAQ(ye){ye=!!ye;this.ǃOAk===ye||(ye?(this.ǃXt(),this.ǃOAk=!0,this.ǃNZ.style.display="none",this.ǃNZ.setAttribute("aria-hidden","true")):(this.ǃNZ.style.display="",this.ǃNZ.removeAttribute("aria-hidden"),this.ǃOAk=!1,this.ǃHt()),this.ǃOAA(!ye))}ǃHt(){this.ǃOAk||super.ǃHt()}ǃXt(){return this.ǃOQZ()?{left:this.ǃOAf,top:this.ǃOAS,right:this.ǃOAf+this.ǃOAn,bottom:this.ǃOAS+this.ǃOAX,width:this.ǃOAn,height:this.ǃOAX}:super.ǃXt()}ǃV$(ye,Oe,le){return this.ǃOAL&&!this.ǃOAz?!1:super.ǃV$(ye,Oe,le)}ǃOAh(ye){ǃJ.ǃXq(ye),ye=ǃJ.ǃRf(ye,0,1),this.ǃOAl();let Oe=ǃJ.ǃU.ǃOQn(),le=this.ǃOxJ===_192?-this.ǃfI():Oe,Je=this.ǃOxJ===_192?0:Oe-this.ǃfI(),ue=ǃJ.ǃOrh(ǃJ.ǃORI(le,Je,ye));this.ǃOOy(ue),this.ǃOAQ(!1)}ǃOAv(){return this.ǃOxJ===_192?(this.ǃnK()+this.ǃfI()+this.ǃOAK)/2:(this.ǃnK()+this.ǃOAK-ǃJ.ǃU.ǃOQn())/2}ǃOAj(){this.ǃOOS(0),this.ǃcQ(Math.min(ǃJ.ǃU.ǃOQX())),this.ǃcY(Math.min(ǃJ.ǃU.ǃOQn()-50,375)),this.ǃOAZ(this.ǃOAz)}ǃOxE(){this.ǃOxJ&&this.ǃNZ.removeAttribute(`dock${this.ǃOxJ}`)}ǃOAa(ye){ye&&(this.ǃOxJ=ye),""!==this.ǃOxJ&&this.ǃNZ.setAttribute(`dock${this.ǃOxJ}`,"")}ǃOlv(ye){ye=!!ye;ye===this.ǃOlP()||(super.ǃOlv(ye),this.ǃOAi()&&(ye?this.ǃOxE():this.ǃOAa(),this.ǃOJD.ǃHt()))}ǃOlW(){return this.ǃOxw?this.ǃOxw.ǃOxJ:this.ǃOxJ}ǃOAi(){return this.ǃOx_&&!this.ǃOAL}ǃOQZ(){return!this.ǃOx_||this.ǃOAL}ǃJX(ye){ye=!!ye;this.ǃOAr===ye||(this.ǃOAr=ye,this.ǃOAr?(this.ǃNZ.style.display="",this.ǃHt()):this.ǃNZ.style.display="none")}ǃJg(){return this.ǃOAL?this.ǃOAz:this.ǃOAr&&super.ǃJg()}ǃOAP(){return!!this.ǃOxO()&&(this.ǃOQZ()||this.ǃOxJ===_193)}ǃOAd(){return!!this.ǃOxO()&&(this.ǃOQZ()||this.ǃOxJ===_192)}ǃOAs(){return!!this.ǃOxO()&&(this.ǃOQZ()||this.ǃOxJ===_194)}ǃOhO(){return!!this.ǃOxO()&&(this.ǃOQZ()||"top"===this.ǃOxJ)}ǃOZO(){this.ǃNZ.style.transform=`translate(${this.ǃOAf}px, ${this.ǃOAS}px)`}ǃOOy(ye,Oe){if(ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye),Oe=!!Oe,this.ǃOAi())throw new Error(_198);this.ǃOAf=ye,this.ǃOZO(),this.ǃHt(),Oe||(this.ǃOAo=ye)}ǃOOS(ye,Oe){if(ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye),Oe=!!Oe,this.ǃOAi())throw new Error(_198);this.ǃOAS=ye,this.ǃOZO(),this.ǃHt(),Oe||(this.ǃOAe=ye)}ǃOhJ(ye){if(ye=!!ye,ye?++this.ǃOAN:--this.ǃOAN,0>this.ǃOAN)throw new Error("invalid unlock");0===this.ǃOAN&&this.ǃOxq()}ǃOxq(){0Je&&(ye=Je)}this.ǃOx$(`${ye}px`),this.ǃOJD.ǃ$D(!0),this.ǃOJD.ǃHt()}else this.ǃOAn=ye,this.ǃNZ.style.width=`${ye}px`,this.ǃHt();this.ǃOxq()}ǃcQ(ye,Oe){if(ǃJ.ǃXq(ye),ye=ǃJ.ǃOrh(ye),Oe=!!Oe,this.ǃOAi()&&(this.ǃOxJ===_192||this.ǃOxJ===_193))throw new Error("cannot set height of horizontally docked bar");let le=this.ǃOFS();if(yeJe&&(ye=Je)}this.ǃOx$(`${ye}px`),this.ǃOJD.ǃ$D(!0),this.ǃOJD.ǃHt()}else this.ǃOAX=ye,this.ǃNZ.style.height=`${ye}px`,this.ǃHt();this.ǃOxq()}ǃOxa(){super.ǃOxa(),this.ǃOQl(-1),this.ǃOxJ&&(this.ǃOxE(),this.ǃOxJ=""),this.ǃOhy(),this.ǃOJD&&this.ǃOJD.ǃHt(),ǃJ.ǃU.ǃJQ.ǃOjm()}ǃOxt(ye){super.ǃOxt(ye),ye&&(this.ǃOxJ=ye.ǃOlW(),this.ǃOx_=!0,ye.ǃOxb()&&(this.ǃOAI=ye))}ǃgs(){if(this.ǃOx_){const ye=new ǃJ.Event("beforeundock");ye.ǃBd=this,this.dispatchEvent(ye),this.ǃOhJ(!0);let Oe=null,le=null;this.ǃOxs()&&(le=this.ǃOxw.ǃXt(),this.ǃOJD=this.ǃOxw.ǃ_w(),this.ǃOxJ=this.ǃOxw.ǃOlW(),this.ǃOxw.ǃOAD(this),1===this.ǃOxw.ǃBj()&&(Oe=this.ǃOxw),this.ǃOxw=null);let Je=this.ǃOxJ===_192||this.ǃOxJ===_193;""===this.ǃOxJ&&(Je=this.ǃOJD.ǃOlr());let ue=this.ǃOJD.ǃOlI();if(ue&&ue.ǃOxO()){let ge=ue.ǃOlW();Je=ge===_192||ge===_193}le||(le=this.ǃXt());let pe;Je?(pe=le.right-le.left,pe>window.innerWidth/2&&(pe=window.innerWidth/2)):(pe=le.bottom-le.top,pe>window.innerHeight/2&&(pe=window.innerHeight/2)),0>=pe&&(pe=te),this.ǃOJD.ǃOlj(this),this.ǃOAb(),this.ǃOJD.ǃ$D(),this.ǃOAc(),this.ǃOxE(),this.ǃOAE(),this.ǃOAT(this.ǃOAe,this.ǃOAo,pe,ne),this.ǃOx$(`${pe}px`),ue&&ue.ǃOxO()&&ue.ǃOxJ?this.ǃOxJ=ue.ǃOxJ:!this.ǃOxJ&&(this.ǃOxJ=Je?_192:"top"),document.body.appendChild(this.ǃNZ),this.ǃOx_=!1,this.ǃOxp=!1,this.ǃHt(),this.ǃOJD=this.ǃOJD.ǃOxL(),this.ǃOJD.ǃOxV(),Oe&&!Oe.ǃOxb()&&(Oe.ǃOAi()?this.ǃOJD.ǃOxm(Oe):ǃJ.ǃU.ǃJs.ǃOlQ.ǃOhf(Oe)),this.ǃBE(),this.ǃOhJ(!1),this.ǃOJD.ǃOxI();const he=new ǃJ.Event("afterundock");he.ǃBd=this,this.dispatchEvent(he),this.ǃNZ.setAttribute("role",_197)}}ǃcI(ye,Oe,le){if(ǃJ.ǃq$(ye,ǃJ.ǃU.ǃJs),ǃJ.ǃUV(Oe),ǃJ.ǃq$(le,ǃJ.ǃU.ǃJs.ǃUw),!this.ǃOx_){if(ǃJ.ǃl.ǃO_)return this.ǃOxJ=Oe===_192||"top"===Oe?_192:_193,void this.ǃOAY();if(!ye&&!Oe&&!le&&this.ǃOAI)return this.ǃOAI.ǃBr(this),void this.ǃOAI.ǃBI(this);const Je=new ǃJ.Event("beforedock");Je.ǃBd=this,this.dispatchEvent(Je),this.ǃOhJ(!0),ye||(ye=this.ǃOJD),ye.ǃ_()||(ye=ǃJ.ǃU.ǃkq.ǃOhS(),assert(ye&&ye.ǃ_(),"Nowhere to dock this pane to"));let ue=Oe;if(Oe||(this.ǃOxJ=""),le&&le.ǃOxO()){let me=le.ǃOlW();me&&(ue=me)}ye.ǃOlr()?"top"===ue?ue=_192:ue===_194&&(ue=_193):ue===_192?ue="top":ue===_193&&(ue=_194);let pe=this.ǃXt(),he=pe.right-pe.left;this.ǃOJD=ye,le&&le.ǃOxO()?ue===_192||ue===_193?le.ǃOxU()?he=Math.min(le.ǃfI()/2,Math.max(he,this.ǃOFf())):(he=Math.max(le.ǃfI()/2,this.ǃOFf()),le.ǃcY(le.ǃfI()/2)):("top"===ue||ue===_194)&&(le.ǃOxU()?he=Math.min(le.ǃfG()/2,Math.max(he,this.ǃOFS())):(he=Math.max(le.ǃfG()/2,this.ǃOFS()),le.ǃcQ(le.ǃfG()/2))):!le&&(ue===_192||ue===_193?he=Math.min(this.ǃOJD.ǃfI()/2,he):("top"===ue||ue===_194)&&(he=Math.min(this.ǃOJD.ǃfG()/2,he))),this.ǃOAa(ue),this.ǃOx_=!0,document.body.removeChild(this.ǃNZ),Oe&&this.ǃOx$(`${he}px`),this.ǃOhy(),this.ǃOJD.ǃOlF(this,le,Oe),this.ǃOJD.ǃ$D(),ǃJ.ǃU.ǃJQ.ǃOjm(),this.ǃOhJ(!1);const ge=new ǃJ.Event("afterdock");ge.ǃBd=this,this.dispatchEvent(ge),this.ǃNZ.setAttribute("role","section")}}ǃJy(){this.ǃgs(),this.ǃOn()}ǃBE(){this.ǃOxs()?(this.ǃOxw.ǃBI(this),this.ǃOxw.ǃBE()):super.ǃBE()}ǃOhn(ye){if(ye=!!ye,!(!this.ǃOxO()||this.ǃOAi()||this.ǃOAp())){ye&&(this.ǃOOy(this.ǃOAo,!0),this.ǃOOS(this.ǃOAe,!0));let Oe=this.ǃXt(),le=window.innerWidth,Je=window.innerHeight;Oe.right>le&&this.ǃOOy(Math.max(this.ǃnK()-(Oe.right-le),0),!0),0>Oe.left&&this.ǃOOy(this.ǃnK()-Oe.left,!0),Oe.bottom>Je&&this.ǃOOS(Math.max(this.ǃne()-(Oe.bottom-Je),0),!0),0>Oe.top&&this.ǃOOS(this.ǃne()-Oe.top,!0)}}ǃOhX(){let ye=new ǃJ.Event("activate");ye.ǃBd=this,this.dispatchEvent(ye)}ǃOAA(ye){let Oe=new ǃJ.Event("displaystylechange");Oe.ǃBd=this,Oe.visible=ye,this.dispatchEvent(Oe)}ǃOFO(ye,Oe){if(ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),this.ǃOxs()||!this.ǃOxJ)return"";let le=this.ǃXt(),Je=ǃJ.ǃU.ǃOQ_(),ue=2*Je,pe="";if(ye>le.left+Je&&yele.top+Je&&Oe=le.left&&ye<=le.left+ue?Oe>=le.top&&Oe<=le.top+ue?pe="nw":Oe<=le.bottom&&Oe>=le.bottom-ue?pe="sw":Oe>le.top+ue&&Oe=le.right-ue?Oe>=le.top&&Oe<=le.top+ue?pe="ne":Oe<=le.bottom&&Oe>=le.bottom-ue?pe="se":Oe>le.top+ue&&Oe=le.right-Je&&(pe="e"):ye>le.left+ue&&ye=le.top&&Oe<=le.top+Je?pe="n":Oe<=le.bottom&&Oe>=le.bottom-Je&&(pe="s"))),this.ǃOAi())if(this.ǃOxJ===_192)pe="ne"==pe||"se"==pe||"e"==pe?"e":"";else if(this.ǃOxJ===_193)pe="nw"==pe||"sw"==pe||"w"==pe?"w":"";else if("top"===this.ǃOxJ)pe="sw"==pe||"se"==pe||"s"==pe?"s":"";else if(this.ǃOxJ===_194)pe="nw"==pe||"ne"==pe||"n"==pe?"n":"";else if("tab"===this.ǃOxJ)return"";return pe}ǃOAE(){let ye=ǃJ.ǃU.ǃkq.ǃOhR(this.ǃOAo,this.ǃOAe);this.ǃOAo=ye.x,this.ǃOAe=ye.y}ǃOAT(ye,Oe,le,Je){this.ǃNZ.setAttribute(_195,""),this.ǃOAf=Oe,this.ǃOAS=ye,this.ǃOZO(),this.ǃOAn=le,this.ǃOAX=Je,this.ǃNZ.style.width=`${le}px`,this.ǃNZ.style.height=`${Je}px`}ǃOhy(){this.ǃNZ.style.transform="",this.ǃNZ.style.width="",this.ǃNZ.style.height="",this.ǃNZ.removeAttribute(_195)}static ǃOhg(ye){ǃJ.ǃk(ye,ǃJ.ǃU.ǃJs.ǃUw),assert(!(ye instanceof ǃJ.ǃU.ǃJs.ǃOlQ),"cannot replace tabbed pane with another tabbed pane"),assert(ye.ǃOxO()&&ye.ǃOQZ(),"expected floating docking pane");let Oe=ǃJ.ǃOGA(ye.ǃOmx),le=ǃJ.ǃb(ǃJ.ǃU.ǃJs.ǃOlQ,ye.ǃ_w(),ye.ǃOlh(),Oe);return le.ǃgs(),le.ǃOxy(ye.ǃOlW()),le.ǃcY(ye.ǃfI()),le.ǃcQ(ye.ǃfG()),le.ǃOOy(ye.ǃnK()),le.ǃOOS(ye.ǃne()),ǃJ.ǃU.ǃHU(ye.ǃ_()),ye.ǃHt(),ǃJ.ǃU.ǃJQ.ǃOjm(),le}}}{const _199="UIPointerDown",_200="caption-hidden",_201="afterpopupclose";ǃJ.ǃU.ǃJs.ǃOlY=class extends ǃJ.ǃU.ǃJs.ǃOlp{constructor(ne,ie,ae,de){super(ne,ie,ae,de),this.ǃOFz=ǃJ.ǃU.ǃH("ui-caption",this.ǃNZ),this.ǃOAy=this.ǃyg(),this.ǃOFk=ǃJ.ǃU.ǃH("span",this.ǃOFz,null,"pane-caption-text"),this.ǃOFk.textContent=this.ǃOAy,this.ǃOhH="",this.ǃOFw=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃUC,this.ǃOFz),this.ǃOFw.onclick=()=>this.ǃJy(),this.ǃzj=ǃJ.ǃU.ǃH("ui-body",this.ǃNZ),this.ǃzj.setAttribute("row2",""),this.ǃNZ.setAttribute("captioned",""),this.ǃOhU=!1,this.ǃOhC=!1,this.ǃOFa=null,this.ǃOFD=!1,this.ǃOhu=!0,this.ǃOFp=()=>this.ǃYq(),this.ǃOh_=()=>this.ǃOxq(),this.ǃZE=re=>{let oe=re.detail;oe.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃOhm(oe.clientX,oe.clientY,oe.id)},this.ǃOFz.addEventListener(_199,this.ǃZE),this.ǃZT=()=>this.ǃOhb(),this.ǃOFz.addEventListener("UIDoubleTap",this.ǃZT),this.ǃZD=re=>{re.preventDefault(),this.ǃOhc(re.clientX,re.clientY)},this.ǃOFz.addEventListener("contextmenu",this.ǃZD)}ǃOWB(){return this.ǃOFz}ǃHO(){return this.ǃzj}ǃOn(){this.ǃOFz.removeEventListener(_199,this.ǃZE),this.ǃOFz.removeEventListener("UIDoubleTap",this.ǃZT),this.ǃOFz.removeEventListener("contextmenu",this.ǃZD),this.ǃZE=null,this.ǃZT=null,this.ǃZD=null,this.ǃOFw.ǃyY(),this.ǃOFw=null,ǃJ.ǃU.ǃHU(this.ǃOFk),ǃJ.ǃU.ǃHU(this.ǃOFz),ǃJ.ǃU.ǃHU(this.ǃzj),this.ǃOFk=null,this.ǃOFz=null,this.ǃzj=null,super.ǃOn()}ǃOAY(){super.ǃOAY(),this.ǃOFw.ǃyY(),this.ǃOFw=null}ǃOhm(ne,ie,ae){ǃJ.ǃXq(ne),ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),ǃJ.ǃU.ǃkq.ǃOjd(this,ne,ie,ae)}ǃOhb(){this.ǃOAp()||(this.ǃOQZ()?this.ǃOht():this.ǃgs())}ǃYp(ne,ie){if(ǃJ.ǃaB(ne),ǃJ.ǃaB(ie),this.ǃOFD)throw new Error("already awaiting popup window");if(this.ǃOFa)throw new Error("already in popup window");if(!this.ǃOjC())throw new Error("opening to popup window disabled for this pane");this.ǃOFD=!0;let ae=new ǃJ.Event("beforepopupopen");return ae.ǃBd=this,this.dispatchEvent(ae),ǃJ.ǃU.ǃOjq.ǃOjM("window.html",this.ǃOmx,this.ǃfI(),350,ne,ie).then(de=>{return this.ǃOZy(de),app.ǃJR(),de.addEventListener("unload",()=>this.ǃOZJ(de)),de}).catch(()=>{this.ǃOFD=!1;let re=ǃJ.ǃU.ǃOR.ǃOX("OK");re.ǃOg("Unable to open a popup window. If the browser warned you about a popup, you will need to approve it and then try again. Otherwise you may need to configure your browser or popup blocker to allow popups for this page.");let oe=new ǃJ.Event(_201);oe.ǃBd=this,this.dispatchEvent(oe)})}ǃOZy(ne){this.ǃOAi()?(this.ǃOhu=!0,this.ǃgs()):this.ǃOhu=!1,this.ǃJX(!1),ǃJ.ǃU.ǃHU(this.ǃzj),ne.document.body.appendChild(this.ǃzj),this.ǃOFD=!1,this.ǃOFa=ne,window.addEventListener("unload",this.ǃOFp),ne.addEventListener("resize",this.ǃOh_),ne.document.title=this.ǃOAy,this.ǃOxq();let ie=new ǃJ.Event("afterpopupopen");ie.ǃBd=this,this.dispatchEvent(ie)}ǃOZJ(ne){let ie=new ǃJ.Event("beforepopupclose");ie.ǃBd=this,this.dispatchEvent(ie),ǃJ.ǃU.ǃHU(this.ǃzj),this.ǃNZ.appendChild(this.ǃzj),this.ǃOFa=null,ne.removeEventListener("resize",this.ǃOh_),window.removeEventListener("unload",this.ǃOFp),this.ǃOFk.textContent=this.ǃOAy,this.ǃJX(!0),this.ǃOhu?this.ǃOht():this.ǃOhn(),ie=new ǃJ.Event(_201),ie.ǃBd=this,this.dispatchEvent(ie)}ǃYq(){this.ǃOFa&&(this.ǃOFa.close(),this.ǃOFa=null,this.ǃOFD=!1)}ǃjd(){return!!this.ǃOFa}ǃY$(){return this.ǃOFa}ǃJg(){return super.ǃJg()||this.ǃjd()}ǃfI(){return this.ǃOFa?this.ǃOFa.innerWidth:super.ǃfI()}ǃfG(){return this.ǃOFa?this.ǃOFa.innerHeight:super.ǃfG()}ǃOnO(){return this.ǃzj.clientWidth}ǃOnJ(){return this.ǃzj.clientHeight}ǃOhc(ne,ie){if(ǃJ.ǃXq(ne),ǃJ.ǃXq(ie),!this.ǃOAp()){ǃJ.ǃS.ǃT("ui.bars.captionMenu");let ae=ǃJ.ǃb(ǃJ.ǃU.ǃD,this.ǃOFz);ǃJ.ǃl.ǃJW&&(ae.ǃw(null,this.ǃOAi()?lang(".undock"):lang(".dock"),this.ǃZT),this.ǃOjC()&&ae.ǃw("open-popup",lang(".open-to-popup-window"),()=>this.ǃYp(),{ǃE:!0})),ae.ǃw("close",lang(".close"),()=>this.ǃJy()),ae.ǃHa(ne,ie),ǃJ.ǃS.ǃOu()}}ǃgd(){this.ǃOhU=!0}ǃOh$(ne){ne=!!ne,ne&&!this.ǃOhC?(this.ǃNZ.setAttribute(_200,""),this.ǃOFz.setAttribute("hidden","")):!ne&&this.ǃOhC&&(this.ǃNZ.removeAttribute(_200),this.ǃOFz.removeAttribute("hidden")),this.ǃOhC=ne}ǃOxt(ne){super.ǃOxt(ne),this.ǃOhU&&(ne?this.ǃOh$(ne.ǃOxb()):this.ǃOh$(!1))}ǃuJ(ne){if(ǃJ.ǃJO(ne),this.ǃOAy!==ne){this.ǃOAy=ne,this.ǃOFa?this.ǃOFa.document.title=ne:this.ǃOFk.textContent=ne;let ie=this.ǃOA_();ie&&ie.ǃOhq(this,this.ǃOAy)}}ǃOhM(){return this.ǃOAy}ǃuU(ne){if(ǃJ.ǃJO(ne),this.ǃOhH!==ne){this.ǃOhH=ne;let ie=this.ǃOA_();ie&&ie.ǃOhB(this,this.ǃOhH)}}ǃOhL(){return this.ǃOhH}ǃgs(){this.ǃOh$(!1),super.ǃgs()}ǃcI(ne,ie,ae){this.ǃOhU||(this.ǃOAI=null),super.ǃcI(ne,ie,ae)}ǃOht(){let ne=this.ǃOAI?null:this.ǃOlW();this.ǃcI(null,ne)}}}{const _202="bottom",_203="tabcontextmenu",_204="tabmiddleclick",_205="activetabchanged",_206="activewindowchange",ne=new Set(["top",_202]);ǃJ.ǃU.ǃJs.ǃOlQ=class extends ǃJ.ǃU.ǃJs.ǃOlp{constructor(ae,de,re,oe){super(ae,de,re,oe),this.ǃOAR="",this.ǃzj=ǃJ.ǃU.ǃH("ui-body",this.ǃNZ),this.ǃOAg=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃOhz,this.ǃNZ,{ǃOhk:!0,ǃOhV:!0}),this.ǃOhK=!1,this.ǃOho=null,this.ǃOhe=ye=>this.ǃOhr(ye),this.ǃOAg.addEventListener(_205,this.ǃOhe),this.ǃOhI=ye=>this.ǃOhN(ye),this.ǃOAg.addEventListener("tearofftab",this.ǃOhI),this.ǃOhG=ye=>this.ǃOhE(ye.ǃOhT),this.ǃOAg.addEventListener(_204,this.ǃOhG),this.ǃOhD=ye=>{ye.preventDefault(),this.ǃOhi(ye.ǃOhT,ye.clientX,ye.clientY)},this.ǃOAg.addEventListener(_203,this.ǃOhD),this.ǃOha=ye=>this.ǃOhp(ye.ǃOhT),this.ǃOAg.addEventListener("tabclose",this.ǃOha),this.ǃOhw=-1,this.ǃMh(_202),this.ǃOhY=()=>this.ǃZt(),ǃJ.ǃU.ǃJQ.addEventListener(_206,this.ǃOhY)}ǃOn(){-1!==this.ǃOhw&&(window.clearTimeout(this.ǃOhw),this.ǃOhw=-1),ǃJ.ǃU.ǃJQ.removeEventListener(_206,this.ǃOhY),this.ǃOhY=null,ǃJ.ǃU.ǃHU(this.ǃzj),this.ǃzj=null,this.ǃOAg.removeEventListener("tabclose",this.ǃOha),this.ǃOha=null,this.ǃOAg.removeEventListener(_203,this.ǃOhD),this.ǃOhD=null,this.ǃOAg.removeEventListener(_204,this.ǃOhG),this.ǃOhG=null,this.ǃOAg.removeEventListener("tearofftab",this.ǃOhI),this.ǃOhI=null,this.ǃOAg.removeEventListener(_205,this.ǃOhe),this.ǃOhe=null,this.ǃOAg.ǃyY(),this.ǃOAg=null,super.ǃOn()}ǃHO(){return this.ǃzj}ǃe(){return this.ǃOAg}ǃBj(){return this.ǃOAg.ǃBj()}ǃMv(){this.ǃOhK=!0}ǃOxb(){return this.ǃOhK}ǃMh(ae){if(!ne.has(ae))throw new Error(`invalid tab side '${ae}'`);this.ǃOAR===ae||(this.ǃOAR===_202?(this.ǃNZ.removeAttribute("tabbed-bottom"),this.ǃzj.removeAttribute("row1"),this.ǃOAg.ǃ_().removeAttribute("row2")):(this.ǃNZ.removeAttribute("tabbed-top"),this.ǃzj.removeAttribute("row2"),this.ǃOAg.ǃ_().removeAttribute("row1")),this.ǃOAR=ae,this.ǃNZ.setAttribute("tabbed-"+this.ǃOAR,""),this.ǃOAR===_202?(this.ǃzj.setAttribute("row1",""),this.ǃOAg.ǃ_().setAttribute("row2","")):(this.ǃzj.setAttribute("row2",""),this.ǃOAg.ǃ_().setAttribute("row1","")),this.ǃOAg.ǃMh(this.ǃOAR))}ǃOxc(){return assert(1===this.ǃOAg.ǃBj(),"should have only one tab"),this.ǃOAg.ǃOhQ(0).ǃHc()}ǃBr(ae,de){if(ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw),ae instanceof ǃJ.ǃU.ǃJs.ǃOlQ){let re=ae.ǃOAg;for(let oe of re.ǃHb()){let ye=oe.ǃHc();ye.ǃOxa();let Oe=this.ǃOAg.ǃBe(ye.ǃyg(),de);Oe.ǃOhj(ye),Oe.ǃxb(ye.ǃwR()),ye.ǃOxt(this)}ae.ǃOn(),this.ǃOAg.ǃBF(this.ǃOAg.ǃBj()-1)}else{ae.ǃOxa(),ae.ǃOxt(this);let re=ae instanceof ǃJ.ǃU.ǃJs.ǃOlY?ae.ǃOhM():ae.ǃyg();let oe=this.ǃOAg.ǃBe(re,de);oe.ǃOhj(ae),oe.ǃxb(ae.ǃwR());const ye=ae.ǃOhL();ye&&oe.ǃOhF(ye),this.ǃOho||this.ǃOhW(ae)}this.ǃOxq()}ǃOhZ(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw);for(let de of this.ǃOAg.ǃHb())if(de.ǃHc()===ae)return de;return null}ǃOhl(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw);let de=0;for(let re of this.ǃOAg.ǃHb()){if(re.ǃHc()===ae)return de;++de}return-1}ǃOAD(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw);let de=this.ǃOhl(ae);assert(-1{if(ǃJ.ǃOD){if(ǃJ.ǃ_O(re))return;}else if(re.ǃ_O())return;re.ǃOhX()},5)}else this.ǃOho.ǃOhX();ǃJ.ǃU.ǃJQ.ǃrD(this.ǃOho)}}ǃOxq(){super.ǃOxq(),this.ǃOho&&this.ǃOho.ǃOxq()}ǃBI(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw);let de=this.ǃOhl(ae);0>de||this.ǃOAg.ǃBF(de)}ǃOhq(ae,de){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw),ǃJ.ǃJO(de);let re=this.ǃOhZ(ae);re&&re.ǃWH(de)}ǃOhB(ae,de){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃUw),ǃJ.ǃJO(de);const re=this.ǃOhZ(ae);re&&re.ǃOhF(de)}ǃOhr(ae){let de=ae.ǃOhT.ǃHc();de&&this.ǃOhW(de,ae.ǃOhh)}ǃOhN(ae){let de=ae.ǃOhT,re=de.ǃHc();re.ǃOxO()&&(re.ǃOjO(-30,-16),ǃJ.ǃU.ǃkq.ǃOhv(re,ae.pointerId),ǃJ.ǃU.ǃkq.ǃOjr(ae.clientX,ae.clientY,ae.pointerId),ǃJ.ǃU.ǃJQ.ǃrD(re))}ǃOhi(ae,de,re){ǃJ.ǃk(ae,ǃJ.ǃU.ǃUu.ǃOhP),ǃJ.ǃXq(de),ǃJ.ǃXq(re);let oe=ae.ǃOhd(),ye=ae.ǃOhs(),Oe=ae.ǃOvO();if(oe||ye||Oe){ǃJ.ǃS.ǃT("ui.bars.tabPaneMenu");let le=ǃJ.ǃb(ǃJ.ǃU.ǃD,this.ǃzj);ǃJ.ǃl.ǃJW&&oe&&le.ǃw(null,lang(".undock"),()=>{let Je=ae.ǃHc();Je.ǃgs()}),ye&&le.ǃw("close",lang(".close"),()=>this.ǃOhp(ae)),1this.ǃOvJ(ae)),le.ǃHa(de,re),ǃJ.ǃS.ǃOu()}}ǃOhp(ae){let de=ae.ǃHc();de.ǃJy()}ǃOhE(ae){this.ǃOhp(ae)}ǃOvJ(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃUu.ǃOhP);let de=ae.ǃHc(),re=[];for(let oe of this.ǃOAg.ǃHb()){let ye=oe.ǃHc();ye!==de&&re.push(ye)}for(let oe of re)oe.ǃJy()}ǃHt(){super.ǃHt(),this.ǃOho&&this.ǃOho.ǃHt()}ǃOvy(){for(let ae of this.ǃOAg.ǃHb()){let de=ae.ǃHc();if(!de.ǃOxO())return!0}return!1}ǃOQv(){return this.ǃOho||this}ǃBY(){return this.ǃNZ.hasAttribute("active")}ǃZt(){let ae=ǃJ.ǃU.ǃJQ.ǃym()===this.ǃOho;ǃJ.ǃU.ǃrx(this.ǃNZ,"active",ae)}static ǃOhf(ae){ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃOlQ),assert(!ae.ǃOxb(),"should keep tabbed pane"),ǃJ.ǃk(ae,ǃJ.ǃU.ǃJs.ǃOlQ),assert(1===ae.ǃBj(),"expected tab pane with a single tab");let de=ae.ǃOxc();de.ǃgs(),de.ǃOxy(ae.ǃOlW()),de.ǃcY(ae.ǃfI()),de.ǃcQ(ae.ǃfG()),de.ǃOOy(ae.ǃnK()),de.ǃOOS(ae.ǃne()),ae.ǃOn()}}}{function ee(){if(isNaN(Ee)){let Ie=ǃJ.ǃU.ǃOnl("width",{className:"dockIndicator"});if(!Ie.endsWith("px"))throw new Error("CSS style for dock indicators must specify the size in units of 'px'");Ee=parseInt(Ie,10)||oe}return Ee}function te(Ie){let _e=Ie.ǃOlW(),$e=we.indexOf(Ie);assert(-1!==$e,"cannot find swipe-in pane");for(let Ae=1,qe=we.length;Ae{let _e=Ie.detail;_e.ǃTd!==ǃJ.ǃDO.ǃaa||!ye||ǃJ.ǃU.ǃkq.ǃOju(_e.clientX,_e.clientY,_e.id)&&(Ie.preventDefault(),Ie.stopPropagation())}),document.addEventListener("UIPointerMove",Ie=>{if(ye){let _e=Ie.detail;ǃJ.ǃU.ǃkq.ǃOjr(_e.clientX,_e.clientY,_e.id)&&(Ie.preventDefault(),Ie.stopPropagation())}}),document.addEventListener("UIPointerUp",Ie=>{if(ye){let _e=Ie.detail;ǃJ.ǃU.ǃkq.ǃOjI(_e.clientX,_e.clientY,_e.screenX,_e.screenY,_e.id)&&(Ie.preventDefault(),Ie.stopPropagation()),app.ǃJR()}}),window.addEventListener("resize",()=>{let Ie=ǃJ.ǃU.ǃOQf();Ie&&Ie.ǃOQg(),ǃJ.ǃU.ǃkq.ǃOvf(),ǃJ.ǃU.ǃkq.ǃOQH(!0)}),ǃJ.ǃU.ǃJQ.addEventListener("zindexchanged",()=>ǃJ.ǃU.ǃkq.ǃOvS());class Ze extends ǃJ.Event.ǃU_{constructor(){if(ye)throw new Error("already created DockManager");super(),ye=!0}ǃOvn(){return!!(Oe.size||ge.size)}ǃOAG(Ie){ǃJ.ǃk(Ie,ǃJ.ǃU.ǃJs.ǃOlp),assert(!Le.includes(Ie),"Docking pane already exists in dock manager, don't try to add again"),Le.push(Ie)}ǃOAD(Ie){ǃJ.ǃk(Ie,ǃJ.ǃU.ǃJs.ǃOlp);let _e=Le.indexOf(Ie);assert(0<=_e,"Cannot find docking pane to remove"),Le.splice(_e,1)}ǃOAF(Ie){ǃJ.ǃk(Ie,ǃJ.ǃU.ǃJs.ǃOlp),assert(Ie.ǃOAp(),"should be in swipe-in mode"),we.push(Ie),xe||Ie.ǃOlW()!==_207?!ke&&Ie.ǃOlW()===_208&&(ke=Ie):xe=Ie}ǃOvS(){Le.sort(ǃJ.ǃU.Window.ǃob)}ǃOvX(Ie,_e){ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e);for(let $e=0,Ae=Le.length,qe;$e=ǃJ.ǃU.ǃOQn()-ae}ǃOSu(Ie){return ǃJ.ǃXq(Ie),this.ǃOvR(Ie)||this.ǃOvg(Ie)}ǃOju(Ie,_e,$e){if(ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e),ǃJ.ǃXq($e),Oe.has($e)||ge.has($e)||ǃJ.ǃU.ǃOSt.ǃOSc()||ǃJ.ǃU.ǃD.ǃOQq(Ie,_e,window))return!1;if(we.length&&-2==Ne)if(this.ǃOvR(Ie)&&xe){if(Xe&&!Xe.ǃOAw())return!1;if(Xe&&Xe.ǃOlW()===_207&&(xe=te(Xe)),xe!==Xe)return Se=xe,Se.ǃBE(),Ne=$e,Re=0,!0}else if(this.ǃOvg(Ie)&&ke){if(Xe&&!Xe.ǃOAw())return!1;if(Xe&&Xe.ǃOlW()===_208&&(ke=te(Xe)),ke!==Xe)return Se=ke,Se.ǃBE(),Ne=$e,Re=0,!0}for(let Ae=Le.length-1;0<=Ae;--Ae){let qe=Le[Ae],Te=qe.ǃOFO(Ie,_e);if("m"===Te)return qe!==Xe||-2!==Ne||ǃJ.ǃU.ǃOSC(Ie,_e,qe)||(Ce=$e,De=Ie,Fe=_e,Re=Xe.ǃOlW()===_207?Xe.ǃfI()-Ie:Xe.ǃnK()-Ie),!1;if(Te&&!qe.ǃOAp()){if(le.has(qe))return!1;if(ǃJ.ǃU.ǃJQ.ǃOj$(Ie,_e,qe,window))break;return ge.set($e,qe),me.set(qe,$e),qe.ǃOjf(Te),qe.ǃOQP(Ie,_e),qe.ǃOjn(qe.ǃnK(),qe.ǃne()),qe.ǃOjg(qe.ǃfI(),qe.ǃfG()),qe.ǃOhX(),!0}}return!1}ǃOvH(Ie,_e){ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e);for(let $e=0,Ae=ve.length,qe;$e=De+de)&&!ǃJ.ǃU.ǃOSC(Ie,_e,Xe)&&(Ne=Ce,Ce=-2,Se=Xe,Xe=null),Math.abs(Fe-_e)>=30&&(Ce=-2)),Se&&Ne===$e)return ǃJ.ǃU.ǃkq.ǃOvC(Ie+Re,_e),!1;if(Oe.has($e))return ǃJ.ǃU.ǃkq.ǃOvu(Ie,_e,$e,Oe.get($e),Ae),!0;if(ge.has($e))return ǃJ.ǃU.ǃkq.ǃOv_(Ie,_e,$e,ge.get($e)),!0;for(let qe=Le.length-1,Te;0<=qe;--qe)if(Te=Le[qe],!Te.ǃOAp()){let Ye=Te.ǃOFO(Ie,_e);if(Ye){if(ǃJ.ǃU.ǃJQ.ǃOj$(Ie,_e,Te,window))break;return Ue?"e"===Ye||"w"===Ye?Ue.Set("ew-resize"):"n"===Ye||"s"===Ye?Ue.Set("ns-resize"):"nw"===Ye||"se"===Ye?Ue.Set("nwse-resize"):"ne"===Ye||"sw"===Ye?Ue.Set("nesw-resize"):"m"===Ye&&(ǃJ.ǃU.ǃVq(Ue),Ue=null):"e"===Ye||"w"===Ye?Ue=ǃJ.ǃU.ǃV_("ew-resize"):"n"===Ye||"s"===Ye?Ue=ǃJ.ǃU.ǃV_("ns-resize"):"nw"===Ye||"se"===Ye?Ue=ǃJ.ǃU.ǃV_("nwse-resize"):("ne"===Ye||"sw"===Ye)&&(Ue=ǃJ.ǃU.ǃV_("nesw-resize")),!!Ue}}return ǃJ.ǃU.ǃVq(Ue),Ue=null,!1}ǃOhv(Ie,_e){ǃJ.ǃk(Ie,ǃJ.ǃU.ǃJs.ǃOlp),ǃJ.ǃXq(_e),Ie.ǃBE();let $e=Ie.ǃOlW();Ie.ǃgs(),("top"===$e||$e===_209)&&Ie.ǃOjO(Ie.ǃfI()/-2,Ie.ǃOjy()),Oe.set(_e,Ie),le.set(Ie,_e),1===Oe.size?ǃJ.ǃU.ǃkq.ǃOvm():ǃJ.ǃU.ǃkq.ǃOvb()}ǃOvC(Ie,_e){ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e);let $e=ǃJ.ǃU.ǃOQn(),Ae=Se.ǃfI(),qe=Se.ǃOlW(),Te=0;if(qe===_207){let Be=Ie-Ae;080&&ǃJ.ǃU.ǃkq.ǃOhv(Ae,$e),Ae.ǃOQZ()){Ae.ǃOOy(Ie+Ae.ǃOjJ()),Ae.ǃOOS(_e+Ae.ǃOjy());const Te=new ǃJ.Event("move");Te.ǃBd=Ae,Ae.dispatchEvent(Te);let Be=ǃJ.ǃU.ǃkq.ǃOvH(Ie,_e);qe||1!==Oe.size?ǃJ.ǃU.ǃkq.ǃOvb():(Ae.ǃOQd()!==Ie||Ae.ǃOQs()!==_e)&&ǃJ.ǃU.ǃkq.ǃOvm(),Be!==ue&&(ue&&ǃJ.ǃU.ǃkq.ǃOvt(),Be&&ǃJ.ǃU.ǃkq.ǃOv$(Be,Ae),ue=Be);let Ye=ǃJ.ǃU.ǃOQf();if(Ye&&1===Oe.size){let He=ǃJ.ǃU.ǃkq.ǃOvU(Ie,_e,Ae);He||(He=Ye.ǃOxf(Ie,_e,!0)),He&&!He.ǃOlE()&&(He=null),me.has(He)&&(He=null),He!==pe&&(pe&&ǃJ.ǃU.ǃkq.ǃOvq(),He&&ǃJ.ǃU.ǃkq.ǃOvM(He),pe=He)}}}ǃOv_(Ie,_e,$e,Ae){ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e),ǃJ.ǃXq($e),ǃJ.ǃk(Ae,ǃJ.ǃU.ǃJs.ǃOlp);let qe=Ie-Ae.ǃOQd(),Te=_e-Ae.ǃOQs(),Be=Ae.ǃOjX(),Ye=Ae.ǃOjR(),He=Ae.ǃOjH(),ze=Ae.ǃOjU(),je=Ae.ǃOjS();if("e"===je||"se"===je||"ne"===je)Ae.ǃcY(He+qe);else if("w"===je||"sw"===je||"nw"===je){if(Ae.ǃOQZ()){let Pe=Be+He-Ae.ǃOFf();Ae.ǃOOy(Math.min(Be+qe,Pe))}Ae.ǃcY(He-qe)}if("s"===je||"sw"===je||"se"===je)Ae.ǃcQ(ze+Te);else if("n"===je||"nw"===je||"ne"===je){if(Ae.ǃOQZ()){let Pe=Ye+ze-Ae.ǃOFS();Ae.ǃOOS(Math.min(Ye+Te,Pe))}Ae.ǃcQ(ze-Te)}}ǃOjI(Ie,_e,$e,Ae,qe){if(ǃJ.ǃXq(Ie),ǃJ.ǃXq(_e),ǃJ.ǃXq($e),ǃJ.ǃXq(Ae),ǃJ.ǃXq(qe),Ce===qe&&(Ce=-2),Se&&Ne===qe)return Ie+=Re,Se.ǃOlW()===_207?IeǃJ.ǃU.ǃOQn()-Se.ǃfI()/2?(Se.ǃOAZ(!1),Xe&&Xe!==Se&&Xe.ǃOAZ(!0),Xe===Se&&(Xe=null)):(Se.ǃOAZ(!0),Xe&&Xe!==Se&&Xe.ǃOAZ(!1),Xe=Se),Se=null,Ne=-2,this.ǃOvc(),!1;if(Oe.has(qe)){let Te=Oe.get(qe);if(ǃJ.ǃU.ǃkq.ǃOvu(Ie,_e,qe,Te,!0),ue)ǃJ.ǃU.ǃkq.ǃOvB(Te);else{let Be=Te.ǃXt();if(Te instanceof ǃJ.ǃU.ǃJs.ǃOlY&&Te.ǃOjC()&&(0>=Be.right||0>=Be.bottom||Be.left>ǃJ.ǃU.ǃOQn()||Be.top>ǃJ.ǃU.ǃOQX())){let Ye=ǃJ.ǃU.devicePixelRatio;Te.ǃYp($e/Ye+Te.ǃOjJ(),Ae/Ye+Te.ǃOjy()).catch(()=>{Te.ǃOhn()})}else Te.ǃOhn()}return Oe.delete(qe),le.delete(Te),ǃJ.ǃU.ǃkq.ǃOvq(),ǃJ.ǃU.ǃkq.ǃOvb(),ǃJ.ǃU.ǃkq.ǃOvt(),ue=null,pe=null,!0}if(ge.has(qe)){let Te=ge.get(qe);return ǃJ.ǃU.ǃkq.ǃOjr(Ie,_e,qe),Te.ǃOhn(),ge.delete(qe),me.delete(Te),!0}return!1}ǃOvf(){for(let Ie=0,_e=Le.length;Ie<_e;++Ie)Le[Ie].ǃHt()}ǃOQH(Ie){Ie=!!Ie;for(let _e of Le)_e.ǃOhn(Ie);for(let _e of we)_e.ǃOAj()}ǃOvL(Ie){if(ǃJ.ǃk(Ie,ǃJ.ǃU.ǃJs),Ie.ǃOlE())return Ie;let _e=Ie.ǃOlG(),$e,Ae;for(let qe=0,Te=_e.length;qeBe)&&Ie.ǃcQ(qe/2):(!_e.ǃOxU()||Ie.ǃfI()>Te)&&Ie.ǃcY(qe/2);Ae.ǃ$D(!0)}_e.ǃOhJ(!1),Ie.ǃOhJ(!1)}}ǃOvq(){for(let Ie=0,_e=be.length,$e;Ie<_e;++Ie)$e=be[Ie],$e.ǃOvK(),ǃJ.ǃOrE(ve,$e);ǃJ.ǃXX(be)}ǃOvM(Ie){if(Je){assert(Ie.ǃOlE(),_210);let _e=Ie.ǃXt();const $e=ee(),Ae=$e/2,qe=$e/8,Te=(_e.left+_e.right)/2-Ae,Be=(_e.top+_e.bottom)/2-Ae;let Ye,He,ze,je,Pe;(!Ie.ǃOxO()||Ie.ǃOAi())&&(Ye=ǃJ.ǃU.ǃkq.ǃOvz(Ie,Te-qe-$e,Be,_207),He=ǃJ.ǃU.ǃkq.ǃOvz(Ie,Te,Be-qe-$e,"top"),ze=ǃJ.ǃU.ǃkq.ǃOvz(Ie,Te+qe+$e,Be,_208),je=ǃJ.ǃU.ǃkq.ǃOvz(Ie,Te,Be+qe+$e,_209),ve.push(Ye,He,ze,je),be.push(Ye,He,ze,je)),Pe=ǃJ.ǃU.ǃkq.ǃOvz(Ie,Te,Be,"tab"),ve.push(Pe),be.push(Pe)}}ǃOvc(){let Ie=0;Se&&(Ie+=Se.ǃOAv()),Xe&&(Ie+=Xe.ǃOAv());let _e=new ǃJ.Event("swipeinviewoffset");_e.offsetX=Ie,this.dispatchEvent(_e)}}ǃJ.ǃU.ǃkq=ǃJ.ǃb(Ze)}{const ee=["left","top","right","bottom","tab"];let de={duration:300,easing:"ease",direction:null};ǃJ.ǃU.ǃOvk=class extends ǃJ.ǃq{constructor(oe,ye,Oe,le,Je,ue){ǃJ.ǃXq(ye),ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),ǃJ.ǃXq(Je),super(),assert(oe.ǃOlE(),"Must be a dock target"),assert(ee.includes(ue),"Invalid dock indicator side"),this.ǃOvN=document.body,this.ǃNZ=ǃJ.ǃU.ǃH("div",this.ǃOvN,null,"dockIndicator"),this.ǃOvG=oe,this.ǃOvE=ue,this.ǃOvT=0,this.ǃOvD=0,this.ǃXx=ye,this.ǃXA=Oe,this.ǃtu=le,this.ǃt_=Je,this.ǃOFK=null,this.ǃOvi=!1,"left"===this.ǃOvE?this.ǃOvT=-50:"top"===this.ǃOvE?this.ǃOvD=-50:"right"===this.ǃOvE?this.ǃOvT=50:"bottom"===this.ǃOvE&&(this.ǃOvD=50)}ǃOva(oe){oe=!!oe,assert(!this.ǃOFK,"Should not start new dock indicator animation if already playing animation");let ye=[{transform:`translate(${this.ǃXx+this.ǃOvT}px, ${this.ǃXA+this.ǃOvD}px)`,opacity:"0"},{transform:`translate(${this.ǃXx}px, ${this.ǃXA}px)`,opacity:"1"}];de.direction=oe?"reverse":"normal",this.ǃOFK=this.ǃNZ.animate(ye,de),this.ǃOFK.onfinish=()=>this.ǃOvp()}ǃOvV(){app.ǃlN()?this.ǃOva(!1):this.ǃOvp()}ǃOvK(){assert(!this.ǃOvi,"Animating out dock indicator which is already animating out"),this.ǃOvi=!0,this.ǃNZ.style.transform="",app.ǃlN()?this.ǃOFK?ǃJ.ǃOrs(this.ǃOFK):this.ǃOva(!0):(this.ǃOvw(),window.setTimeout(()=>this.ǃOvp(),10))}ǃOvp(){this.ǃOFK=null,this.ǃOvi?this.ǃOn():this.ǃOvw()}ǃOvw(){this.ǃNZ.style.transform=`translate(${this.ǃXx}px, ${this.ǃXA}px)`}ǃOn(){this.ǃOFK=null,this.ǃOvN.removeChild(this.ǃNZ),this.ǃNZ=null,this.ǃOvN=null,this.ǃOvG=null,ǃJ.ǃyY(this)}ǃV$(oe,ye){return ǃJ.ǃXq(oe),ǃJ.ǃXq(ye),oe>=this.ǃXx&&ye>=this.ǃXA&&oe<=this.ǃXx+this.ǃtu&&ye<=this.ǃXA+this.ǃt_}ǃOve(){return this.ǃOvE}ǃOvo(){return this.ǃOvG}}}{const ee="0.5",te=[{transform:"scale(0.9)",opacity:"0"},{transform:"scale(1)",opacity:ee}];let ne={duration:300,easing:"ease",fill:"forwards",direction:null};ǃJ.ǃU.ǃOvr=class extends ǃJ.ǃq{constructor(ae,de,re,oe,ye){ǃJ.ǃXq(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re),ǃJ.ǃXq(oe),ǃJ.ǃJO(ye),super(),this.ǃOvN=document.body,this.ǃNZ=ǃJ.ǃU.ǃH("div",this.ǃOvN,null,"dockGhost"),this.ǃOFK=null,this.ǃOvi=!1;"left"===ye?this.ǃNZ.classList.add("originLeft"):"top"===ye?this.ǃNZ.classList.add("originTop"):"right"===ye?this.ǃNZ.classList.add("originRight"):"bottom"===ye?this.ǃNZ.classList.add("originBottom"):"tab"===ye?this.ǃNZ.classList.add("originMiddle"):void 0;this.ǃOvY(ae,de,re,oe)}ǃOva(ae){ae=!!ae,assert(!this.ǃOFK,"Should not start new dock ghost animation if already playing animation"),ne.direction=ae?"reverse":"normal",this.ǃOFK=this.ǃNZ.animate(te,ne),this.ǃOFK.onfinish=()=>this.ǃOvQ()}ǃOvV(){app.ǃlN()?this.ǃOva(!1):this.ǃNZ.style.opacity=ee}ǃOvK(){this.ǃOvi=!0,app.ǃlN()?this.ǃOFK?ǃJ.ǃOrs(this.ǃOFK):this.ǃOva(!0):this.ǃOvQ()}ǃOvQ(){this.ǃOFK=null,this.ǃOvi&&this.ǃOn()}ǃOn(){this.ǃOFK=null,this.ǃOvN.removeChild(this.ǃNZ),this.ǃNZ=null,this.ǃOvN=null,ǃJ.ǃyY(this)}ǃOvY(ae,de,re,oe){ǃJ.ǃXq(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re),ǃJ.ǃXq(oe),this.ǃNZ.style.left=`${ae}px`,this.ǃNZ.style.top=`${de}px`,this.ǃNZ.style.width=`${re}px`,this.ǃNZ.style.height=`${oe}px`}}}{const ee=ǃJ.ǃU.devicePixelRatio;let ie=new Map;const ae={name:null,source:null,ǃ_x:!1};ǃJ.ǃU.ǃ$B=class extends ǃJ.ǃq{constructor(re,oe,ye,Oe,le){ǃJ.ǃk(re,ǃJ.ǃU.ǃOvj),ǃJ.ǃXq(oe),ǃJ.ǃXq(ye),ǃJ.ǃUV(Oe),ǃJ.ǃUV(le),super(),this.ǃOvF=re,this.ǃOvW=oe,this.ǃOvZ=ye,this.ǃOvl=oe/ee,this.ǃOvx=ye/ee,this.ǃOvA=null,this.ǃOlH=!1,this.ǃOvh=null,this.ǃgb=null,this.ǃOvv=!1,this.ǃOvP=!1,this.ǃOYj="",this.ǃOvd="",this.ǃOvs(Oe,le)}ǃOvs(re,oe){if(this.ǃOYj=re||"",this.ǃOvd=oe||"",this.ǃOvv=!1,this.ǃOvP=!1,this.ǃgb=new Promise(ye=>this.ǃOvh=ye),this.ǃOvd){let ye=`${this.ǃOvF.ǃOPO()},${this.ǃOvd}`;assert(!ie.has(ye),"icon already cached"),ie.set(ye,this)}}ǃyY(){if(!this.ǃOvv){if(this.ǃOvv=!0,this.ǃOvP=!1,this.ǃOvF.ǃOPJ(this),this.ǃOvd){let re=`${this.ǃOvF.ǃOPO()},${this.ǃOvd}`;ie.delete(re)}this.ǃOlH=!1,this.ǃOvh=null,this.ǃgb=null,this.ǃOYj="",this.ǃOvd=""}}ǃOPy(){return this.ǃOPO()<=app.ǃ$L()}ǃOPf(){return this.ǃOPO()>app.ǃ$L()&&this.ǃOPO()<=app.ǃi()}ǃOPS(){return this.ǃOPO()>app.ǃi()}ǃOPn(){return this.ǃOvv}ǃOPX(){return this.ǃOvP}ǃOXq(){return this.ǃOvF}ǃOPR(){return this.ǃOvF.ǃOPR()}ǃOPg(){return this.ǃOvF.ǃOPg()}ǃOPH(){return this.ǃOvF.ǃOPH()}ǃOPU(){return this.ǃOvF.ǃOPC()}ǃOPO(){return this.ǃOvF.ǃOPO()}ǃOPu(){return this.ǃOvl}ǃOP_(){return this.ǃOvx}ǃOPm(){return this.ǃOvF.ǃOPm()}ǃOPb(){return this.ǃOvW}ǃOPc(){return this.ǃOvZ}ǃOPt(re){ǃJ.ǃq$(re,ǃJ.ǃU.ǃOP$),this.ǃOvA=re}ǃUH(){return this.ǃOvA}ǃOPq(){return this.ǃOlH}ǃOPM(){this.ǃOlH||(this.ǃOlH=!0,this.ǃOvh(),this.ǃOvh=null)}ǃOPB(){return this.ǃgb}addEventListener(re,oe,ye){return this.ǃOvF.addEventListener(re,oe,ye)}removeEventListener(re,oe,ye){return this.ǃOvF.removeEventListener(re,oe,ye)}ǃOPL(re,oe){ǃJ.ǃJO(re),ǃJ.ǃBA(oe),this.ǃOvF.ǃOPz(),ǃJ.ǃOeG.ImageBitmap&&!oe.ǃ_x?ǃJ.ǃ$Z(re).then(createImageBitmap).then(ye=>{this.ǃOvF.ǃOPk(),this.ǃ$D(ye,oe)}).catch(ye=>{this.ǃOvF.ǃOPk(),this.ǃOvP=!0,console.warn(`[Icon] Error updating from URL '${re}': `,ye)}):ǃJ.ǃ_Z(re).then(ye=>{this.ǃOvF.ǃOPk(),this.ǃ$D(ye,oe)}).catch(ye=>{this.ǃOvF.ǃOPk(),this.ǃOvP=!0,console.warn(`[Icon] Error updating from URL '${re}': `,ye)})}ǃ$D(re,oe){ǃJ.ǃOrC(re),ǃJ.ǃBA(oe),oe&&oe.ǃ_x&&(0>=re.width||0>=re.height)&&(oe.width=this.ǃOPO(),oe.height=this.ǃOPO()),this.ǃOvF.ǃOPV(this,re,oe)}ǃOPK(re){ǃJ.ǃbw(re,ǃJ.ǃU.ǃ$B);for(let ye of re)if(ye.ǃOPO()!==this.ǃOPO())throw new Error("overlay icons must be same size");let oe=re.map(ye=>ye.ǃOPB());return Promise.all(oe).then(()=>{for(let ye of re)this.ǃOPo(ye)})}ǃOPo(re){ǃJ.ǃk(re,ǃJ.ǃU.ǃ$B),this.ǃOXq().ǃOPo(this,re)}static ǃOPe(re,oe,ye){ǃJ.ǃJO(re),ǃJ.ǃU.ǃ$B.ǃOPr(oe),ǃJ.ǃBA(ye),ye=Object.assign({},ae,ye);let Oe=ie.get(`${oe},${re}`);if(Oe)return Oe;let le=ǃJ.ǃU.ǃOPN.ǃOPI(oe,ye.name,ye.source||re);return le.ǃOPL(re,{ǃOPG:!0,ǃ_x:ye.ǃ_x}),le}static ǃJf(re,oe,ye){ǃJ.ǃEX(re),ǃJ.ǃU.ǃ$B.ǃOPr(oe),ǃJ.ǃBA(ye),ye=Object.assign({},ae,ye);let Oe=ǃJ.ǃU.ǃOPN.ǃOPI(oe,ye.name,ye.source);return re&&Oe.ǃ$D(re,{ǃOPG:!0,ǃ_x:ye.ǃ_x}),Oe}static ǃOPr(re){if(ǃJ.ǃXq(re),re<1||re>2048)throw new RangeError("invalid icon size")}}}{const _213="icon from wrong sheet",ee=ǃJ.ǃU.devicePixelRatio,ye=2048,ue={ǃOPG:!1,ǃ_x:!1,width:0,height:0};let pe=new Set;ǃJ.ǃU.ǃOvj=class extends ǃJ.Event.ǃU_{constructor(ge,me){super(),ǃJ.ǃU.ǃ$B.ǃOPr(ge),ǃJ.ǃXq(me),this.ǃOPE=ge,this.ǃOPT=Math.ceil(ge*ee),this.ǃOPD=1,this.ǃOPi=0,this.ǃOPa=0,this.ǃOPp=me,this.ǃNh=null,this.ǃOJA=null,this.ǃOPw=!1,this.ǃOYJ=null,this.ǃOZN="",this.ǃOPY=!1,this.ǃOPQ=0,this.ǃOPj=-1,this.ǃOPF=-1,this.ǃOPW=()=>{this.ǃOPj=-1,this.ǃOPZ()},this.ǃOPl=[],this.ǃOPx=[],this.ǃOPA=[],this.ǃOPh=[],this.ǃOPv=0,this.ǃOPP=0,this.ǃOPd=!1,this.ǃOPi=this.ǃOPE<=24?128:this.ǃOPE<=48?256:this.ǃOPE<=96?512:1024,this.ǃOPi*ee>ye&&(this.ǃOPi=Math.floor(ye/ee));let ve=this.ǃOPi/this.ǃOPE;this.ǃOPa=Math.ceil((this.ǃOPT+this.ǃOPD)*ve),pe.add(this)}ǃOPO(){return this.ǃOPE}ǃOPm(){return this.ǃOPT}ǃOPR(){return this.ǃOPi}ǃOPg(){return this.ǃOPa/ee}ǃOPH(){return this.ǃOPa}ǃOPs(){return this.ǃNh}ǃOdO(){return this.ǃOPA.length-this.ǃOPh.length}ǃOdJ(){return this.ǃOPd&&0===this.ǃOPh.length}ǃOPz(){this.ǃOPQ++}ǃOPk(){if(this.ǃOPQ--,0>this.ǃOPQ)throw new Error("too many pending icons removed")}ǃOPZ(){if(this.ǃNh&&!(this.ǃOPw||this.ǃOZN&&!this.ǃOPY)){this.ǃOPw=!0,this.ǃOPY=!1,ǃJ.ǃmx(this.ǃOPx,this.ǃOPl),ǃJ.ǃXX(this.ǃOPl),this.ǃOPF=Date.now();let ge=this.ǃOZN;ǃJ.ǃpA(this.ǃNh).then(me=>{return this.ǃOYJ=me,this.ǃOZN=URL.createObjectURL(me),ǃJ.ǃ_Z(this.ǃOZN)}).then(()=>{this.ǃOPw=!1,this.ǃOdy(),ge&&URL.revokeObjectURL(ge)})}}ǃOdy(){for(let ge of this.ǃOPx)ge.ǃOPM();ǃJ.ǃXX(this.ǃOPx),this.dispatchEvent(new ǃJ.Event("change")),this.ǃOPY&&this.ǃOdf()}ǃOPC(){return this.ǃOZN}ǃOdf(){if(!(this.ǃOPw||-1!==this.ǃOPj)){let ge=app.ǃORT()&&ǃJ.ǃl.ǃJW?250:500;Date.now()-this.ǃOPF>=ge&&(ge=50),this.ǃOPj=window.setTimeout(this.ǃOPW,ge)}}ǃOdS(){if(!this.ǃOJA&&(this.ǃNh=document.createElement("canvas"),this.ǃNh.width=this.ǃOPa,this.ǃNh.height=this.ǃOPa,this.ǃOJA=this.ǃNh.getContext("2d"),this.ǃOJA.imageSmoothingEnabled=!0,this.ǃOJA.imageSmoothingQuality="high",!this.ǃOJA))throw new Error("failed to create 2d context")}ǃOdn(){if(this.ǃOPd)throw new Error("no icon spaces left");const ge=this.ǃOPT+this.ǃOPD;this.ǃOPv+=ge,this.ǃOPv>this.ǃOPa-ge&&(this.ǃOPP+=ge,this.ǃOPv=0,this.ǃOPP>this.ǃOPa-ge&&(this.ǃOPd=!0))}ǃOPJ(ge){if(ǃJ.ǃk(ge,ǃJ.ǃU.ǃ$B),ge.ǃOXq()!==this)throw new Error(_213);assert(!this.ǃOPh.includes(ge),"icon already removed"),this.ǃOPh.push(ge),this.ǃOJA&&this.ǃOJA.clearRect(ge.ǃOPb(),ge.ǃOPc(),this.ǃOPT,this.ǃOPT)}ǃOdX(ge,me){if(ǃJ.ǃUV(ge),ǃJ.ǃUV(me),this.ǃOdJ())throw new Error("icon sheet is already full");if(this.ǃOPh.length){let ve=this.ǃOPh.pop();return ve.ǃOvs(ge,me),ve}let ve=ǃJ.ǃb(ǃJ.ǃU.ǃ$B,this,this.ǃOPv,this.ǃOPP,ge,me);return this.ǃOPA.push(ve),this.ǃOdn(),ve}ǃOPV(ge,me,ve){if(ǃJ.ǃk(ge,ǃJ.ǃU.ǃ$B),ǃJ.ǃOrC(me),ǃJ.ǃBA(ve),ve=Object.assign({},ue,ve),!ge.ǃOPn()){if(ge.ǃOXq()!==this)throw new Error("updating icon from wrong sheet");if(me instanceof Image&&!me.complete)throw new Error("image is not complete");const be=me.width||ve.width,Ue=me.height||ve.height;if(!isFinite(be)||0>=be||!isFinite(Ue)||0>=Ue)throw new Error("invalid size");let Ee,Le;if(bethis.ǃOdM(),ǃJ.ǃOeZ(re.ǃOdU)?(ǃJ.ǃU.ǃ$B.ǃOPr(re.ǃOdU),this.ǃOPE=re.ǃOdU):this.ǃOdB(re.icon),this.ǃOdL(),this.ǃOdM(),de&&de.appendChild(this.ǃNZ)}ǃyY(){this.ǃOPJ(),this.ǃOdq=null,this.ǃOdc=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,ǃJ.ǃyY(this)}ǃOdz(ae){const de=this.ǃOPE;this.ǃNZ.parentElement.insertBefore(ae,this.ǃNZ),this.ǃyY(),ae.setAttribute("width",de),ae.setAttribute("height",de)}ǃIe(ae){if(ǃJ.ǃ$V(ae),this.ǃOdu)throw new Error("already got an icon");this.ǃOdc=ae,this.ǃOdt=!0}ǃNb(){if(this.ǃOdc){let ae=this.ǃOdc();ǃJ.ǃq$(ae,ǃJ.ǃU.ǃ$B),ae&&(!ae.ǃOPq()&&(this.ǃOd$=!0),this.ǃ$r(ae))}}ǃOdk(){return this.ǃOPE}ǃ$r(ae){this.ǃOdc=null;this.ǃOdu===ae||(this.ǃOPJ(),this.ǃOdB(ae),this.ǃOdL(),this.ǃOdM())}ǃAM(ae){return this.ǃNZ.parentElement?this.ǃNZ.parentElement===ae?void 0:(ǃJ.ǃU.ǃHU(this.ǃNZ),void ae.appendChild(this.ǃNZ)):void ae.appendChild(this.ǃNZ)}ǃ_(){return this.ǃNZ}ǃ$I(ae){ae=!!ae;this.ǃOd_===ae||(this.ǃOd_=ae,this.ǃOdL(!0))}ǃOdV(){return this.ǃOd_}ǃJX(ae){ae=!!ae;this.ǃOAr===ae||(this.ǃOAr=ae,ǃJ.ǃU.ǃrx(this.ǃNZ,"hidden",!this.ǃOAr))}ǃOV(){this.ǃJX(!1)}ǃOK(){this.ǃJX(!0)}ǃOdB(ae){ǃJ.ǃq$(ae,ǃJ.ǃU.ǃ$B),this.ǃOdK(),this.ǃOdu=ae;this.ǃOdu&&(this.ǃOPE=this.ǃOdu.ǃOPO(),this.ǃOdu.addEventListener("change",this.ǃOdq))}ǃOPJ(){this.ǃOdu&&(this.ǃOdK(),this.ǃOdu.removeEventListener("change",this.ǃOdq),this.ǃOdu=null)}ǃOdL(ae){(ae||this.ǃOPE!==this.ǃOdb)&&(this.ǃNZ.style.width=`${this.ǃOPE}px`,this.ǃNZ.style.height=`${this.ǃOPE}px`,this.ǃOd_&&(this.ǃNZ.style.borderRadius=`${this.ǃOPE/2}px`),this.ǃOdb=this.ǃOPE)}ǃOdM(){let ae=this.ǃOdm;this.ǃOdu&&this.ǃOdu.ǃOPq()?(this.ǃOd$&&(this.ǃOdo(),this.ǃOd$=!1),ae=`url("${this.ǃOdu.ǃOPU()}") ${-this.ǃOdu.ǃOPu()}px ${-this.ǃOdu.ǃOP_()}px`,1!==ǃJ.ǃU.devicePixelRatio&&(ae+=` / ${this.ǃOdu.ǃOPg()}px ${this.ǃOdu.ǃOPg()}px`),ae+=" no-repeat"):!this.ǃOdu&&(ae=""),ae!==this.ǃOdm&&(this.ǃNZ.style.background=ae,this.ǃOdm=ae)}ǃOdo(){this.ǃOFK=this.ǃNZ.animate(ee,te),this.ǃOFK.onfinish=()=>this.ǃOde()}ǃOdK(){this.ǃOFK&&(this.ǃOFK.cancel(),this.ǃOFK=null)}ǃOde(){this.ǃOFK=null}}}{const _215="image/svg+xml";ǃJ.ǃU.ǃOP$=class extends ǃJ.ǃq{constructor(te,ne,ie){super(),ǃJ.ǃk(te,ǃJ.ǃOjv),ǃJ.ǃJO(ne),ǃJ.ǃFt(ie),ǃJ.ǃUV(ie.name),ǃJ.ǃUV(ie.source),this.ǃOdr=te,this.ǃOdI=ne,this.ǃOdN="",this.ǃOdG=null,this.ǃOdE=null,this.ǃOYj=ie.name,this.ǃOvd=ie.source,this.ǃOdT=ie.color,this.ǃOdD=null,this.ǃOdi=null,this.ǃOda=null,this.ǃOdp=null}ǃyY(){this.ǃOdD&&this.ǃOdD.ǃyY(),this.ǃOdi&&this.ǃOdi.ǃyY(),this.ǃOda&&this.ǃOda.ǃyY(),this.ǃOdw(),this.ǃOdD=null,this.ǃOdi=null,this.ǃOda=null,this.ǃOdr=null,this.ǃOdI="",this.ǃOdN="",this.ǃOdG=null,this.ǃOdE=null,this.ǃOYj="",this.ǃOdp=null,ǃJ.ǃyY(this)}ǃ_Z(){return this.ǃOdE?Promise.resolve(this.ǃOdE):this.ǃOdp?this.ǃOdp:(this.ǃOdp=app.ǃOdY(this.ǃOdI).then(te=>{this.ǃOdw(),this.ǃOdN=te;let ne=ǃJ.ǃb(ǃJ.ǃpj.Document);return ne.ǃOaW(this.ǃOdN,_215)}).then(te=>{return this.ǃOdG=te.ǃpF().ǃOah(),this.ǃOdQ()}).then(()=>{let te=new Blob([this.ǃOdN],{type:_215});return ǃJ.ǃOIq(te)}).then(te=>ǃJ.ǃgi(()=>this.ǃOdj(te))).catch(te=>{throw this.ǃOdp=null,te}),this.ǃOdp)}ǃOdw(){this.ǃOdI.match(/^blob:.+$/)&&URL.revokeObjectURL(this.ǃOdI)}ǃOdQ(te){let ne=this.ǃOdT||app.ǃZb().iconColor;return ne&&("#000000"!==ne||te)?ǃJ.ǃgi(()=>{this.ǃOdG.setAttribute("fill",ne),this.ǃOdG.hasAttribute("stroke")&&"none"!==this.ǃOdG.getAttribute("stroke")&&this.ǃOdG.setAttribute("stroke",ne);let ie=new XMLSerializer;this.ǃOdN=ie.serializeToString(this.ǃOdG.ownerDocument)}):Promise.resolve()}ǃOdF(){return this.ǃOdQ(!0).then(()=>{let te=new Blob([this.ǃOdN],{type:_215});return ǃJ.ǃOIq(te)}).then(te=>{this.ǃOdE=te;let ne={ǃOPG:!1,ǃ_x:!0};this.ǃOdD&&this.ǃOdD.ǃ$D(this.ǃOdE,ne),this.ǃOdi&&this.ǃOdi.ǃ$D(this.ǃOdE,ne),this.ǃOda&&this.ǃOda.ǃ$D(this.ǃOdE,ne)})}ǃOdj(te){this.ǃOdE=te,this.ǃOdp=null;let ne={ǃOPG:!0,ǃ_x:!0};return this.ǃOdD&&this.ǃOdD.ǃ$D(this.ǃOdE,ne),this.ǃOdi&&this.ǃOdi.ǃ$D(this.ǃOdE,ne),this.ǃOda&&this.ǃOda.ǃ$D(this.ǃOdE,ne),this.ǃOdE}ǃyX(){return this.ǃOdD||(this.ǃOdD=ǃJ.ǃU.ǃ$B.ǃJf(this.ǃOdE,this.ǃOdr.ǃ$L(),{name:this.ǃOYj,source:this.ǃOvd,ǃ_x:!0}),this.ǃOdD.ǃOPt(this),ǃJ.ǃOoE()&&this.ǃ_Z()),this.ǃOdD}ǃOdW(){return this.ǃOdi||(this.ǃOdi=ǃJ.ǃU.ǃ$B.ǃJf(this.ǃOdE,this.ǃOdr.ǃi(),{name:this.ǃOYj,source:this.ǃOvd,ǃ_x:!0}),this.ǃOdi.ǃOPt(this),ǃJ.ǃOoE()&&this.ǃ_Z()),this.ǃOdi}ǃOdZ(){return this.ǃOda||(this.ǃOda=ǃJ.ǃU.ǃ$B.ǃJf(this.ǃOdE,this.ǃOdr.ǃ$z(),{name:this.ǃOYj,source:this.ǃOvd,ǃ_x:!0}),this.ǃOda.ǃOPt(this),ǃJ.ǃOoE()&&this.ǃ_Z()),this.ǃOda}ǃOdl(){return this.ǃ_Z().then(()=>this.ǃOdG)}ǃUU(){return this.ǃOdl().then(te=>te.cloneNode(!0))}}}"use strict",ǃJ.ǃU.ǃUu={},"use strict",ǃJ.ǃU.ǃUu.ǃOdx=class extends ǃJ.ǃq{constructor(te,ne,ie,ae){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃvJ),ǃJ.ǃJO(ne),ǃJ.ǃUV(ie),super(),this.ǃvO=te,this.ǃOYj=ne,this.ǃOdA=ie,this.ǃOFZ=ae,this.ǃOmx=this.ǃvO.ǃOdh(),this.ǃOFV=!0,this.ǃNZ=ǃJ.ǃU.ǃH("ui-proprow",this.ǃvO.ǃOdv())}ǃih(){this.ǃvO.ǃOdP(this),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃvO=null,ǃJ.ǃyY(this)}ǃOdd(){this.ǃvO.ǃOds(this)}ǃOsO(){}ǃOsJ(){let te=0,ne=this.ǃOFZ;for(;ne;)++te,ne=ne.ǃOFZ;return te}ǃOsy(){return this.ǃvO}ǃoH(){return this.ǃOFZ}ǃyg(){return this.ǃOYj}ǃcU(){return this.ǃOdA}ǃOOo(){return this.ǃNZ}ǃdQ(){return this.ǃOmx}ǃKd(){return!0}ǃOsf(te,ne){if(te=!!te,ne=!!ne,!ne&&this.ǃvO.ǃOsS()&&this.ǃvO.ǃOsn(),te&&!this.ǃOFV){if(this.ǃOFV=!0,ne)this.ǃvO.ǃOsX(this);else{this.ǃNZ.removeAttribute("collapsed");let ie=this.ǃvO.ǃOsR();ie&&ie()}}else if(!te&&this.ǃOFV)if(this.ǃOFV=!1,ne)this.ǃvO.ǃOsg(this);else{this.ǃNZ.setAttribute("collapsed","");let ie=this.ǃvO.ǃOsR();ie&&ie()}}ǃjE(){for(let te=this.ǃOFZ;te;){if(!te.ǃKd())return!1;te=te.ǃOFZ}return!0}ǃEy(){return!0}ǃOsH(){}ǃOsU(){}ǃNa(){}ǃNF(){}},"use strict";{const _217="UIPointerDown";ǃJ.ǃU.ǃUu.ǃOsC=class extends ǃJ.ǃU.ǃUu.ǃOdx{constructor(te,ne,ie,ae){super(te,ne,ie,ae),this.ǃhi=ǃJ.ǃU.ǃH("ui-propname",this.ǃNZ);let de=this.ǃOsJ();0{re.detail.ǃTd!==ǃJ.ǃDO.ǃaa||(this.ǃvO.ǃoB(this)&&re.preventDefault(),this.ǃOdd())},this.ǃhi.addEventListener(_217,this.ǃOsu),this.ǃUv=ǃJ.ǃU.ǃH("div",this.ǃhi,null,"propname-wrap"),this.ǃOs_=ǃJ.ǃU.ǃH("label",this.ǃUv,null,"propname-label"),this.ǃOs_.textContent=this.ǃOYj,this.ǃOs_.setAttribute("for",this.ǃOmx),this.ǃOsm=ǃJ.ǃU.ǃH("ui-propvalue",this.ǃNZ),this.ǃOR$=!0}ǃih(){this.ǃhi.removeEventListener(_217,this.ǃOsu),this.ǃOsu=null,ǃJ.ǃU.ǃHU(this.ǃOs_),this.ǃOs_=null,ǃJ.ǃU.ǃHU(this.ǃUv),this.ǃUv=null,ǃJ.ǃU.ǃHU(this.ǃhi),this.ǃhi=null,ǃJ.ǃU.ǃHU(this.ǃOsm),this.ǃOsm=null,super.ǃih()}ǃOdd(){super.ǃOdd(),ǃJ.ǃU.ǃrw(this.ǃhi,this.ǃvO.ǃOsb())}ǃOsc(){return this.ǃhi}ǃOst(){return this.ǃOsm}ǃWO(te){te=!!te;this.ǃOR$===te||(ǃJ.ǃU.ǃrx(this.ǃOs_,"disabled",!te),ǃJ.ǃU.ǃrx(this.ǃOsm,"disabled",!te),!te&&this.ǃvO.ǃOdP(this),this.ǃOR$=te,this.ǃOs$(te))}ǃEy(){return this.ǃOR$}ǃOs$(){}}}{const _218="text",_219="angle",_220="float",_221="number",_222="percent",_223="integer",_224="UIPointerUp",_225="placeholder",_226="UIPointerDown",_227="UIPointerMove",_228="ui.bars.properties.angle-suffix",_229="ui.bars.properties.percent-suffix";let te=null;const ne=new Map([[_218,_218],[_223,_221],[_220,_221],[_222,_218],[_219,_218],["email","email"],["password","password"],["tel","tel"],["url","url"]]);ǃJ.ǃU.ǃUu.ǃOsq=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(ae,de,re,oe,ye,Oe,le,Je,ue){if(super(ae,de,re,ye),ǃJ.ǃUV(oe),ǃJ.ǃUg(Oe),ǃJ.ǃUg(le),ǃJ.ǃUg(Je),oe=oe||_218,!ne.has(oe))throw new Error(`invalid InputProperty type '${oe}'`);this.ǃOiD=oe,this.ǃOZU=ǃJ.ǃU.ǃH("input",this.ǃOsm),this.ǃOZU.id=this.ǃdQ(),this.ǃOsM=!0;let pe=ne.get(this.ǃOiD);this.ǃOsB()&&this.ǃOsL()&&(pe=_218),this.ǃOZU.type=pe,pe===_218&&this.ǃOZU.setAttribute("spellcheck","false"),this.ǃOsz=Oe,this.ǃOsk=le,this.ǃOsV=Je,this.ǃOsK=this.ǃvO.ǃOso(),this.ǃOse=!1,this.ǃOsr=ue,this.ǃOsI=!1,this.ǃOsN=null,this.ǃOsG=!1,this.ǃOsE=!0,this.ǃOsT=!1,this.ǃOsD=!1,this.ǃOsi=!1,this.ǃOsa=NaN,this.ǃOsp=!1,this.ǃOsw=NaN,this.ǃOsY=!0,this.ǃOsQ=3,this.ǃOsj="",this.ǃOsF=!1,this.ǃOsW=()=>this.ǃCV(),this.ǃOZU.addEventListener("change",this.ǃOsW),this.ǃOsZ=he=>{return ǃJ.ǃU.ǃkq.ǃOvn()?(he.preventDefault(),void this.ǃOZU.blur()):void(window.setTimeout(()=>{this.ǃOZU&&ǃJ.ǃU.ǃrw(this.ǃhi,this.ǃvO.ǃOsb())},300),this.ǃOdd(),this.ǃOsE=!1)},this.ǃOZU.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>{this.ǃvO.ǃOdP(this),this.ǃOsE=!0,this.ǃOsT=!1},this.ǃOZU.addEventListener("blur",this.ǃOsl),this.ǃOsx=-1,this.ǃOsA=()=>{if(!this.ǃOsh){let he=this.ǃOsv();he!==this.ǃOsN&&(!this.ǃOsD&&(this.ǃoC(),this.ǃOsD=!0),this.ǃOse=!0,this.ǃCV(he),this.ǃOse=!1),this.ǃOsx=requestAnimationFrame(this.ǃOsA)}},this.ǃOsP=()=>{this.ǃOsE&&(this.ǃOsT=!0,this.ǃOsE=!1),this.ǃOsd()&&-1===this.ǃOsx&&(this.ǃOsD=!1,this.ǃOsx=requestAnimationFrame(this.ǃOsA),this.ǃOZU.ownerDocument.addEventListener(_224,this.ǃOss))},this.ǃOZU.addEventListener(_226,this.ǃOsP),this.ǃJOO=he=>{this.ǃOsT&&(this.ǃOsT=!1,this.ǃOsd()?requestAnimationFrame(()=>this.ǃOZU.select()):he.preventDefault())},this.ǃOZU.addEventListener(_224,this.ǃJOO),this.ǃOss=null,this.ǃJOJ=he=>{he.preventDefault(),this.ǃJOy(he.clientX,he.clientY)},this.ǃOZU.addEventListener("dragstart",this.ǃJOJ),this.ǃJOf=he=>this.ǃi$(he),this.ǃOZU.addEventListener("keydown",this.ǃJOf),this.ǃYO=null,this.ǃYy=null,this.ǃOsh=!1,this.ǃJOS=0,this.ǃJOn=0,this.ǃJOX=0,this.ǃJOR=1,this.ǃOsB()&&(this.ǃYO=he=>this.ǃYJ(he),this.ǃYy=he=>this.ǃaH(he),this.ǃOss=()=>{-1!==this.ǃOsx&&(cancelAnimationFrame(this.ǃOsx),this.ǃOsx=-1),this.ǃOZU.ownerDocument.removeEventListener(_224,this.ǃOss)}),this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),this.ǃJOH(this.ǃOsN))}ǃJOg(){return this.ǃOsz?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃOsz,this):this.ǃOsz(this):null}ǃJOC(ae){this.ǃOsk&&(this.ǃOsr?this.ǃvO.ǃJOu(this.ǃOsk,ae,this):this.ǃOsk(ae,this))}ǃoC(){if(this.ǃOsK){if(this.ǃOsB()&&ǃJ.ǃLR(this.ǃOsN)){let ae,de,re,oe,ye;if(this.ǃOiD===_223?(ae=parseInt(this.ǃOZU.value),de=this.ǃOsp,re=this.ǃOsi,oe=this.ǃOsa,ye=this.ǃOsw):this.ǃOiD===_220?(ae=parseFloat(this.ǃOZU.value),de=this.ǃOsp,re=this.ǃOsi,oe=this.ǃOsa,ye=this.ǃOsw):this.ǃOiD===_222?(ae=parseFloat(this.ǃOZU.value)/100,de=!0,re=!0,oe=ǃJ.ǃLR(this.ǃOsa)?this.ǃOsa:0,ye=ǃJ.ǃLR(this.ǃOsw)?this.ǃOsw:1):this.ǃOiD===_219&&(ae=parseFloat(this.ǃOZU.value),de=!0,re=!0,oe=ǃJ.ǃLR(this.ǃOsa)?this.ǃOsa:0,ye=ǃJ.ǃLR(this.ǃOsw)?this.ǃOsw:360),de&&aeye&&this.ǃOsN===ye)return}this.ǃOsK(this.ǃyg())}}ǃJOH(ae){this.ǃOsG=!0,this.ǃJO_(ae),this.ǃOsG=!1}ǃih(){-1!==this.ǃOsx&&cancelAnimationFrame(this.ǃOsx),this.ǃOsA=null,this.ǃOsz=null,this.ǃOsk=null,this.ǃOsV=null,this.ǃOsK=null,this.ǃOsN=null,this.ǃOsB()&&(this.ǃOZU.ownerDocument.removeEventListener(_227,this.ǃYO),this.ǃYO=null,this.ǃOZU.ownerDocument.removeEventListener(_224,this.ǃYy),this.ǃYy=null,this.ǃOZU.ownerDocument.removeEventListener(_224,this.ǃOss),this.ǃOss=null),this.ǃOZU.removeEventListener("keydown",this.ǃJOf),this.ǃJOf=null,this.ǃOZU.removeEventListener("dragstart",this.ǃJOJ),this.ǃJOJ=null,this.ǃOZU.removeEventListener("change",this.ǃOsW),this.ǃOsW=null,this.ǃOZU.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃOZU.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃOZU.removeEventListener(_226,this.ǃOsP),this.ǃOsP=null,this.ǃOZU.removeEventListener(_224,this.ǃJOO),this.ǃJOO=null,ǃJ.ǃU.ǃHU(this.ǃOZU),this.ǃOZU=null,super.ǃih()}ǃOOg(){this.ǃOsI=!0}ǃJOm(){return this.ǃOsI}ǃOsB(){return this.ǃOiD===_223||this.ǃOiD===_220||this.ǃOiD===_222||this.ǃOiD===_219}ǃOsd(){return this.ǃOiD===_223||this.ǃOiD===_220}ǃdA(ae){ǃJ.ǃXq(ae),this.ǃJOR=ae}ǃdv(ae){if(ǃJ.ǃXq(ae),!this.ǃOsB())throw new Error("cannot set minimum value on this property type");if(this.ǃOiD===_223&&(ae=Math.floor(ae)),this.ǃOsp&&ae>this.ǃOsw)throw new Error("cannot set a minimum value greater than the maximum value");return this.ǃOsi=!0,this.ǃOsa=ae,this.ǃOZU.setAttribute("min",ae.toString()),this}ǃOJO(ae){if(ǃJ.ǃXq(ae),!this.ǃOsB())throw new Error("cannot set maximum value on this property type");if(this.ǃOiD===_223&&(ae=Math.floor(ae)),this.ǃOsi&&aeae||20ae?this.ǃOZU.removeAttribute("maxlength"):this.ǃOZU.setAttribute("maxlength",ae.toString()),this}ǃPz(ae){if(ǃJ.ǃJO(ae),this.ǃOsB())throw new Error("cannot set a placeholder on this property type");return this.ǃOsj=ae,this.ǃOsF||this.ǃOZU.setAttribute(_225,ae),this}ǃJOt(){this.ǃOsF&&(this.ǃOsj?this.ǃOZU.setAttribute(_225,this.ǃOsj):this.ǃOZU.removeAttribute(_225),this.ǃOsF=!1)}ǃOsL(){return this.ǃOsM&&ǃJ.ǃl.ǃJW&&this.ǃvO.ǃJO$()}ǃOOT(ae){if(ae=!!ae,this.ǃOsM!==ae){this.ǃOsM=ae;let de=ne.get(this.ǃOiD);if(this.ǃOsB()&&this.ǃOsL()&&(de=_218),this.ǃOZU.type!==de){let re=this.ǃOZU.value;this.ǃOZU.type=de,this.ǃOZU.value=re}}}ǃJO_(ae){return null===ae?(this.ǃOZU.value="",this.ǃOZU.setAttribute(_225,lang("ui.bars.properties.multiple-placeholder")),void(this.ǃOsF=!0)):void(this.ǃJOt(),this.ǃOiD===_223?(ǃJ.ǃzE(ae),ae=Math.floor(ae),this.ǃOsp&&ae>this.ǃOsw&&(ae=this.ǃOsw),this.ǃOsi&&aethis.ǃOsw&&(ae=this.ǃOsw),this.ǃOsi&&aethis.ǃOsw&&(ae=this.ǃOsw),this.ǃOsi&&aethis.ǃOsw&&(ae=this.ǃOsw),this.ǃOsi&&aeae&&(ae+=360),this.ǃOZU.value=ǃJ.toFixed(ae,1)+lang(_228)):(ǃJ.ǃJO(ae),this.ǃOZU.value=ae))}ǃJOq(ae){if((ǃJ.ǃJO(ae),this.ǃOZU.value!==ae)&&(!this.ǃOsB()||ae)){if(this.ǃOsB()&&this.ǃOsL()){let de=this.ǃJOM(ae);return typeof de===_221&&isFinite(de)&&this.ǃJO_(de),this.ǃOse=!0,this.ǃCV(),void(this.ǃOse=!1)}if(this.ǃOiD===_223){let de=parseInt(ae,10);if(!isFinite(de))return;this.ǃJO_(de)}else if(this.ǃOiD===_220||this.ǃOiD===_219){let de=parseFloat(ae);if(!isFinite(de))return;this.ǃJO_(de)}else if(this.ǃOiD===_222){let de=parseFloat(ae);if(!isFinite(de))return;de/=100,this.ǃJO_(de)}else this.ǃOZU.value=ae;this.ǃOse=!0,this.ǃCV(),this.ǃOse=!1}}ǃJOB(ae){return!!isFinite(ae)&&(this.ǃOiD===_222?ae/=100:this.ǃOiD===_219&&(ae%=360,0>ae&&(ae+=360)),this.ǃOsp&&ae>this.ǃOsw||this.ǃOsi&&aethis.ǃOsw&&(de=this.ǃOsw),this.ǃOsi&&dethis.ǃOsw&&(de=this.ǃOsw),this.ǃOsi&&dethis.ǃOsw&&(de=this.ǃOsw),this.ǃOsi&&dede&&(de+=360),this.ǃOsp&&de>this.ǃOsw&&(de=this.ǃOsw),this.ǃOsi&&dethis.ǃOsw&&(this.ǃOsN=this.ǃOsw),this.ǃJOH(this.ǃOsN),this.ǃCV(this.ǃOsN)),this.ǃOZU.select(),this.ǃJOS=re,this.ǃJOn=oe}}ǃaH(ae){this.ǃOsh&&(ae.preventDefault(),this.ǃYJ(ae),this.ǃOsh=!1,ǃJ.ǃU.ǃVq(te),te=null,this.ǃOZU.ownerDocument.removeEventListener(_227,this.ǃYO),this.ǃOZU.ownerDocument.removeEventListener(_224,this.ǃYy))}ǃi$(ae){ae.which===ǃJ.ǃCi.ǃCD&&(ae.preventDefault(),this.ǃOZU.blur(),this.ǃvO.ǃJOe(this))}ǃOsH(){!this.ǃOsV||this.ǃOsh||(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}ǃOs$(ae){this.ǃOZU.disabled=!ae,this.ǃOZU.readOnly=!ae}ǃOsU(){if(!this.ǃOsh&&this.ǃOsz){let ae=this.ǃJOg();ae===this.ǃOsN||(this.ǃOsN=ae,this.ǃJOH(this.ǃOsN),this.ǃJOV())}}}}{function ee(re){let oe=re.replace(ie,"\\\\");return oe=oe.replace(de,"\\t"),oe.replace(ae,"\\n")}function te(re){let oe=[];for(let Oe of re)oe.push(Oe);let ye="";for(let Oe=0,le=oe.length,Je;Oethis.ǃJOT(),this.ǃJOG.addEventListener("click",this.ǃJOE),this.ǃJOD=null,this.ǃOsW=()=>this.ǃCV(),this.ǃOZU.addEventListener("change",this.ǃOsW),this.ǃOsZ=()=>{window.setTimeout(()=>{this.ǃOZU&&ǃJ.ǃU.ǃrw(this.ǃhi,this.ǃvO.ǃOsb())},300),this.ǃOdd(),this.ǃOsE=!1},this.ǃOZU.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>{this.ǃvO.ǃOdP(this),this.ǃOsE=!0,this.ǃOsT=!1},this.ǃOZU.addEventListener("blur",this.ǃOsl),this.ǃOsP=()=>{this.ǃOsE&&(this.ǃOsT=!0,this.ǃOsE=!1)},this.ǃOZU.addEventListener(_231,this.ǃOsP),this.ǃJOO=ge=>{this.ǃOsT&&(ge.preventDefault(),this.ǃOsT=!1)},this.ǃOZU.addEventListener("UIPointerUp",this.ǃJOO),this.ǃJOf=ge=>this.ǃi$(ge),this.ǃOZU.addEventListener("keydown",this.ǃJOf),this.ǃOZU.addEventListener("dragstart",ǃJ.ǃU.ǃOQc),this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),this.ǃJOH(this.ǃOsN))}ǃJOg(){return this.ǃOsz?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃOsz,this):this.ǃOsz(this):null}ǃJOC(oe){this.ǃOsk&&(this.ǃOsr?this.ǃvO.ǃJOu(this.ǃOsk,oe,this):this.ǃOsk(oe,this))}ǃoC(){this.ǃOsK&&this.ǃOsK(this.ǃyg())}ǃih(){this.ǃOsz=null,this.ǃOsk=null,this.ǃOsV=null,this.ǃOsK=null,this.ǃOsN=null,this.ǃOZU.removeEventListener("change",this.ǃOsW),this.ǃOsW=null,this.ǃOZU.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃOZU.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃOZU.removeEventListener(_231,this.ǃOsP),this.ǃOsP=null,this.ǃOZU.removeEventListener("UIPointerUp",this.ǃJOO),this.ǃJOO=null,this.ǃOZU.removeEventListener("keydown",this.ǃJOf),this.ǃJOf=null,this.ǃOZU.removeEventListener("dragstart",ǃJ.ǃU.ǃOQc),ǃJ.ǃU.ǃHU(this.ǃOZU),this.ǃOZU=null,this.ǃJOG.removeEventListener("click",this.ǃJOE),this.ǃJOE=null,this.ǃJOD=null,ǃJ.ǃU.ǃHU(this.ǃJOG),this.ǃJOG=null,ǃJ.ǃU.ǃHU(this.ǃJON),this.ǃJON=null,super.ǃih()}ǃOJf(oe){ǃJ.ǃ$V(oe),this.ǃJOD=oe}ǃOJy(oe){ǃJ.ǃJO(oe),this.ǃJOG.textContent=oe}ǃJOc(oe){return ǃJ.ǃXq(oe),oe=Math.floor(oe),0>oe?this.ǃOZU.removeAttribute("maxlength"):this.ǃOZU.setAttribute("maxlength",oe.toString()),this}ǃPz(oe){return ǃJ.ǃJO(oe),this.ǃOsj=oe,this.ǃOsF||this.ǃOZU.setAttribute(_230,oe),this}ǃJOt(){this.ǃOsF&&(this.ǃOsj?this.ǃOZU.setAttribute(_230,this.ǃOsj):this.ǃOZU.removeAttribute(_230),this.ǃOsF=!1)}ǃOdd(){this.ǃOZU.select(),super.ǃOdd()}ǃOsO(){this.ǃOZU.focus()}ǃJOH(oe){this.ǃOsG=!0,this.ǃJO_(oe),this.ǃOsG=!1}ǃJO_(oe){return null===oe?(this.ǃOZU.value="",this.ǃOZU.setAttribute(_230,lang("ui.bars.properties.multiple-placeholder")),void(this.ǃOsF=!0)):void(this.ǃJOt(),this.ǃOZU.value=ee(oe))}ǃOsv(){return te(this.ǃOZU.value)}ǃCV(){if(!this.ǃOsG&&this.ǃOsk){this.ǃoC();let oe=this.ǃOsv();if(this.ǃJOC(oe),this.ǃOsN=oe,this.ǃOsz){let ye=this.ǃJOg();(ye!==this.ǃOsN||ee(ye)!==this.ǃOZU.value)&&(this.ǃOsN=ye,this.ǃJOH(this.ǃOsN))}this.ǃvO.ǃvt()}}ǃJOT(){if(this.ǃOdd(),this.ǃJOD){let ye=this.ǃJOD(this);return void(ye.then&&ye.then(Oe=>{"string"!=typeof Oe||(this.ǃJO_(Oe),this.ǃCV())}))}let oe=ǃJ.ǃU.ǃOR.ǃOX("LongTextPropertyDialog");oe.ǃtR(this.ǃOYj),oe.ǃOg(this.ǃOsv()).then(ye=>{null!==ye&&(ye||null!==this.ǃOsN)&&(this.ǃJO_(ye),this.ǃCV())})}ǃi$(oe){oe.which===ǃJ.ǃCi.ǃCD&&(oe.preventDefault(),this.ǃOZU.blur(),this.ǃvO.ǃJOe(this))}ǃPB(){return this.ǃOZU}ǃOsH(){this.ǃOsV&&(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}ǃOs$(oe){this.ǃOZU.disabled=!oe,this.ǃOZU.readOnly=!oe,this.ǃJOG.disabled=!oe}ǃOsU(){if(this.ǃOsz){let oe=this.ǃJOg();oe===this.ǃOsN||(this.ǃOsN=oe,this.ǃJOH(this.ǃOsN))}}}}{const ee="__multiple__";ǃJ.ǃU.ǃUu.ǃJOi=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(ne,ie,ae,de,re,oe,ye,Oe){super(ne,ie,ae,de),ǃJ.ǃUg(re),ǃJ.ǃUg(oe),ǃJ.ǃUg(ye),this.ǃJOa=ǃJ.ǃU.ǃH("select",this.ǃOsm),this.ǃJOa.id=this.ǃdQ(),this.ǃOsz=re,this.ǃOsk=oe,this.ǃOsV=ye,this.ǃOsK=this.ǃvO.ǃOso(),this.ǃOsr=Oe,this.ǃJOp=!1,this.ǃJOw=null,this.ǃOsG=!1,this.ǃOsN=null,this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),null===this.ǃOsN&&this.ǃJOY()),this.ǃOsW=()=>this.ǃCV(),this.ǃJOa.addEventListener("change",this.ǃOsW),this.ǃOsZ=()=>this.ǃOdd(),this.ǃJOa.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>this.ǃvO.ǃOdP(this),this.ǃJOa.addEventListener("blur",this.ǃOsl)}ǃih(){this.ǃOsz=null,this.ǃOsk=null,this.ǃOsV=null,this.ǃOsK=null,this.ǃJOa.removeEventListener("change",this.ǃOsW),this.ǃOsW=null,this.ǃJOa.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃJOa.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,ǃJ.ǃU.ǃHU(this.ǃJOa),this.ǃJOa=null,super.ǃih()}ǃJOg(){return this.ǃOsz?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃOsz,this):this.ǃOsz(this):null}ǃJOC(ne){this.ǃOsk&&(this.ǃOsr?this.ǃvO.ǃJOu(this.ǃOsk,ne,this):this.ǃOsk(ne,this))}ǃoC(ne){this.ǃOsK&&this.ǃOsK(this.ǃyg(),ne)}ǃJOQ(ne){this.ǃOsG=!0,null===ne?this.ǃJOY():this.ǃJOa.value=ne,this.ǃOsG=!1}ǃJOY(){this.ǃJOp||(this.ǃw(lang("ui.bars.properties.multiple-placeholder"),ee),this.ǃJOp=!0),this.ǃJOa.value=ee}ǃJOj(){this.ǃJOw&&(ǃJ.ǃU.ǃHU(this.ǃJOw),this.ǃJOp=!1)}ǃCV(){this.ǃOsG||!this.ǃOsk||this.ǃJOa.value===ee||(this.ǃoC(this.ǃJOa.value),this.ǃJOC(this.ǃJOa.value),this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),null!==this.ǃOsN&&this.ǃJOj(),this.ǃJOa.value!==this.ǃOsN&&this.ǃJOQ(this.ǃOsN)),this.ǃvO.ǃvt())}ǃJOF(){return this.ǃJOa}ǃw(ne,ie,ae=!1){ǃJ.ǃJO(ne),ǃJ.ǃUV(ie),ae=!!ae,("undefined"==typeof ie||null===ie)&&(ie=ne);let de=ǃJ.ǃU.ǃH("option",this.ǃJOa);return de.text=ne,de.value=ie,ae&&de.setAttribute("hidden",""),ie===this.ǃOsN&&(de.selected=!0),ie===ee&&(this.ǃJOw=de),this}ǃOsO(){this.ǃJOa.focus()}ǃOsH(){this.ǃOsV&&(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}ǃOs$(ne){this.ǃJOa.disabled=!ne}ǃOsU(){if(this.ǃOsz){let ne=this.ǃJOg();ne===this.ǃOsN||(this.ǃOsN=ne,this.ǃJOQ(this.ǃOsN))}}}}{const _234="change",_235="placeholder",_236="colorProperty",_237="ui.bars.properties.multiple-placeholder";let ee=function(te){te.preventDefault();let ne=this.getAttribute("for"),ie=this.ownerDocument.getElementById(ne);ie&&ie.focus()};ǃJ.ǃU.ǃUu.ǃJOW=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(ne,ie,ae,de,re,oe,ye,Oe){if(super(ne,ie,ae,de),ǃJ.ǃUg(re),ǃJ.ǃUg(oe),ǃJ.ǃUg(ye),this.ǃJON=ǃJ.ǃU.ǃH("div",this.ǃOsm,null,"flexVstretch"),this.ǃJOZ=ǃJ.ǃU.ǃH("input",this.ǃJON,null,_236),this.ǃJOZ.type="color",this.ǃJOZ.id=this.ǃdQ(),this.ǃJOl=ǃJ.ǃU.ǃH("input",this.ǃJON,null,_236),this.ǃJOl.type="text",this.ǃJOl.setAttribute("spellcheck","false"),this.ǃOsz=re,this.ǃOsk=oe,this.ǃOsV=ye,this.ǃOsK=this.ǃvO.ǃOso(),this.ǃOsr=Oe,this.ǃOsG=!1,this.ǃJOx=ǃJ.ǃb(ǃJ.ǃSR,0,0,0,1),this.ǃJOA=!1,this.ǃOsz){let le=this.ǃJOg();null===le?this.ǃJOA=!0:le instanceof ǃJ.ǃSR&&this.ǃJOx.set(le)}this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOA?(this.ǃJOl.value="",this.ǃJOl.setAttribute(_235,lang(_237))):this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃOs_.addEventListener("click",ee),this.ǃJOh=()=>this.ǃJOv(),this.ǃJOZ.addEventListener(_234,this.ǃJOh),this.ǃJOP=()=>this.ǃOdd(),this.ǃJOZ.addEventListener("focus",this.ǃJOP),this.ǃJOd=()=>this.ǃvO.ǃOdP(this),this.ǃJOZ.addEventListener("blur",this.ǃJOd),this.ǃJOs=()=>this.ǃJJO(),this.ǃJOl.addEventListener(_234,this.ǃJOs),this.ǃJJJ=le=>{return ǃJ.ǃU.ǃkq.ǃOvn()?(le.preventDefault(),void this.ǃJOl.blur()):void this.ǃOdd()},this.ǃJOl.addEventListener("focus",this.ǃJJJ),this.ǃJJy=()=>this.ǃvO.ǃOdP(this),this.ǃJOl.addEventListener("blur",this.ǃJJy),this.ǃJJf=le=>this.ǃi$(le),this.ǃJOl.addEventListener("keydown",this.ǃJJf),this.ǃJOl.addEventListener("dragstart",ǃJ.ǃU.ǃOQc)}ǃih(){this.ǃOs_.removeEventListener("click",ee),this.ǃOsz=null,this.ǃOsk=null,this.ǃOsV=null,this.ǃOsK=null,this.ǃJOZ.removeEventListener(_234,this.ǃJOh),this.ǃJOh=null,this.ǃJOZ.removeEventListener("focus",this.ǃJOP),this.ǃJOP=null,this.ǃJOZ.removeEventListener("blur",this.ǃJOd),this.ǃJOd=null,ǃJ.ǃU.ǃHU(this.ǃJOZ),this.ǃJOZ=null,this.ǃJOl.removeEventListener(_234,this.ǃJOs),this.ǃJOs=null,this.ǃJOl.removeEventListener("focus",this.ǃJJJ),this.ǃJJJ=null,this.ǃJOl.removeEventListener("blur",this.ǃJJy),this.ǃJJy=null,this.ǃJOl.removeEventListener("keydown",this.ǃJJf),this.ǃJJf=null,this.ǃJOl.removeEventListener("dragstart",ǃJ.ǃU.ǃOQc),ǃJ.ǃU.ǃHU(this.ǃJOl),this.ǃJOl=null,ǃJ.ǃU.ǃHU(this.ǃJON),this.ǃJON=null,super.ǃih()}ǃJOC(){if(this.ǃOsk){let ne=ǃJ.ǃb(ǃJ.ǃSR,this.ǃJOx);this.ǃOsr?this.ǃvO.ǃJOu(this.ǃOsk,ne,this):this.ǃOsk(ne,this),this.ǃvO.ǃvt()}}ǃJOg(){return this.ǃOsz?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃOsz,this):this.ǃOsz(this):null}ǃoC(){this.ǃOsK&&this.ǃOsK(this.ǃyg())}ǃJOv(){this.ǃOsG||!this.ǃOsk||(this.ǃJOx.ǃxC(this.ǃJOZ.value),this.ǃOsG=!0,this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃOsG=!1,this.ǃJJS(),this.ǃJOZ.focus())}ǃJJO(){return this.ǃOsG||!this.ǃOsk?void 0:this.ǃJOx.ǃOnx(this.ǃJOl.value)?void(this.ǃOsG=!0,this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃOsG=!1,this.ǃJJS()):(this.ǃOsG=!0,this.ǃJOA?(this.ǃJOl.value="",this.ǃJOl.setAttribute(_235,lang(_237))):(this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃJOl.removeAttribute(_235)),void(this.ǃOsG=!1))}ǃJJS(){if(this.ǃoC(),this.ǃJOC(),this.ǃJOA=!1,this.ǃJOl.removeAttribute(_235),this.ǃOsz){let ne=this.ǃJOg();null===ne?(this.ǃJOA=!0,this.ǃJOx.ǃONC(0,0,0),this.ǃOsG=!0,this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOl.value="",this.ǃJOl.setAttribute(_235,lang(_237)),this.ǃOsG=!1):!this.ǃJOx.ǃON_(ne)&&(this.ǃJOA=!1,this.ǃOsG=!0,this.ǃJOx.ǃONC(ne.r,ne.ǃONo,ne.b),this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃOsG=!1)}}ǃi$(ne){ne.which===ǃJ.ǃCi.ǃCD&&(ne.preventDefault(),this.ǃJOl.blur(),this.ǃvO.ǃJOe(this))}ǃOsO(){return this.ǃJOZ.focus()}ǃJJn(){return this.ǃJOZ}ǃOsH(){this.ǃOsV&&(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}ǃOs$(ne){this.ǃJOZ.disabled=!ne,this.ǃJOl.disabled=!ne,this.ǃJOl.readOnly=!ne}ǃOsU(){if(this.ǃOsz){let ne=this.ǃJOg();this.ǃJOA&&null===ne||!this.ǃJOA&&null!==ne&&ne.ǃON_(this.ǃJOx)||(this.ǃJOA=null===ne,this.ǃJOA?(this.ǃJOx.ǃONC(0,0,0),this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOl.value="",this.ǃJOl.setAttribute(_235,lang(_237))):(this.ǃJOx.ǃONC(ne.r,ne.ǃONo,ne.b),this.ǃJOZ.value=this.ǃJOx.ǃONq(),this.ǃJOl.value=this.ǃJOx.ǃONM(),this.ǃJOl.removeAttribute(_235)))}}}}{function ee(te){te.preventDefault();let ne=this.getAttribute("for"),ie=this.ownerDocument.getElementById(ne);ie&&ie.focus()}const _238="UIPointerDown";ǃJ.ǃU.ǃUu.ǃJJX=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(ne,ie,ae,de,re,oe,ye,Oe){super(ne,ie,ae,de),ǃJ.ǃUg(re),ǃJ.ǃUg(oe),ǃJ.ǃUg(ye),this.ǃJJR=ǃJ.ǃU.ǃH("input",this.ǃOsm),this.ǃJJR.type="checkbox",this.ǃJJR.id=this.ǃdQ(),this.ǃOs_.addEventListener("click",ee),this.ǃOsz=re,this.ǃOsk=oe,this.ǃOsV=ye,this.ǃOsK=this.ǃvO.ǃOso(),this.ǃOsN=null,this.ǃOsr=Oe,this.ǃOsG=!1,this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),this.ǃJJg(this.ǃOsN)),this.ǃOsW=()=>this.ǃCV(),this.ǃJJR.addEventListener("change",this.ǃOsW),this.ǃOsZ=()=>this.ǃOdd(),this.ǃJJR.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>this.ǃvO.ǃOdP(this),this.ǃJJR.addEventListener("blur",this.ǃOsl),this.ǃJJH=!1,this.ǃZE=le=>{le.detail.ǃTd!==ǃJ.ǃDO.ǃaa||le.target===this.ǃOsm&&(!le.detail.ǃOS$&&le.preventDefault(),this.ǃJJH=!0,this.ǃJJR.focus())},this.ǃOsm.addEventListener(_238,this.ǃZE),this.ǃORW=le=>{le.target===this.ǃOsm&&this.ǃJJH&&(le.preventDefault(),this.ǃJJR.click()),this.ǃJJH=!1},this.ǃOsm.addEventListener("UITap",this.ǃORW)}ǃih(){this.ǃOs_.removeEventListener("click",ee),this.ǃOsz=null,this.ǃOsk=null,this.ǃOsV=null,this.ǃOsK=null,this.ǃOsN=null,this.ǃJJR.removeEventListener("change",this.ǃOsW),this.ǃOsW=null,this.ǃJJR.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃJJR.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃOsm.removeEventListener(_238,this.ǃZE),this.ǃZE=null,this.ǃOsm.removeEventListener("UITap",this.ǃORW),this.ǃORW=null,ǃJ.ǃU.ǃHU(this.ǃJJR),this.ǃJJR=null,super.ǃih()}ǃJOg(){return this.ǃOsz?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃOsz,this):this.ǃOsz(this):null}ǃJOC(ne){this.ǃOsk&&(ne=!!ne,this.ǃOsr?this.ǃvO.ǃJOu(this.ǃOsk,ne,this):this.ǃOsk(ne,this))}ǃoC(){this.ǃOsK&&this.ǃOsK(this.ǃyg())}ǃJJg(ne){this.ǃOsG=!0,null===ne?this.ǃJJR.indeterminate=!0:(this.ǃJJR.indeterminate=!1,this.ǃJJR.checked=!!ne),this.ǃOsG=!1}ǃCV(){this.ǃOsG||!this.ǃOsk||(this.ǃoC(),this.ǃJOC(!!this.ǃJJR.checked),this.ǃOsz&&(this.ǃOsN=this.ǃJOg(),!!this.ǃJJR.checked!==this.ǃOsN&&this.ǃJJg(this.ǃOsN)),this.ǃvO.ǃvt())}ǃOsO(){this.ǃJJR.focus()}ǃJJU(){return this.ǃJJR}ǃOsH(){this.ǃOsV&&(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}ǃOs$(ne){this.ǃJJR.disabled=!ne}ǃOsU(){if(this.ǃOsz){let ne=this.ǃJOg();ne===this.ǃOsN||(this.ǃOsN=ne,this.ǃJJg(this.ǃOsN))}}}}"use strict",ǃJ.ǃU.ǃUu.ǃJJC=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(te,ne,ie,ae,de,re,oe){super(te,ne,ie,ae),ǃJ.ǃUg(de),this.ǃJJu=ǃJ.ǃU.ǃH("span",this.ǃOsm,null,"infoProperty"),this.ǃJJu.setAttribute("tabindex","-1"),this.ǃJJ_=de,this.ǃOsN=null,this.ǃOsV=re,this.ǃOsr=oe,this.ǃOsU(),this.ǃWO(!1)}ǃJOg(){return this.ǃJJ_?this.ǃOsr?this.ǃvO.ǃJOU(this.ǃJJ_,this):this.ǃJJ_(this):null}ǃOsU(){if(this.ǃJJ_){let te=this.ǃJOg();null===te?te=lang("ui.bars.properties.multiple-placeholder"):!ǃJ.ǃOrb(te)&&(te=te.toString()),ǃJ.ǃOEJ(this.ǃOsN,te)||(this.ǃOsN=te,ǃJ.ǃHe(this.ǃJJu,this.ǃOsN))}}ǃOsO(){this.ǃJJu.focus()}ǃih(){ǃJ.ǃU.ǃHU(this.ǃJJu),this.ǃJJu=null,this.ǃJJ_=null,this.ǃOsV=null,this.ǃOsN=null,super.ǃih()}ǃJJm(){return this.ǃJJu}ǃOsH(){this.ǃOsV&&(this.ǃOsr?this.ǃWO(this.ǃvO.ǃJOr(this.ǃOsV)):this.ǃWO(this.ǃOsV()))}},"use strict",ǃJ.ǃU.ǃUu.ǃJJb=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(te,ne,ie,ae,de,re){if(super(te,ne,ie,ae),ǃJ.ǃJO(de),this.ǃJJc=ǃJ.ǃU.ǃH("a",this.ǃOsm),this.ǃJJt=null,"string"==typeof re)this.ǃJJc.href=re,this.ǃJJc.target="_blank";else if("function"==typeof re)this.ǃJJt=re,this.ǃJJc.addEventListener("click",this.ǃJJt);else throw new TypeError("expected string or function");this.ǃJJc.textContent=de,this.ǃOsZ=()=>this.ǃOdd(),this.ǃJJc.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>this.ǃvO.ǃOdP(this),this.ǃJJc.addEventListener("blur",this.ǃOsl)}ǃih(){this.ǃJJc.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃJJc.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃJJt&&(this.ǃJJc.removeEventListener("click",this.ǃJJt),this.ǃJJt=null),ǃJ.ǃU.ǃHU(this.ǃJJc),this.ǃJJc=null,super.ǃih()}ǃOsO(){this.ǃJJc.focus()}ǃJJ$(){return this.ǃJJc}ǃJJq(te){if(ǃJ.ǃJO(te),this.ǃJJt)throw new Error("not an external link");this.ǃJJc.href=te}ǃJJM(te){ǃJ.ǃJO(te),this.ǃJJc.textContent=te}},"use strict";{const _240="UIPointerDown";ǃJ.ǃU.ǃUu.ǃJJB=class extends ǃJ.ǃU.ǃUu.ǃOdx{constructor(te,ne,ie,ae){super(te,ne,ie,ae),this.ǃxD=ǃJ.ǃU.ǃH("td",this.ǃNZ),this.ǃxD.setAttribute("colspan","2"),this.ǃxD.setAttribute("tabindex","-1"),this.ǃxD.setAttribute("propgroup",""),this.ǃUv=ǃJ.ǃU.ǃH("div",this.ǃxD,null,"propgroup-wrap");let de=this.ǃOsJ();0this.ǃOdd(),this.ǃxD.addEventListener("focus",this.ǃJJV),this.ǃJJK=()=>this.ǃvO.ǃOdP(this),this.ǃxD.addEventListener("blur",this.ǃJJK),this.ǃJJo=()=>this.ǃNV(!0),this.ǃOs_.addEventListener("UIDoubleTap",this.ǃJJo),this.ǃJJL.ǃ_().addEventListener(_240,this.ǃJJo)}ǃih(){this.ǃJJL.ǃ_().removeEventListener(_240,this.ǃJJo),this.ǃJJL.ǃyY(),this.ǃJJL=null,this.ǃOs_.removeEventListener("UIDoubleTap",this.ǃJJo),this.ǃJJo=null,ǃJ.ǃU.ǃHU(this.ǃOs_),this.ǃOs_=null,ǃJ.ǃU.ǃHU(this.ǃUv),this.ǃUv=null,this.ǃxD.removeEventListener("blur",this.ǃJJK),this.ǃJJK=null,this.ǃxD.removeEventListener("focus",this.ǃJJV),this.ǃJJV=null,ǃJ.ǃU.ǃHU(this.ǃxD),this.ǃxD=null,super.ǃih()}ǃOsO(){this.ǃxD.focus()}ǃOsc(){return this.ǃxD}ǃJJe(){if(2>=this.ǃJJk.length){for(let te of this.ǃJJk)if(te instanceof ǃJ.ǃU.ǃUu.ǃJJB)return!0;return!1}return!0}ǃKd(){return this.ǃJJz}ǃoY(te,ne){te=!!te,ne=!!ne;this.ǃJJz===te||(!this.ǃJJe()&&(ne=!1),this.ǃJJz=te,this.ǃJJL.ǃ$r(app.ǃJt(this.ǃJJz?"expanded":"collapsed")),this.ǃJJr(ne))}ǃNV(te){te=!!te,this.ǃoY(!this.ǃKd(),te)}ǃOsf(te,ne){te=!!te,ne=!!ne,super.ǃOsf(te,ne),this.ǃJJr(ne)}ǃJJr(te){let ne=this.ǃJJz&&this.ǃjE();for(let ie of this.ǃJJk)ie.ǃOsf(ne,te)}ǃPM(te,ne,ie,ae,de,re,oe){let ye=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃOsq,this.ǃvO,te,ne,ie,this,ae,de,re,!!oe);return ye.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(ye),this.ǃJJk.push(ye),ye}ǃPV(te,ne,ie,ae,de,re){let oe=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJOI,this.ǃvO,te,ne,this,ie,ae,de,!!re);return oe.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(oe),this.ǃJJk.push(oe),oe}ǃPj(te,ne,ie,ae,de,re){let oe=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJOi,this.ǃvO,te,ne,this,ie,ae,de,!!re);return oe.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(oe),this.ǃJJk.push(oe),oe}ǃPE(te,ne,ie,ae,de,re){let oe=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJOW,this.ǃvO,te,ne,this,ie,ae,de,!!re);return oe.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(oe),this.ǃJJk.push(oe),oe}ǃPa(te,ne,ie,ae,de,re){let oe=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJJX,this.ǃvO,te,ne,this,ie,ae,de,!!re);return oe.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(oe),this.ǃJJk.push(oe),oe}ǃdS(te,ne,ie,ae,de){let re=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJJC,this.ǃvO,te,ne,this,ie,ae,de);return re.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(re),this.ǃJJk.push(re),re}ǃdG(te,ne,ie,ae){let de=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJJb,this.ǃvO,te,ne,this,ie,ae);return de.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(de),this.ǃJJk.push(de),de}ǃP$(te,ne){let ie=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJJB,this.ǃvO,te,ne,this);return ie.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(ie),this.ǃJJk.push(ie),ie}ǃPP(te,ne,ie){let ae=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJOK,this.ǃvO,te,ne,ie,this);return ae.ǃOsf(this.ǃJJz&&this.ǃjE()),this.ǃvO.ǃJJI.push(ae),this.ǃJJk.push(ae),ae}*children(){for(let te of this.ǃJJk)yield te}ǃNa(){return{name:this.ǃyg(),expanded:this.ǃKd(),children:this.ǃJJk.map(te=>te.ǃNa()).filter(te=>te)}}ǃNF(te){if(te){for(let ne of te.children){let ie=this.ǃJJN(ne.name);ie&&ie.ǃNF(ne)}this.ǃoY(te.expanded)}}ǃJJN(te){ǃJ.ǃJO(te);for(let ne of this.ǃJJk)if(ne.ǃyg()===te)return ne}}}{const _241="UIPointerDown";ǃJ.ǃU.ǃUu.ǃJOK=class extends ǃJ.ǃU.ǃUu.ǃOsC{constructor(ie,ae,de,re,oe){if(super(ie,ae,de,oe),ǃJ.ǃJO(re),!re)throw new Error("non-empty separator required");this.ǃJJG=re,this.ǃJJE="",this.ǃJJT=ǃJ.ǃU.ǃH("input",this.ǃOsm),this.ǃJJT.type="text",this.ǃJJT.id=this.ǃdQ(),this.ǃJJT.setAttribute("spellcheck","false"),this.ǃJJL=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,app.ǃJt("collapsed"),this.ǃUv),this.ǃJJD=()=>this.ǃNV(!0),this.ǃJJL.ǃ_().addEventListener(_241,this.ǃJJD),this.ǃOsG=!1,this.ǃOsE=!0,this.ǃOsT=!1,this.ǃOsK=this.ǃvO.ǃOso(),this.ǃJJz=!1,this.ǃJJk=[],this.ǃOsW=()=>this.ǃCV(),this.ǃJJT.addEventListener("change",this.ǃOsW),this.ǃOsZ=ye=>{return ǃJ.ǃU.ǃkq.ǃOvn()?(ye.preventDefault(),void this.ǃJJT.blur()):void(window.setTimeout(()=>{this.ǃJJT&&ǃJ.ǃU.ǃrw(this.ǃhi,this.ǃvO.ǃOsb())},300),this.ǃOdd(),this.ǃOsE=!1)},this.ǃJJT.addEventListener("focus",this.ǃOsZ),this.ǃOsl=()=>{this.ǃvO.ǃOdP(this),this.ǃOsE=!0,this.ǃOsT=!1},this.ǃJJT.addEventListener("blur",this.ǃOsl),this.ǃZE=()=>{this.ǃOsE&&(this.ǃOsT=!0,this.ǃOsE=!1)},this.ǃJJT.addEventListener(_241,this.ǃZE),this.ǃYy=ye=>{this.ǃOsT&&(ye.preventDefault(),this.ǃOsT=!1)},this.ǃJJT.addEventListener("UIPointerUp",this.ǃYy),this.ǃlv=ye=>this.ǃi$(ye),this.ǃJJT.addEventListener("keydown",this.ǃlv),this.ǃJJT.addEventListener("dragstart",ǃJ.ǃU.ǃOQc),this.ǃJJo=()=>this.ǃNV(!0),this.ǃOs_.addEventListener("UIDoubleTap",this.ǃJJo)}ǃih(){this.ǃOsK=null,this.ǃOs_.removeEventListener("UIDoubleTap",this.ǃJJo),this.ǃJJo=null,this.ǃJJT.removeEventListener("change",this.ǃOsW),this.ǃOsW=null,this.ǃJJT.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃJJT.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃJJT.removeEventListener(_241,this.ǃZE),this.ǃZE=null,this.ǃJJT.removeEventListener("UIPointerUp",this.ǃYy),this.ǃYy=null,this.ǃJJT.removeEventListener("keydown",this.ǃlv),this.ǃlv=null,this.ǃJJT.removeEventListener("dragstart",ǃJ.ǃU.ǃOQc),ǃJ.ǃU.ǃHU(this.ǃJJT),this.ǃJJT=null,this.ǃJJL.ǃ_().removeEventListener(_241,this.ǃJJD),this.ǃJJD=null,this.ǃJJL.ǃyY(),this.ǃJJL=null,super.ǃih()}ǃOdd(){this.ǃJJT.select(),super.ǃOdd()}ǃOsO(){this.ǃJJT.focus()}ǃoC(){this.ǃOsK&&this.ǃOsK(this.ǃyg())}ǃJJi(){let ie=[];for(let ae of this.ǃJJk)ae.ǃJOm()||ie.push(ae);return ie}ǃPd(ie){ǃJ.ǃJO(ie),this.ǃJJE=ie}ǃCV(){if(!this.ǃOsG){this.ǃoC(),this.ǃOsG=!0;let ie=this.ǃJJT.value.trim(),ae=this.ǃJJG.trim(),de=ie.split(ae);if(1===de.length&&this.ǃJJE&&this.ǃJJE!==this.ǃJJG){let ye=this.ǃJJE.trim(),Oe=ie.split(ye);2<=Oe.length&&(de=Oe)}let re=this.ǃJJi(),oe=Math.min(de.length,re.length);for(let ye=0;yeie.ǃNa()).filter(ie=>ie)}}ǃNF(ie){if(ie){for(let ae of ie.children){let de=this.ǃJJN(ae.name);de&&de.ǃNF(ae)}this.ǃoY(ie.expanded)}}ǃJJN(ie){ǃJ.ǃJO(ie);for(let ae of this.ǃJJk)if(ae.ǃyg()===ie)return ae}}}{const _242="selected",_243="firstRow",_244="UIPointerMove",_245="UIPointerDown",_246="no item array available",te={ǃvy:!1};ǃJ.ǃU.ǃUu.ǃvJ=class extends ǃJ.Event.ǃU_{constructor(ie,ae){super(),ǃJ.ǃBA(ae),ae=Object.assign({},te,ae),this.ǃOFZ=ie,this.ǃNZ=ǃJ.ǃU.ǃH("ui-propertygrid",this.ǃOFZ),this.ǃJJp=ǃJ.ǃU.ǃH("ui-propertygrid-container",this.ǃNZ),this.ǃJJw=ǃJ.ǃU.ǃH("ui-propertygrid-table",this.ǃJJp),this.ǃJJY=ǃJ.ǃU.ǃH("tr",this.ǃJJw),this.ǃJJQ=ǃJ.ǃU.ǃH("td",this.ǃJJY,null,_243),this.ǃJJQ.style.width="50%",this.ǃJJQ.classList.add(_243),this.ǃJJj=ǃJ.ǃU.ǃH("td",this.ǃJJY,null,_243),this.ǃJJF=ǃJ.ǃU.ǃH("ui-propertygrid-footer",this.ǃNZ),this.ǃJJF.style.display="none",this.ǃJJW=ǃJ.ǃU.ǃH("span",this.ǃJJF,null,"property-footer-title"),this.ǃJJZ=ǃJ.ǃU.ǃH("span",this.ǃJJF,null,"property-footer-description"),this.ǃJJl=!!ae.ǃvy,this.ǃJJI=[],this.ǃOsK=null,this.ǃJJx=null,this.ǃJJA=null,this.ǃJJh=0,this.ǃJJv=null,this.ǃJJP=0,this.ǃJJd=[],this.ǃJJs=-1,this.ǃJyO=[],this.ǃJyJ=()=>this.ǃJyy(!1),this.ǃJyf=-1,this.ǃJyS=[],this.ǃJyn=()=>this.ǃJyX(!1),this.ǃJyR=!0,this.ǃJyg=1,this.ǃZE=de=>this.ǃaS(de),this.ǃYO=de=>this.ǃYJ(de),this.ǃJyH=de=>this.ǃJyU(de),this.ǃOss=de=>this.ǃJyC(de),this.ǃwK=null,this.ǃJyu=!1,this.ǃwe=0,this.ǃwr=null,this.ǃJJl&&(this.ǃJJw.addEventListener(_245,this.ǃZE,!0),this.ǃJJw.addEventListener(_244,this.ǃYO),this.ǃqc().addEventListener(_244,this.ǃJyH),this.ǃqc().addEventListener("UIPointerUp",this.ǃOss))}ǃyY(){this.ǃbi(),this.ǃYi(),this.ǃJJw.removeEventListener(_245,this.ǃZE,!0),this.ǃZE=null,this.ǃJJw.removeEventListener(_244,this.ǃYO),this.ǃYO=null,this.ǃqc().removeEventListener(_244,this.ǃJyH),this.ǃJyH=null,this.ǃqc().removeEventListener("UIPointerUp",this.ǃOss),this.ǃOss=null,ǃJ.ǃU.ǃHU(this.ǃwr),this.ǃwr=null,ǃJ.ǃU.ǃHU(this.ǃJJj),this.ǃJJj=null,ǃJ.ǃU.ǃHU(this.ǃJJQ),this.ǃJJQ=null,ǃJ.ǃU.ǃHU(this.ǃJJY),this.ǃJJY=null,ǃJ.ǃU.ǃHU(this.ǃJJw),this.ǃJJw=null,ǃJ.ǃU.ǃHU(this.ǃJJp),this.ǃJJp=null,ǃJ.ǃU.ǃHU(this.ǃJJF),this.ǃJJF=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃOFZ=null,this.ǃJyJ=null,this.ǃJyn=null,this.ǃJJA=null,super.ǃyY()}ǃbi(){this.ǃOAW(),ǃJ.ǃXX(this.ǃJJd),this.ǃJy_("",""),-1!==this.ǃJJs&&(this.ǃGl().cancelAnimationFrame(this.ǃJJs),this.ǃJJs=-1),ǃJ.ǃXX(this.ǃJyO),-1!==this.ǃJyf&&(this.ǃGl().cancelAnimationFrame(this.ǃJyf),this.ǃJyf=-1),ǃJ.ǃXX(this.ǃJyS);for(let ie=this.ǃJJI.length-1;0<=ie;--ie)this.ǃJJI[ie].ǃih();this.ǃOsK=null,this.ǃJJx=null,ǃJ.ǃXX(this.ǃJJI),this.ǃJJh=0}ǃYi(){ǃJ.ǃU.ǃVq(this.ǃwK),this.ǃwK=null}ǃOAW(){for(let ie=document.activeElement;ie;)if(ie=ie.parentElement,ie===this.ǃJJw)return void document.activeElement.blur()}ǃ_(){return this.ǃNZ}ǃOdh(){return"propid"+this.ǃJJh++}ǃOdv(){return this.ǃJJw}ǃOsb(){return this.ǃJJp}ǃqc(){return this.ǃ_().ownerDocument}ǃGl(){return this.ǃqc().defaultView}ǃJy_(ie,ae){ǃJ.ǃJO(ie),ǃJ.ǃJO(ae);let de=this.ǃJJp.scrollTop;if(ie&&"\xA0"!==ie){let re=lang("ui.bars.properties.footer-title-prefix"),oe=lang("ui.bars.properties.footer-title-suffix");this.ǃJJW.textContent=re+ie+oe}else ǃJ.ǃU.ǃHL(this.ǃJJW);ae?this.ǃJJZ.textContent=ae:ǃJ.ǃU.ǃHL(this.ǃJJZ),this.ǃJJF.style.display=ie||ae?"":"none",this.ǃJJp.scrollTop=de}ǃsl(ie){if(ǃJ.ǃCl(ie),!ie.length)throw new Error("cannot set empty item array");ǃJ.ǃmx(this.ǃJJd,ie)}ǃAM(ie){ǃJ.ǃLA(ie),this.ǃOFZ!==ie&&(this.ǃOFZ&&this.ǃOFZ.removeChild(this.ǃNZ),this.ǃOFZ=ie,this.ǃOFZ.appendChild(this.ǃNZ))}ǃPq(ie){ǃJ.ǃUg(ie),this.ǃOsK=ie}ǃOso(){return this.ǃOsK}ǃdT(ie){ǃJ.ǃUg(ie),this.ǃJJx=ie}ǃOsR(){return this.ǃJJx}ǃJOU(ie,ae){if(!this.ǃJJd.length)throw new Error(_246);let de=ie(this.ǃJJd[0],ae),re=de instanceof ǃJ.ǃSR;for(let oe=1,ye=this.ǃJJd.length,Oe;oeae)){++ae;for(let de=this.ǃJJI.length,re;aethis.ǃO_L(),this.ǃOm$=ee.getElementById("cancelButton"),this.ǃOm$.onclick=()=>this.ǃOmq()}ǃzm(){this.ǃO_B.textContent=lang("common.ok"),this.ǃOm$.textContent=lang("common.cancel")}ǃOg(de,re){return ǃJ.ǃJO(de),this.ǃJyt.value=de,super.ǃOg(re)}ǃO_L(){this.ǃO_j(this.ǃJyt.value)}};ǃJ.ǃU.ǃOSt.ǃO_F.addEventListener("load",function(){ǃJ.ǃU.ǃOR.ǃO_W("LongTextPropertyDialog",ie)})}{const _247="UIPointerUp",_248="UIPointerMove",_249="UIPointerDown",ie={title:"",ǃQ:"",ǃJy$:!1,ǃHy:!0,ǃHf:!0,ǃJyq:!0,ǃHS:!0};ǃJ.ǃU.ǃUu.ǃOhP=class extends ǃJ.ǃq{constructor(de,re){super(),ǃJ.ǃBA(re),re=Object.assign({},ie,re),ǃJ.ǃJO(re.title),this.ǃOAg=de,this.ǃNZ=ǃJ.ǃU.ǃH("ui-tab",this.ǃOAg.ǃ_()),this.ǃNZ.setAttribute("role","tab"),this.ǃJyM=ǃJ.ǃU.ǃH("span",this.ǃNZ),this.ǃJyM.textContent=re.title,this.ǃXl=!1,this.ǃJyB=re.title,this.ǃJyL=re.ǃQ,this.ǃOFw=null,this.ǃJyL&&this.ǃNZ.setAttribute("title",this.ǃJyL),this.ǃOsh=!1,this.ǃwD=0,this.ǃwi=0,this.ǃJyz=!1,this.ǃOAu=null,this.ǃZE=oe=>this.ǃaS(oe),this.ǃNZ.addEventListener(_249,this.ǃZE),this.ǃZD=oe=>this.ǃzA(oe),this.ǃNZ.addEventListener("contextmenu",this.ǃZD),this.ǃYO=oe=>this.ǃYJ(oe),this.ǃYy=oe=>this.ǃaH(oe),re.ǃJy$&&(this.ǃNZ.setAttribute("closebutton",""),this.ǃOFw=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃUC,this.ǃNZ),this.ǃOFw.onclick=()=>this.ǃOAg.ǃJyk(this,"tabclose")),this.ǃJyV=!1,this.ǃJyK=!1,this.ǃJyo=!1,this.ǃJye=!1,this.ǃJyV=ǃJ.ǃOes(re.ǃHy)?re.ǃHy:!!re.ǃHy,this.ǃJyK=ǃJ.ǃOes(re.ǃHf)?re.ǃHf:!!re.ǃHf,this.ǃJyo=ǃJ.ǃOes(re.ǃJyq)?re.ǃJyq:!!re.ǃJyq,this.ǃJye=ǃJ.ǃOes(re.ǃHS)?re.ǃHS:!!re.ǃHS}ǃih(){this.ǃNZ.removeEventListener("contextmenu",this.ǃZD),this.ǃZD=null,this.ǃNZ.ownerDocument.removeEventListener(_247,this.ǃYy),this.ǃYy=null,this.ǃNZ.ownerDocument.removeEventListener(_248,this.ǃYO),this.ǃYO=null,this.ǃNZ.removeEventListener(_249,this.ǃZE),this.ǃZE=null,this.ǃOFw&&(this.ǃOFw.ǃyY(),this.ǃOFw=null),ǃJ.ǃU.ǃHU(this.ǃJyM),this.ǃJyM=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃOAu=null,this.ǃOAg=null,ǃJ.ǃyY(this)}ǃJyr(){return ǃJ.ǃOes(this.ǃJyV)?this.ǃJyV():this.ǃJyV}ǃOhd(){return ǃJ.ǃOes(this.ǃJyK)?this.ǃJyK():this.ǃJyK}ǃOhs(){return ǃJ.ǃOes(this.ǃJyo)?this.ǃJyo():this.ǃJyo}ǃOvO(){return ǃJ.ǃOes(this.ǃJye)?this.ǃJye():this.ǃJye}ǃOV(){this.ǃNZ.setAttribute("hide","")}ǃOK(){this.ǃNZ.removeAttribute("hide")}ǃaS(de){let re=de.detail.clientX,oe=de.detail.clientY;return this.ǃOsh?void 0:1===de.detail.ǃTd?void this.ǃe().ǃJyk(this,"tabmiddleclick"):void(this.ǃOAg.ǃOhA(this),this.ǃJyr()&&(this.ǃOsh=!0,this.ǃwD=re,this.ǃwi=oe,this.ǃJyz=!1,this.ǃNZ.ownerDocument.addEventListener(_248,this.ǃYO),this.ǃNZ.ownerDocument.addEventListener(_247,this.ǃYy)))}ǃYJ(de){let re=de.detail,oe=re.clientX,ye=re.clientY,Oe=re.id;if(this.ǃOsh){if(this.ǃOAg.ǃJyI()&&Math.abs(oe-this.ǃwD)>=10&&(this.ǃJyz=!0),this.ǃJyz){let he=this.ǃOAg.ǃJyN(oe,ye);if(he&&he!==this){let ge=this.ǃfI(),me=he.ǃfI(),ve=me-ge,be=!0;return 0=Je.left-ue&&ye>=Je.top-ue&&oe<=Je.right+ue&&ye<=Je.bottom+ue;ǃJ.ǃ_i(this.ǃwD,this.ǃwi,oe,ye)>80&&!pe&&ǃJ.ǃl.ǃJW&&(this.ǃaH(),this.ǃe().ǃOhN(this,oe,ye,Oe))}}ǃaH(){this.ǃOsh=!1,this.ǃJyz=!1,this.ǃNZ.ownerDocument.removeEventListener(_247,this.ǃYy),this.ǃNZ.ownerDocument.removeEventListener(_248,this.ǃYO)}ǃzA(de){this.ǃOAg.ǃOhi(this,de.clientX,de.clientY)||de.preventDefault()}ǃJyE(de){de=!!de;this.ǃXl===de||(ǃJ.ǃU.ǃrx(this.ǃNZ,"active",de),this.ǃXl=de)}ǃnK(){return this.ǃNZ.getBoundingClientRect().left}ǃfI(){let de=this.ǃNZ.getBoundingClientRect();return de.right-de.left}ǃV$(de,re){ǃJ.ǃXq(de),ǃJ.ǃXq(re);let oe=this.ǃNZ.getBoundingClientRect();return de>=oe.left&&re>=oe.top&&deie||ie>=this.ǃOAC.length?null:this.ǃOAC[ie]}*ǃHb(){for(let ie=0,ae=this.ǃOAC.length;ieie||ie>=this.ǃOAC.length)throw new RangeError(_250);let ae=this.ǃOAC[ie];ae.ǃih(),this.ǃOAC.splice(ie,1),this.ǃJya===ae&&(this.ǃOAC.length?this.ǃOhA(this.ǃOAC[0],!0):this.ǃJya=null),this.ǃJyk(null,"tabremove")}ǃBF(ie){if(ǃJ.ǃXq(ie),ie=Math.floor(ie),0>ie||ie>=this.ǃOAC.length)throw new RangeError(_250);this.ǃOhA(this.ǃOAC[ie])}ǃJyN(ie,ae){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae);for(let de of this.ǃOAC)if(de.ǃV$(ie,ae))return de;return null}ǃOhA(ie,ae=!1){if(ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃOhP),this.ǃJya!==ie){if(!this.ǃOAC.includes(ie))throw new Error("tab does not belong to this tab bar");this.ǃJya=ie,this.ǃJyp(),this.ǃJyk(ie,"activetabchanged",ae)}}ǃJyp(){for(let ie=0,ae=this.ǃOAC.length,de;iede||0>re)throw new Error("cannot find tab");this.ǃOAC[de]=ae,this.ǃOAC[re]=ie,this.ǃJyw()}ǃJyw(){for(let ie of this.ǃOAC)ǃJ.ǃU.ǃHU(ie.ǃ_());for(let ie of this.ǃOAC)this.ǃNZ.appendChild(ie.ǃ_())}ǃOhN(ie,ae,de,re){ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃOhP),ǃJ.ǃXq(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re);let oe=new ǃJ.Event("tearofftab");oe.ǃOhT=ie,oe.clientX=ae,oe.clientY=de,oe.pointerId=re,this.dispatchEvent(oe)}ǃOhi(ie,ae,de){ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃOhP),ǃJ.ǃXq(ae),ǃJ.ǃXq(de);let re=new ǃJ.Event("tabcontextmenu",!0);return re.ǃOhT=ie,re.clientX=ae,re.clientY=de,this.dispatchEvent(re)}ǃJyk(ie,ae,de=!1){ǃJ.ǃq$(ie,ǃJ.ǃU.ǃUu.ǃOhP),ǃJ.ǃJO(ae);let re=new ǃJ.Event(ae);re.ǃOhT=ie,re.ǃOhh=de?"removal":"",this.dispatchEvent(re)}}}{const _251="insert-inside",_252="item from different tree",ee={ǃJyY:-1,ǃzZ:!1,ǃVI:!1,ǃVN:!1,ǃzl:!1,ǃzx:!1,ǃJyQ:!0},te=400;ǃJ.ǃU.ǃUu.ǃzW=class extends ǃJ.Event.ǃU_{constructor(ie,ae){super(),ǃJ.ǃLA(ie),ǃJ.ǃBA(ae),ae=Object.assign({},ee,ae),ǃJ.ǃXq(ae.ǃJyY),this.ǃOFZ=ie,this.ǃJyj=ae.ǃJyY,0>this.ǃJyj&&(this.ǃJyj=app.ǃ$L()),this.ǃJyF=!!ae.ǃzZ&&ǃJ.ǃl.ǃJW,this.ǃJyW=!!ae.ǃVI,this.ǃJyZ=!!ae.ǃzl,this.ǃJyl=!!ae.ǃzx,this.ǃJyx=!!ae.ǃVN,this.ǃJyA=!!ae.ǃJyQ,this.ǃNZ=ǃJ.ǃU.ǃH("ui-tree",this.ǃOFZ),this.ǃNZ.setAttribute("role","tree"),this.ǃNZ.setAttribute("tabindex",0),this.ǃOsZ=()=>this.ǃJyh(),this.ǃOsl=()=>this.ǃJyv(),this.ǃNZ.addEventListener("focus",this.ǃOsZ),this.ǃNZ.addEventListener("blur",this.ǃOsl),this.ǃlv=de=>this.ǃi$(de),this.ǃJyl?this.ǃNZ.setAttribute("fullrowselect",""):this.ǃNZ.setAttribute("itemselect",""),this.ǃJyA&&this.ǃNZ.setAttribute("wraplongitems",""),this.ǃOaF=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃkV,this,null,null,""),this.ǃJyP=app.ǃJt("expanded"),this.ǃJyd=app.ǃJt("collapsed"),this.ǃJys=new Set,this.ǃJfO=null,this.ǃww=ǃJ.ǃU.ǃH("div",null,null,"tree-insert-mark"),this.ǃJfJ=null,this.ǃwQ="",this.ǃJfy=!1,this.ǃGu=-1,this.ǃJff=()=>this.ǃJfS(),this.ǃJfn=0,this.ǃJfX=0,this.ǃJfR=0,this.ǃJfg=0}ǃyY(){this.ǃqc().removeEventListener("keydown",this.ǃlv),this.ǃlv=null,this.ǃJys.clear(),this.ǃJfO=null,this.ǃVt(),this.ǃww=null,this.ǃJfH(),this.ǃJff=null,this.ǃOaF.ǃyY(!0),this.ǃOaF=null,this.ǃNZ.removeEventListener("focus",this.ǃOsZ),this.ǃNZ.removeEventListener("blur",this.ǃOsl),this.ǃOsZ=null,this.ǃOsl=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃOFZ=null,super.ǃyY()}ǃeE(ie){ie=!!ie,this.ǃOaF.ǃJfU(ie)}ǃeD(ie,ae,de){let re=ie instanceof ǃJ.ǃU.ǃUu.ǃkV?ie:this.ǃeG(oe=>oe.ǃHc()===ie);re&&(ae=!!ae,de=!!de,de?re.ǃJfU(ae):re.ǃoY(!1,ae))}ǃeT(ie){ie=!!ie,this.ǃOaF.ǃJfC(ie)}ǃei(ie,ae,de){let re;re=ie instanceof ǃJ.ǃU.ǃUu.ǃkV?ie:this.ǃeG(oe=>oe.ǃHc()===ie),ae=!!ae,de=!!de,de?re.ǃJfC(ae):re.ǃoY(!0,ae)}ǃJfu(ie){if(ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃkV),ie.ǃJf_()!==this)throw new Error(_252)}ǃJfm(ie){if(ǃJ.ǃq$(ie,ǃJ.ǃU.ǃUu.ǃkV),ie&&ie.ǃJf_()!==this)throw new Error(_252)}ǃeG(ie){return this.ǃOaF.ǃeG(ie)}ǃbi(){this.ǃVt(),this.ǃOaF.ǃki()}ǃJfb(){return this.ǃJyj}ǃkD(){return this.ǃOaF}ǃ_(){return this.ǃNZ}ǃqc(){return this.ǃNZ.ownerDocument}ǃGl(){return this.ǃqc().defaultView}ǃJfc(){return this.ǃJyP}ǃJft(){return this.ǃJyd}ǃJf$(){return this.ǃJyF}ǃJfq(){return this.ǃJyW}ǃJfM(){return this.ǃJyx}ǃJfB(){return this.ǃJyZ}ǃJfL(){return this.ǃJyl}ǃJfz(ie){this.ǃJfu(ie),this.ǃJys.add(ie),this.ǃJfk(ie,"itemselect")}ǃJfV(ie){this.ǃJfu(ie),this.ǃJys.delete(ie)}ǃeZ(){return this.ǃJys.size}ǃoe(ie=!1){const ae=this.ǃJfO;for(let de of this.ǃJys)de.ǃQa(!1);this.ǃJfO=ie?ae:null,assert(0===this.ǃJys.size,"should have deleted all selected items")}ǃoX(){return this.ǃJys.values()}ǃko(){return ǃJ.ǃUe(this.ǃJys)}ǃIn(){let ie=[];for(let ae of this.ǃoX())ie.push(ae);return this.ǃJfK(ie),ie}ǃJfo(ie){this.ǃJfm(ie),this.ǃJfO=ie}ǃJfe(){return this.ǃJfO}ǃJfr(){return this.ǃOaF.ǃJfr()}ǃJfI(){return this.ǃOaF.ǃJfI()}ǃkN(ie,ae){ǃJ.ǃJO(ie);const de=ie.toLowerCase();for(const re of this.ǃJfr())if((ae||re.ǃjE())&&re.ǃKP().toLowerCase().startsWith(de))return re;return null}ǃJfN(ie,ae){if(this.ǃJfu(ie),this.ǃJfu(ae),ie===ae)return void ie.ǃQa(!0);let de=!1,re=null,oe=[];for(let ye of this.ǃJfr())if(de||(ye===ie?(de=!0,re=ae):ye===ae&&(de=!0,re=ie)),de&&(oe.push(ye),ye===re))break;re===ie&&oe.reverse();for(let ye of oe)ye.ǃQa(!0)}ǃJyh(){this.ǃqc().addEventListener("keydown",this.ǃlv)}ǃJyv(){this.ǃqc().removeEventListener("keydown",this.ǃlv)}ǃi$(ie){if(1===this.ǃeZ()){const ae=ie.which;if(ae===ǃJ.ǃCi.ǃzc||ae===ǃJ.ǃCi.ǃzt){const de=this.ǃko(),re=[...this.ǃJfI()];let oe=re.indexOf(de);0>oe||(ae===ǃJ.ǃCi.ǃzc?--oe:++oe,0>oe||oe>=re.length||(re[oe].ǃkE(),re[oe].ǃrw(),ie.preventDefault()))}}}ǃV$(ie,ae,de,re){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),ǃJ.ǃUV(de),de=de||"full",re=!!re;let oe=this.ǃNZ.getBoundingClientRect();if(ieoe.right||ae>oe.bottom)return null;for(let ye of this.ǃJfr()){let Oe=ye.ǃV$(ie,ae,de);if(Oe)return{item:ye,ǃVc:Oe.ǃVc,ǃIJ:Oe.ǃIJ}}return re&&ie>oe.left&&ae>oe.top&&ie=de.left&&this.ǃJfX<=de.right)if(this.ǃJfRde.bottom){let re=this.ǃNZ.scrollTop,oe=re+te*ae+this.ǃJfg;this.ǃJfg=oe-Math.floor(oe),oe=Math.floor(oe),this.ǃNZ.scrollTop=oe}this.ǃGu=this.ǃGl().requestAnimationFrame(this.ǃJff)}}ǃJfH(){this.ǃJfy=!1,-1!==this.ǃGu&&(this.ǃGl().cancelAnimationFrame(this.ǃGu),this.ǃGu=-1)}ǃJfK(ie){ǃJ.ǃCl(ie);for(let ae of ie)this.ǃJfu(ae);this.ǃJfG(),ie.sort(ǃJ.ǃU.ǃUu.ǃkV.ǃJfE)}ǃJfG(){let ie=0;for(let ae of this.ǃJfr())ae.ǃJfT(ie++)}ǃJfD(ie){ǃJ.ǃJO(ie);let ae=new ǃJ.Event(ie,!0);return ae.ǃJfi=this,this.dispatchEvent(ae)}ǃJfk(ie,ae){this.ǃJfu(ie),ǃJ.ǃJO(ae);let de=new ǃJ.Event(ae,!0);return de.item=ie,this.dispatchEvent(de)}ǃJfa(ie,ae,de,re){this.ǃJfu(ie),ǃJ.ǃJO(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re);let oe=new ǃJ.Event(ae,!0);return oe.item=ie,oe.clientX=de,oe.clientY=re,this.dispatchEvent(oe)}ǃgY(ie,ae){this.ǃJfu(ie);let de=new ǃJ.Event("itemcontextmenu",!0);return de.item=ie,de.clientX=ae.clientX,de.clientY=ae.clientY,this.dispatchEvent(de)}ǃNa(){return{name:this.ǃOaF.ǃKP(),children:[...this.ǃOaF.children()].map(ie=>ie.ǃNa())}}ǃNF(ie){if(ǃJ.ǃiE(ie),!!ie){let ae=[...this.ǃOaF.children()],de=ie.children.length;for(let re=0;rethis.ǃJfF(),this.ǃJfW=!0,this.ǃJfZ=pe=>this.ǃJfl(pe),this.ǃJfx=0,this.ǃJfA=0,this.ǃwT=-1,this.ǃwD=0,this.ǃwi=0,this.ǃOsh=!1,this.ǃYO=null,this.ǃYy=null,this.ǃJfh=null,this.ǃJfv=0,this.ǃJfP=0,this.ǃZT=pe=>this.ǃYm(pe),this.ǃxY=pe=>this.ǃxQ(pe),this.ǃlL=()=>this.ǃlz(),this.ǃJfd=null,this.ǃZG=!1,this.ǃZD=pe=>this.ǃzA(pe),this.ǃJfs=null,this.ǃJSO=null,this.ǃ$q=null,this.ǃJSJ=null,this.ǃJSy=null,this.ǃOZU=null,this.ǃJSf=null,this.ǃJSS=null,this.ǃJOf=null,this.ǃJSn=null,this.ǃJSX=null,this.ǃJSR=null,this.ǃJSg=-1,this.ǃex()||(this.ǃNZ=ǃJ.ǃU.ǃH("ui-treeitem",this.ǃOFZ.ǃJSH(),null,null,null,Je),this.ǃNZ.setAttribute("role","treeitem"),this.ǃNZ.addEventListener("contextmenu",this.ǃZD),!this.enable&&this.ǃNZ.setAttribute("disable",""),this.ǃxw=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,this.ǃzF.ǃJfc().ǃOPO(),this.ǃNZ),this.ǃJfd=ǃJ.ǃU.ǃH("div",this.ǃNZ,null,"tree-item-wrap"),this.ǃJSU().addEventListener("UIDoubleTap",this.ǃZT),this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,this.ǃOdu||this.ǃzF.ǃJfb(),this.ǃJfd),this.ǃJSJ=pe=>this.ǃJSC(pe),this.ǃ$q.ǃ_().addEventListener(_258,this.ǃJSJ),this.ǃJSy=ǃJ.ǃU.ǃH("span",this.ǃJfd,null,"tree-item-name"),this.ǃJSy.textContent=this.ǃtA,this.ǃJSn=()=>this.ǃJSu(),this.ǃZE=pe=>this.ǃaS(pe),this.ǃJSU().addEventListener(_258,this.ǃZE),this.ǃYO=pe=>this.ǃYJ(pe),this.ǃYy=pe=>this.ǃaH(pe)),this.ǃBz=!1}ǃJS_(re){re=!!re,this.ǃJfw=re}ǃro(){return this.ǃJfw}ǃki(){this.ǃle(),this.ǃJfp=!0;for(let re=this.ǃOFl.length-1,oe;0<=re;--re)oe=this.ǃOFl[re],oe.ǃJS_(!0),oe.ǃyY();ǃJ.ǃXX(this.ǃOFl),this.ǃJfp=!1,this.ǃJSm()}ǃOWI(re){if(ǃJ.ǃk(re,ǃJ.ǃU.ǃUu.ǃkV),!this.ǃJfp){let oe=this.ǃOFl.indexOf(re);assert(0<=oe,"cannot find child to remove"),this.ǃOFl.splice(oe,1),this.ǃOFl.length||this.ǃJSm()}}ǃyY(re){if(this.ǃex()&&!re)throw new Error("root item cannot be removed");this.ǃJSb(),this.ǃJfZ=null,this.ǃJSc(),this.ǃle(),this.ǃQa(!1),this.ǃzF.ǃJfe()===this&&(1<=this.ǃzF.ǃeZ()?this.ǃzF.ǃJfo(this.ǃzF.ǃko()):this.ǃzF.ǃJfo(null)),this.ǃki(),this.ǃlL=null,this.ǃJSn=null,this.ǃex()||(this.ǃJSU().removeEventListener("UIDoubleTap",this.ǃZT),this.ǃJSU().removeEventListener(_258,this.ǃZE),this.ǃqc().removeEventListener(_259,this.ǃYO),this.ǃqc().removeEventListener(_255,this.ǃYy)),this.ǃxw&&(this.ǃxw.ǃ_().removeEventListener("UITap",this.ǃxY),this.ǃxw.ǃyY(),this.ǃxw=null),this.ǃJfY&&(ǃJ.ǃU.ǃHU(this.ǃJfY),this.ǃJfY=null),this.ǃJSy&&(ǃJ.ǃU.ǃHU(this.ǃJSy),this.ǃJSy=null),this.ǃJfh&&(ǃJ.ǃU.ǃHU(this.ǃJfh),this.ǃJfh=null),this.ǃJfs&&(this.ǃJfs.removeEventListener("change",this.ǃJSO),this.ǃJSO=null,ǃJ.ǃU.ǃHU(this.ǃJfs),this.ǃJfs=null),this.ǃ$q&&(this.ǃ$q.ǃ_().removeEventListener(_258,this.ǃJSJ),this.ǃJSJ=null,this.ǃ$q.ǃyY(),this.ǃ$q=null),this.ǃJfd&&(ǃJ.ǃU.ǃHU(this.ǃJfd),this.ǃJfd=null),this.ǃNZ&&(this.ǃNZ.removeEventListener("contextmenu",this.ǃZD),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null),this.ǃZD=null,this.ǃZT=null,this.ǃZE=null,this.ǃYO=null,this.ǃYy=null,this.ǃJfj=null,this.ǃxY=null,this.ǃOFZ&&this.ǃOFZ.ǃOWI(this),this.ǃex()||this.ǃzF.ǃJfk(this,"itemremove"),this.ǃOdu=null,this.ǃOAu=null,this.ǃzF=null,this.ǃOFZ=null,ǃJ.ǃyY(this)}ǃ_(){return this.ǃNZ}ǃVf(){return this.ǃJfd}ǃJSU(){return this.ǃzF.ǃJfL()?this.ǃNZ:this.ǃJfd}ǃJf_(){return this.ǃzF}ǃqc(){return this.ǃNZ.ownerDocument}ǃWO(re){re=!!re;this.enable===re||(this.enable=re,this.enable?this.ǃNZ.setAttribute("disable",""):this.ǃNZ.removeAttribute("disable"))}ǃEy(){return this.enable}*ǃJfr(){this.ǃex()||(yield this);for(const re of this.ǃOFl)yield*re.ǃJfr()}*ǃJfI(){if(this.ǃex()||(yield this),this.ǃKd())for(const re of this.ǃOFl)yield*re.ǃJfI()}*children(){for(let re of this.ǃOFl)yield re}ǃaS(re){let oe=re.detail;oe.ǃTd!==ǃJ.ǃDO.ǃaa||(this.ǃJSU().setAttribute(_256,""),this.ǃqc().addEventListener(_259,this.ǃYO),this.ǃqc().addEventListener(_255,this.ǃYy),this.ǃwT=oe.id,this.ǃwD=oe.clientX,this.ǃwi=oe.clientY,this.ǃOsh=!1)}ǃYJ(re){let oe=re.detail;if(oe.id===this.ǃwT){if(this.ǃzF.ǃJfB()&&!this.ǃOsh&&ǃJ.ǃ_i(this.ǃwD,this.ǃwi,oe.clientX,oe.clientY)>=10)if(this.ǃJSU().removeAttribute(_256,""),this.ǃzF.ǃJfk(this,"dragstart")){this.ǃOsh=!0,this.ǃJSb(),this.ǃzF.ǃJfo(this),this.ǃoB()||this.ǃkE();for(let Oe of this.ǃzF.ǃoX())Oe.ǃJSU().setAttribute("dragged","");1===this.ǃzF.ǃeZ()?(this.ǃJfh=this.ǃJfd.cloneNode(!0),this.ǃJfh.removeAttribute(_253),this.ǃJfh.setAttribute(_260,"")):(this.ǃJfh=this.ǃJSy.cloneNode(!0),this.ǃJfh.setAttribute(_260,""),this.ǃJfh.textContent=ǃCM("ui.controls.tree.multi-select-drag-tooltip",this.ǃzF.ǃeZ()));let ye=ǃJ.ǃOrZ(this.ǃNZ,"dialog");if(ye){ye.appendChild(this.ǃJfh);let Oe=ǃJ.ǃU.ǃOR.ǃOWC(ye);this.ǃJfv=Oe.ǃOZS(),this.ǃJfP=Oe.ǃOZn()}else this.ǃqc().body.appendChild(this.ǃJfh);this.ǃzF.ǃkS()}else return this.ǃwT=-1,this.ǃqc().removeEventListener(_259,this.ǃYO),this.ǃqc().removeEventListener(_255,this.ǃYy),void(this.ǃoB()||this.ǃkE());this.ǃOsh&&(re.preventDefault(),this.ǃzF.ǃJfa(this,"dragmove",oe.clientX,oe.clientY),this.ǃJfh.style.left=`${oe.clientX-this.ǃJfv}px`,this.ǃJfh.style.top=`${oe.clientY-this.ǃJfP}px`,this.ǃzF.ǃkn(oe.clientX,oe.clientY))}}ǃJfl(re){this.ǃJfx=re.detail.clientX,this.ǃJfA=re.detail.clientY}ǃaH(re){let oe=re.detail;if(oe.id===this.ǃwT)if(this.ǃJSU().removeAttribute(_256,""),this.ǃqc().removeEventListener(_259,this.ǃYO),this.ǃqc().removeEventListener(_255,this.ǃYy),this.ǃOsh){this.ǃOsh=!1,this.ǃwT=-1;for(let ye of this.ǃzF.ǃoX())ye.ǃJSU().removeAttribute("dragged");ǃJ.ǃU.ǃHU(this.ǃJfh),this.ǃJfh=null,this.ǃzF.ǃJfH(),this.ǃzF.ǃJfa(this,"drop",oe.clientX,oe.clientY)}else{if(re.target===this.ǃJfs)return;this.ǃzF.ǃJf$()&&this.ǃoB()&&1===this.ǃzF.ǃeZ()&&this.ǃV$(oe.clientX,oe.clientY,"label")&&(this.ǃJSb(),re.target!==this.ǃ$q.ǃ_()&&(this.ǃJfx=oe.clientX,this.ǃJfA=oe.clientY,this.ǃqc().addEventListener(_259,this.ǃJfZ),this.ǃJfQ=setTimeout(this.ǃJfj,700))),this.ǃzF.ǃJfk(this,"itemclick");let ye=this.ǃzF.ǃJfe();if(this.ǃzF.ǃJfq()){let Oe=ǃJ.ǃeh.ǃaG(),le=ǃJ.ǃeh.ǃeA(ǃJ.ǃCi.ǃev);if(Oe&&le&&ye)return this.ǃzF.ǃJfN(this,ye),this.ǃoB()&&this.ǃzF.ǃJfo(this),this.ǃzF.ǃJfM()&&this.ǃJSt(!0),void this.ǃzF.ǃJfk(this,_261);if(Oe){let Je=!this.ǃoB();return this.ǃQa(Je),this.ǃoB()&&this.ǃzF.ǃJfo(this),this.ǃzF.ǃJfM()&&this.ǃJSt(Je),void this.ǃzF.ǃJfk(this,_261)}if(le&&ye)return this.ǃzF.ǃoe(!0),this.ǃzF.ǃJfN(this,ye),this.ǃzF.ǃJfM()&&(this.ǃJSt(!0),ye.ǃJSt(!0)),void this.ǃzF.ǃJfk(this,_261)}this.ǃzF.ǃJfo(this),this.ǃJS$(!1),this.ǃzF.ǃoe(),this.ǃQa(!0),this.ǃJS$(!0),this.ǃzF.ǃJfM()&&this.ǃJSt(!0),this.ǃzF.ǃJfk(this,_261)}}ǃJSt(re){if(re=!!re,this.ǃKv())for(let oe of this.children())oe.ǃQa(re)}ǃYm(){this.ǃJSb(),this.ǃzF.ǃJfk(this,"itemdoubletap")&&this.ǃJfY&&this.ǃNV(!0)}ǃJSC(re){this.ǃJSb(),re.detail.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃzF.ǃJfk(this,"itemiconclick")||re.stopPropagation()}ǃeG(re){if(ǃJ.ǃ$V(re),re(this))return this;for(let oe=0,ye;oeOe.right||oeOe.bottom)return null;let le=Oe.bottom-Oe.top,Je=Oe.top+le/4,ue=Oe.bottom-le/4,pe=Oe.top+le/2,he=oe>=pe,ge=oe>Je&&oe<=ue;return he&&!ge&&this.ǃKd()&&this.ǃKv()&&(ge=!0),{ǃVc:he?"after":"before",ǃIJ:ge}}ǃJSM(){if(this.ǃNb(),this.ǃJJz)for(let re of this.ǃOFl)re.ǃJSM()}ǃ$r(re){if(!ǃJ.ǃLX(re)&&!(re instanceof ǃJ.ǃU.ǃ$B))throw new TypeError(_257);ǃJ.ǃLX(re)?this.ǃ$q.ǃ$r(app.ǃJt(re)):this.ǃ$q.ǃ$r(re)}ǃIe(re){ǃJ.ǃ$V(re),this.ǃ$q.ǃIe(re),this.ǃjE()&&this.ǃNb()}ǃNb(){this.ǃ$q.ǃNb()}ǃjE(){for(let re=this.ǃOFZ;re;){if(!re.ǃKd())return!1;re=re.ǃOFZ}return!0}ǃxQ(re){re.detail.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃNV(!0)}ǃKd(){return this.ǃJJz}ǃoY(re,oe){if(this.ǃex())throw new Error("cannot change expanded state of root item");if(re=!!re,oe=!!(oe&&this.ǃjE()&&app.ǃlN()),!this.ǃJfY)return void(this.ǃJJz=re);if((!oe||oe&&this.ǃlG())&&(this.ǃle(),oe=!1),re&&!this.ǃJJz){if(this.ǃJJz=!0,this.ǃJfY.removeAttribute(_254),this.ǃxw.ǃ$r(this.ǃzF.ǃJfc()),this.ǃJyd&&this.ǃ$q.ǃ$r(this.ǃOdu),this.ǃJSB(),this.ǃjE()&&this.ǃJSM(),oe){let ye=this.ǃJfY.getBoundingClientRect(),Oe=ye.bottom-ye.top;ee[0].height="0px",ee[1].height=`${Oe}px`,this.ǃJfY.style.overflow="hidden",this.ǃlB=this.ǃJfY.animate(ee,te),this.ǃlB.onfinish=this.ǃlL}}else if(!re&&this.ǃJJz)if(this.ǃJJz=!1,this.ǃxw.ǃ$r(this.ǃzF.ǃJft()),this.ǃJyd&&this.ǃ$q.ǃ$r(this.ǃJyd),this.ǃJSB(),oe){let ye=this.ǃJfY.getBoundingClientRect(),Oe=ye.bottom-ye.top;ee[0].height=`${Oe}px`,ee[1].height="0px",this.ǃJfY.style.overflow="hidden",this.ǃlB=this.ǃJfY.animate(ee,te),this.ǃlB.onfinish=this.ǃlL}else this.ǃJfY.setAttribute(_254,"")}ǃJSB(){this.ǃBz||this.ǃzF.ǃJfk(this,"itemexpand")}ǃJfC(re){this.ǃex()||this.ǃoY(!0,re);let oe=this.ǃOFl.length;for(let ye=0;yeOe?this.ǃOFl.unshift(Je):this.ǃOFl.splice(Oe,0,Je):this.ǃOFl.push(Je),Je}ǃrX(re){re?this.ǃNZ.setAttribute("fade",""):this.ǃNZ.removeAttribute("fade","")}ǃI_(re){ǃJ.ǃk(re,ǃJ.ǃU.ǃ$B);this.ǃex()||(this.ǃJyd=re,this.ǃJfY&&!this.ǃJJz&&this.ǃ$q.ǃ$r(this.ǃJyd))}ǃzA(re){this.ǃoB()||this.ǃkE(),this.ǃJSb(),this.ǃzF.ǃgY(this,re)||(re.preventDefault(),re.stopPropagation())}ǃJSk(re){re=!!re;for(let oe=this.ǃOFZ;oe;)oe.ǃex()||oe.ǃoY(!0,re),oe=oe.ǃoH()}ǃrw(){ǃJ.ǃU.ǃrw(this.ǃNZ,this.ǃzF.ǃ_())}ǃkG(re){re=!!re,this.ǃJSk(re),this.ǃrw()}ǃJfF(){this.ǃJfQ=-1,this.ǃNZ&&this.ǃqc().removeEventListener(_259,this.ǃJfZ);this.ǃV$(this.ǃJfx,this.ǃJfA,"label")&&this.ǃzF.ǃJfk(this,"itemedit")}ǃJS$(re){this.ǃJfW=!!re}ǃJSb(){this.ǃJfW&&(this.ǃNZ&&this.ǃqc().removeEventListener(_259,this.ǃJfZ),-1!==this.ǃJfQ&&(clearTimeout(this.ǃJfQ),this.ǃJfQ=-1))}ǃJSV(){return!!this.ǃOZU}ǃVO(re=this.ǃKP(),oe=0,ye=re.length){if(ǃJ.ǃUV(re),this.ǃOZU)return Promise.resolve("");this.ǃkE(),this.ǃkG();let Oe=this.ǃzF.ǃ_(),le=Oe.getBoundingClientRect(),Je=this.ǃJSy.getBoundingClientRect(),ue=Je.left-le.left,pe=Je.top-le.top+Oe.scrollTop;return this.ǃOZU=ǃJ.ǃU.ǃH("input",this.ǃzF.ǃ_(),null,"tree-edit-text"),this.ǃOZU.type="text",this.ǃOZU.style.left=`${ue}px`,this.ǃOZU.style.top=`${pe}px`,this.ǃOZU.style.width=`${Math.max(Je.right-Je.left,30)}px`,this.ǃOZU.style.maxWidth=`${Math.max(Je.right-Je.left,30)}px`,this.ǃOZU.style.height=`${Je.bottom-Je.top}px`,this.ǃOZU.setAttribute("spellcheck","false"),this.ǃJSf=()=>this.ǃJSK(),this.ǃOZU.addEventListener("blur",this.ǃJSf),this.ǃJSS=()=>this.ǃJSo(),this.ǃOZU.addEventListener("input",this.ǃJSS),this.ǃJOf=he=>this.ǃJSe(he),this.ǃOZU.addEventListener("keydown",this.ǃJOf,!0),this.ǃzF.ǃ_().addEventListener("scroll",this.ǃJSn,{ǃgO:!0}),this.ǃOZU.value=re,this.ǃOZU.focus(),this.ǃOZU.setSelectionRange(oe,ye),this.ǃJSy.textContent=".",new Promise((he,ge)=>{this.ǃJSX=he,this.ǃJSR=ge})}ǃJSe(re){re.which===ǃJ.ǃCi.ǃCD?(re.preventDefault(),re.stopPropagation(),this.ǃJSK()):re.which===ǃJ.ǃCi.ǃiz&&(re.preventDefault(),re.stopPropagation(),this.ǃJSc())}ǃJSo(){this.ǃJSy.textContent=this.ǃOZU.value;let re=this.ǃJSy.getBoundingClientRect();this.ǃOZU.style.width=`${Math.max(re.right-re.left,30)}px`,this.ǃJSy.textContent="."}ǃJSu(){this.ǃOZU.style.left=`${this.ǃJSy.offsetLeft}px`,this.ǃOZU.style.top=`${this.ǃJSy.offsetTop-this.ǃzF.ǃ_().scrollTop}px`;let re=this.ǃzF.ǃ_().getBoundingClientRect(),oe=this.ǃOZU.getBoundingClientRect();(oe.bottom>re.bottom+1||oe.topre.right+1)&&this.ǃJSc()}ǃJSr(){this.ǃOZU&&(this.ǃJSy.textContent=this.ǃtA,this.ǃzF.ǃ_().removeEventListener("scroll",this.ǃJSn,{ǃgO:!0}),this.ǃOZU.removeEventListener("keydown",this.ǃJOf,!0),this.ǃJOf=null,this.ǃOZU.removeEventListener("input",this.ǃJSS),this.ǃJSS=null,this.ǃOZU.removeEventListener("blur",this.ǃJSf),this.ǃJSf=null,ǃJ.ǃU.ǃHU(this.ǃOZU),this.ǃOZU=null)}ǃJSc(){this.ǃOZU&&(this.ǃJSr(),this.ǃJSX&&this.ǃJSX(null),this.ǃJSX=null,this.ǃJSR=null)}ǃJSK(){if(this.ǃOZU){let re=this.ǃOZU.value;this.ǃJSr(),this.ǃJSX&&this.ǃJSX(re),this.ǃJSX=null,this.ǃJSR=null,this.ǃkE()}}ǃkQ(){if(this.ǃex())throw new Error("cannot add checkbox to root item");this.ǃJfs||(this.ǃJfs=this.ǃqc().createElement("input"),this.ǃJfs.className="tree-checkbox",this.ǃJfs.type="checkbox",this.ǃJSO=()=>this.ǃJSI(),this.ǃJfs.addEventListener("change",this.ǃJSO),this.ǃJfd.insertBefore(this.ǃJfs,this.ǃJfd.firstChild))}ǃJSI(){this.ǃJSb(),this.ǃzF.ǃJfk(this,"itemcheckchange")}ǃkj(re){if(!this.ǃJfs)throw new Error(_262);this.ǃJfs.checked=!!re}ǃks(){if(!this.ǃJfs)throw new Error(_262);return!!this.ǃJfs.checked}ǃJfT(re){ǃJ.ǃXq(re),this.ǃJSg=re}ǃJSN(){return this.ǃJSg}static ǃJfE(re,oe){return re.ǃJSN()-oe.ǃJSN()}ǃNa(){return{name:this.ǃKP(),expanded:this.ǃKd(),children:[...this.children()].map(re=>re.ǃNa())}}ǃNF(re){if(re){this.ǃBz=!0,this.ǃoY(re.expanded);let oe=[...this.children()];if(oe.length){const ye=Math.min(re.children.length,oe.length);for(let Oe=0;Oethis.ǃJyj&&(this.ǃJyj=app.ǃi()),this.ǃJSD=oe.itemType,this.ǃJSi=oe.ǃJSG,this.ǃJyW=!!oe.ǃVI,this.ǃJSa=[],this.ǃJys=new Set,this.ǃJSp=[],re&&"ui-iconview"===re.tagName.toLowerCase()?(this.ǃOFZ=re.parentElement,this.ǃNZ=re):(this.ǃOFZ=re,this.ǃNZ=ǃJ.ǃU.ǃH("ui-iconview",this.ǃOFZ)),this.ǃNZ.setAttribute(this.ǃJSi,""),this.ǃZE=ye=>this.ǃaS(ye),this.ǃNZ.addEventListener(_265,this.ǃZE),this.ǃNZ.setAttribute("tabindex",0),this.ǃOsZ=()=>this.ǃJyh(),this.ǃOsl=()=>this.ǃJyv(),this.ǃNZ.addEventListener("focus",this.ǃOsZ),this.ǃNZ.addEventListener("blur",this.ǃOsl),this.ǃlv=ye=>this.ǃi$(ye),this.ǃJSw="",this.ǃJSY=null,this.ǃgn=new ǃJ.ǃgX(()=>this.ǃJSQ(),100),this.ǃgn.ǃqf(!0),this.ǃJSj=!1,this.ǃJSF=ǃJ.ǃU.ǃH("div",null,null,"iconViewNoSearchResults"),this.ǃJSW=!1,this.ǃJSZ=ǃJ.ǃU.ǃH("div",this.ǃNZ,null,"iconViewNoItems"),this.ǃJSZ.textContent=oe.ǃJSE||lang("ui.controls.icon-view.no-items-showing"),this.ǃJSl=!0,this.ǃOlK=null}ǃyY(){this.ǃbi(),this.ǃqc().removeEventListener("keydown",this.ǃlv),this.ǃlv=null,this.ǃJSY=null,this.ǃgn.ǃyY(),this.ǃgn=null,this.ǃNZ.removeEventListener(_265,this.ǃZE),this.ǃZE=null,ǃJ.ǃU.ǃHU(this.ǃJSZ),this.ǃJSZ=null,ǃJ.ǃU.ǃHU(this.ǃJSF),this.ǃJSF=null,this.ǃNZ.removeEventListener("focus",this.ǃOsZ),this.ǃNZ.removeEventListener("blur",this.ǃOsl),this.ǃOsZ=null,this.ǃOsl=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃOFZ=null,super.ǃyY()}ǃAM(re){ǃJ.ǃLA(re),this.ǃOFZ!==re&&(this.ǃOFZ&&this.ǃOFZ.removeChild(this.ǃNZ),this.ǃOFZ=re,this.ǃOFZ.appendChild(this.ǃNZ))}ǃqc(){return this.ǃNZ.ownerDocument}ǃJSx(re){if(ǃJ.ǃk(re,ǃJ.ǃU.ǃUu.ǃJSA),re.ǃJSh()!==this)throw new Error("item from different icon view")}ǃbi(){for(let re of this.ǃJSp)re.ǃih();ǃJ.ǃXX(this.ǃJSp);for(let re of this.ǃJSa)re.ǃih();ǃJ.ǃXX(this.ǃJSa),this.ǃJys.clear(),this.ǃJSv()}ǃJSP(re){this.ǃJSx(re),re.ǃih(),this.ǃJSa.splice(this.ǃJSa.indexOf(re),1),this.ǃJSv()}ǃJfb(){return this.ǃJyj}ǃJSd(){return this.ǃJSi}ǃJfq(){return this.ǃJyW}ǃJSs(re){re=!!re;this.ǃJyW===re||(!re&&this.ǃoe(),this.ǃJyW=re)}ǃ_(){return this.ǃNZ}ǃoH(){return this.ǃOFZ}ǃfu(){return this.ǃJSa}ǃJnO(){return this.ǃJSa.length}ǃJnJ(re){return ǃJ.ǃXq(re),re=Math.floor(re),0>re||re>=this.ǃJSa.length?null:this.ǃJSa[re]}ǃJny(){return ǃJ.ǃUe(this.ǃfu())}ǃJnf(re){this.ǃJSx(re);let oe=this.ǃJnS(re)-1;return ǃJ.ǃOrD(oe,this.ǃJSa)?this.ǃJSa[oe]:null}ǃJnn(re){this.ǃJSx(re);let oe=this.ǃJnS(re)+1;return ǃJ.ǃOrD(oe,this.ǃJSa)?this.ǃJSa[oe]:null}ǃJnX(){return this.ǃJSD===_263?ǃJ.ǃU.ǃUu.ǃJSA:this.ǃJSD===_264?ǃJ.ǃU.ǃUu.ǃJnR:void 0}ǃJng(re){ǃJ.ǃ$V(re);for(let oe of this.ǃJSa)if(re(oe))return oe;return null}ǃJnH(){this.ǃJSa.reverse();let re=this.ǃNZ.firstChild;for(let oe=this.ǃNZ.children.length-1,ye;0re||re>=this.ǃJSa.length)throw new Error(_266);if(0>oe||oe>=this.ǃJSa.length)throw new Error(_266);if(re!==oe){let ye=this.ǃJSa[re],Oe=ye.ǃ_();this.ǃNZ.removeChild(Oe);let le=this.ǃJSa[oe],Je=le.ǃ_();reOe)){if(oe===ǃJ.ǃCi.ǃz$)do--Oe;while(0<=Oe&&this.ǃJSa[Oe].ǃZx());else if(oe===ǃJ.ǃCi.ǃzq)do++Oe;while(Oele.right)&&(1==Je&&Ze.top>le.bottom||-1==Je&&Ze.bottomOe||Oe>=this.ǃJSa.length||(this.ǃJSa[Oe].ǃkE(),this.ǃJSa[Oe].ǃrw(),re.preventDefault())}}}}ǃaS(re){re.target!==this.ǃNZ||ǃJ.ǃeh.ǃaG(re)||re.shiftKey||this.ǃoe()}ǃJfk(re,oe){this.ǃJSx(re),ǃJ.ǃJO(oe);let ye=new ǃJ.Event(oe,!0);return ye.item=re,this.dispatchEvent(ye)}ǃgY(re,oe){this.ǃJSx(re);let ye=new ǃJ.Event("itemcontextmenu",!0);return ye.item=re,ye.clientX=oe.clientX,ye.clientY=oe.clientY,this.dispatchEvent(ye)}ǃJnS(re){return this.ǃJSx(re),this.ǃJSa.indexOf(re)}ǃJnu(re){return this.ǃJSx(re),Array.prototype.indexOf.call(this.ǃNZ.children,re.ǃ_())}ǃJn_(re,oe,ye){this.ǃJSx(re),ǃJ.ǃXq(oe),ǃJ.ǃJO(ye);let Oe=this.ǃJSa;if(0>oe||oe>=Oe.length)throw new Error("new index is out of bounds");if(!te.includes(ye))throw new Error(`invalid position, '${ye}' was used. Only ${te.toString()} are valid positions.`);let le=this.ǃJSa[oe];this.ǃ_().removeChild(re.ǃ_()),"left"===ye&&this.ǃ_().insertBefore(re.ǃ_(),le.ǃ_()),"right"===ye&&le.ǃ_().parentNode.insertBefore(re.ǃ_(),le.ǃ_().nextSibling);let Je=this.ǃJnS(re),ue=0;return oe>Je?("left"===ye&&(ue=0Oe?this.ǃJSa.unshift(Je):this.ǃJSa.splice(Oe,0,Je):this.ǃJSa.push(Je),this.ǃJSv(),Je}ǃjk(re){if(ǃJ.ǃJO(re),this.ǃJSD===_264)throw new Error("not yet implemented: groups for sortable icon views");let oe=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJnt,this,re);return this.ǃJSp.push(oe),this.ǃJSv(),oe}ǃJn$(re,oe){ǃJ.ǃJO(re),ǃJ.ǃBA(oe),this.ǃJSj=!1,oe&&(this.ǃJSj=!!oe.ǃJnq),this.ǃJSw=re,this.ǃJSY=null,this.ǃgn.ǃHp()}ǃJnM(re,oe,ye){ǃJ.ǃ$V(re),ǃJ.ǃUV(oe),ǃJ.ǃBA(ye),this.ǃJSj=!1,ye&&(this.ǃJSj=!!ye.ǃJnq),this.ǃJSw=oe||"",this.ǃJSY=re,this.ǃgn.ǃHp()}ǃJSQ(){let re=this.ǃJSw.toLowerCase(),oe=!1,ye=this.ǃJSY,Oe=!0;for(let le of this.ǃfu())if(ye){let Je=ye(le);le.ǃZl(!Je),Je&&(Oe&&(this.ǃJSj&&le.ǃkE(),Oe=!1),oe=!0)}else if(re){let Je=le.ǃJnB(re);le.ǃZl(!Je),Je&&(Oe&&(this.ǃJSj&&le.ǃkE(),Oe=!1),oe=!0)}else le.ǃZl(!1),oe=!0;this.ǃJnL(!oe),this.ǃJSY=null}ǃJSv(){let re=!this.ǃJSa.length&&!this.ǃJSp.length;this.ǃJSl===re||(this.ǃJSl=re,this.ǃJSl?this.ǃNZ.appendChild(this.ǃJSZ):ǃJ.ǃU.ǃHU(this.ǃJSZ))}ǃJnL(re){return this.ǃJSl?void 0:this.ǃJSW===re?void(this.ǃJSW&&(this.ǃJSY&&!this.ǃJSw?this.ǃJSF.textContent=lang(_267):this.ǃJSF.textContent=ǃCM(_268,this.ǃJSw))):void(this.ǃJSW=re,this.ǃJSW?(this.ǃNZ.appendChild(this.ǃJSF),this.ǃJSF.textContent=this.ǃJSY&&!this.ǃJSw?lang(_267):ǃCM(_268,this.ǃJSw)):ǃJ.ǃU.ǃHU(this.ǃJSF))}}}{const _269="UIPointerUp",_270="UIPointerDown",_271="UIPointerMove",_272="ui-iconviewitem";ǃJ.ǃU.ǃUu.ǃJSA=class extends ǃJ.ǃq{constructor(te,ne,ie,ae,de,re){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJST),ǃJ.ǃq$(ne,ǃJ.ǃU.ǃ$B),ǃJ.ǃJO(ie),ǃJ.ǃaB(de),ǃJ.ǃq$(re,ǃJ.ǃU.ǃUu.ǃJnt),super(),this.ǃJnz=te,this.ǃOdu=ne||null,this.ǃtA=ie,this.ǃOAu=ae,this.ǃZG=!1,this.ǃJnk=re,this.ǃJnV=!1,this.ǃwT=-1,this.ǃwD=0,this.ǃwi=0,this.ǃOlK=null,this.ǃNZ=null,this.ǃNZ=ǃJ.ǃLR(de)?ǃJ.ǃU.ǃH(_272,this.ǃJnz.ǃ_(),null,null,null,de):ǃJ.ǃU.ǃH(_272,this.ǃJnk?this.ǃJnk.ǃJnK():this.ǃJnz.ǃ_()),this.ǃUv=ǃJ.ǃU.ǃH("div",this.ǃNZ,null,"iconViewItemWrap"),this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,this.ǃOdu||this.ǃJnz.ǃJfb(),this.ǃUv),this.ǃJSy=ǃJ.ǃU.ǃH("span",this.ǃUv,null,"iconViewItemText"),this.ǃJSy.textContent=this.ǃtA,this.ǃZT=()=>this.ǃJnz.ǃJfk(this,"itemdoubletap"),this.ǃNZ.addEventListener("UIDoubleTap",this.ǃZT),this.ǃZD=oe=>this.ǃzA(oe),this.ǃNZ.addEventListener("contextmenu",this.ǃZD),this.ǃZE=oe=>this.ǃaS(oe),this.ǃNZ.addEventListener(_270,this.ǃZE),this.ǃYO=oe=>this.ǃYJ(oe),this.ǃYy=oe=>this.ǃaH(oe)}ǃih(){this.ǃQa(!1),this.ǃNZ.removeEventListener(_270,this.ǃZE),this.ǃZE=null,this.ǃqc().removeEventListener(_271,this.ǃYO),this.ǃYO=null,this.ǃqc().removeEventListener(_269,this.ǃYy),this.ǃYy=null,this.ǃNZ.removeEventListener("UIDoubleTap",this.ǃZT),this.ǃZT=null,this.ǃNZ.removeEventListener("contextmenu",this.ǃZD),this.ǃZD=null,ǃJ.ǃU.ǃHU(this.ǃJSy),this.ǃJSy=null,this.ǃ$q.ǃyY(),this.ǃ$q=null,ǃJ.ǃU.ǃHU(this.ǃUv),this.ǃUv=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,this.ǃJnz=null,this.ǃOdu=null,this.ǃOAu=null,ǃJ.ǃyY(this)}ǃqc(){return this.ǃNZ.ownerDocument}ǃGl(){return this.ǃqc().defaultView}ǃ$r(te){ǃJ.ǃk(te,ǃJ.ǃU.ǃ$B),this.ǃ$q.ǃ$r(te)}ǃIe(te){ǃJ.ǃ$V(te),this.ǃ$q.ǃIe(te)}ǃNb(){this.ǃ$q.ǃNb()}ǃaS(te){let ne=te.detail;ne.ǃTd!==ǃJ.ǃDO.ǃaa||(this.ǃOQh(),this.ǃNZ.setAttribute("pointerheld",""),this.ǃqc().addEventListener(_271,this.ǃYO),this.ǃqc().addEventListener(_269,this.ǃYy),this.ǃwT=ne.id,this.ǃwD=ne.clientX,this.ǃwi=ne.clientY)}ǃYJ(te){let ne=te.detail;ne.id!==this.ǃwT}ǃaH(te){let ne=te.detail;if(ne.id===this.ǃwT){if(this.ǃNZ.removeAttribute("pointerheld",""),this.ǃqc().removeEventListener(_271,this.ǃYO),this.ǃqc().removeEventListener(_269,this.ǃYy),this.ǃJnz.ǃJfk(this,"itemclick"),this.ǃJnz.ǃJfq()){let ie=ǃJ.ǃeh.ǃaG(),ae=ǃJ.ǃeh.ǃeA(ǃJ.ǃCi.ǃev);if(ie)return void this.ǃQa(!this.ǃoB())}this.ǃJno(ne.clientX,ne.clientY)&&this.ǃkE()}}ǃkE(){this.ǃoB()&&1===this.ǃJnz.ǃeZ()||(this.ǃJnz.ǃoe(),this.ǃQa(!0))}ǃrh(){this.ǃQa(!1)}ǃoB(){return this.ǃZG}ǃQa(te){te=!!te;this.ǃZG===te||(te?(this.ǃJnz.ǃJfk(this,"beforeitemselect"),this.ǃNZ.setAttribute("selected",""),this.ǃJnz.ǃJfz(this)):(this.ǃNZ.removeAttribute("selected"),this.ǃJnz.ǃJfV(this)),this.ǃZG=te)}ǃ_(){return this.ǃNZ}ǃJSh(){return this.ǃJnz}ǃOhj(te){this.ǃOAu=te}ǃHc(){return this.ǃOAu}ǃXt(){return this.ǃOlK}ǃRa(te){ǃJ.ǃJO(te);this.ǃtA===te||(this.ǃtA=te,this.ǃJSy.textContent=this.ǃtA)}ǃKP(){return this.ǃtA}ǃZl(te){te=!!te;this.ǃJnV===te||(this.ǃJnV=te,this.ǃJnV?(this.ǃQa(!1),this.ǃNZ.setAttribute("hidden",""),this.ǃJnk&&this.ǃJnk.ǃJne(this,!0)):(this.ǃNZ.removeAttribute("hidden"),this.ǃJnk&&this.ǃJnk.ǃJne(this,!1)))}ǃZx(){return this.ǃJnV}ǃrw(){ǃJ.ǃU.ǃrw(this.ǃNZ,this.ǃJnz.ǃ_())}ǃJnB(te){return this.ǃtA.toLowerCase().includes(te)}ǃOQh(){this.ǃOlK=this.ǃNZ.getBoundingClientRect()}ǃzA(te){this.ǃkE(),this.ǃJnz.ǃgY(this,te)||(te.preventDefault(),te.stopPropagation())}ǃJno(te,ne){if(ǃJ.ǃXq(te),ǃJ.ǃXq(ne),!this.ǃOlK)return!1;let ie=this.ǃOlK;return te>=ie.left&&ne>=ie.top&&te=Ue.left&&be>=Ue.top&&ve=Ue.left&&ve<=Ue.left+Ue.width/2?"left":"right"}ǃJnG(){let ve=this.ǃ_();ve.removeAttribute(_274),ve.removeAttribute(_273)}static ǃJnI(ve,be){if(ǃJ.ǃXq(ve),ǃJ.ǃXq(be),oe){let Ue=-pe+ve-ge-ue.width/2,Ee=-he+be-ge-ue.height/2,Le=ǃJ.ǃOrZ(oe,"dialog");if(Le){let we=ǃJ.ǃU.ǃOR.ǃOWC(Le);Ue-=we.ǃnK(),Ee-=we.ǃne()}oe.style.transform=`translateX(${Ue}px) translateY(${Ee}px)`}}static ǃJna(ve){ǃJ.ǃLA(ve);let be=ǃJ.ǃU.ǃOnl(["border-width","border-left-width","border-right-width","border-bottom-width","border-top-width"],{ǃgx:ve});if(!be.endsWith("px"))throw new Error("CSS style for menu border-width must be in units of 'px'");return parseFloat(be)||0}static ǃJnr(ve,be){ǃJ.ǃJO(ve);let Ue=new ǃJ.Event(ve);Ue.item=be,be.ǃJSh().dispatchEvent(Ue)}static ǃJnE(ve,be,Ue){ǃJ.ǃXq(ve),ǃJ.ǃXq(be),ǃJ.ǃk(Ue,ǃJ.ǃU.ǃUu.ǃJSA);let Ee=new ǃJ.Event("itemsorted");Ee.ǃJnp=ve,Ee.ǃJnw=be,Ee.item=Ue,Ue.ǃJSh().dispatchEvent(Ee)}}}"use strict",ǃJ.ǃU.ǃUu.ǃJnt=class extends ǃJ.ǃq{constructor(te,ne){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJST),ǃJ.ǃJO(ne),super(),this.ǃJnz=te,this.ǃOYj=ne,this.ǃxD=ǃJ.ǃU.ǃH("div",this.ǃJnz.ǃ_(),null,"iconview-group"),this.ǃxp=ǃJ.ǃU.ǃH("div",this.ǃxD,null,"iconview-grouptitle"),this.ǃhi=ǃJ.ǃU.ǃH("span",this.ǃxp,null,"iconview-groupname"),this.ǃJnY=ǃJ.ǃU.ǃH("span",this.ǃxp,null,"iconview-grouprule"),this.ǃJnQ=ǃJ.ǃU.ǃH("div",this.ǃxD,null,"iconview-groupcontent"),this.ǃJSa=[],this.ǃJnj=0,this.ǃJnV=!1,this.ǃhi.textContent=this.ǃOYj}ǃJnK(){return this.ǃJnQ}ǃih(){ǃJ.ǃXX(this.ǃJSa),ǃJ.ǃU.ǃHU(this.ǃJnQ),this.ǃJnQ=null,ǃJ.ǃU.ǃHU(this.ǃJnY),this.ǃJnY=null,ǃJ.ǃU.ǃHU(this.ǃhi),this.ǃhi=null,ǃJ.ǃU.ǃHU(this.ǃxp),this.ǃxp=null,ǃJ.ǃU.ǃHU(this.ǃxD),this.ǃxD=null,this.ǃJnz=null,ǃJ.ǃyY(this)}ǃw(te,ne,ie,ae){let de=this.ǃJnz.ǃw(te,ne,ie,ae,this);return this.ǃJSa.push(de),de}ǃJne(te,ne){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJSA),ne=!!ne,ne?this.ǃJnj++:this.ǃJnj--,this.ǃZl(this.ǃJnj===this.ǃJSa.length)}ǃZl(te){te=!!te;this.ǃJnV===te||(this.ǃJnV=te,ǃJ.ǃU.ǃrx(this.ǃxD,"hidden",this.ǃJnV))}ǃZx(){return this.ǃJnV}},"use strict";{const _276="vertical",_277="horizontal",_278="--parent-x-offset",_279="--parent-y-offset",_280="ui-toolbar-container",_281="ui-toolbar-remaining-space",_282="ui-toolbar-container[level='0']",ee={wrap:!0};ǃJ.ǃU.ǃJF=class extends ǃJ.Event.ǃU_{constructor(ne,ie){ǃJ.ǃLA(ne),ǃJ.ǃiE(ie),super(),ie=Object.assign({},ee,ie),this.ǃOFZ=ne,this.ǃJnF=[],this.ǃJnW=new Map,this.ǃJnZ=!1,this.ǃJnl=null,this.ǃiD=ie,this.ǃOFZ.style.display="flex"}ǃyY(){for(let ne=0;ne{ǃJ.ǃU.ǃHU(ne)}),Array.prototype.forEach.call(this.ǃOFZ.getElementsByTagName(_280),ne=>{ǃJ.ǃU.ǃHU(ne)}),this.ǃOFZ.style.display="",this.ǃOFZ=null,this.ǃJnF=null,this.ǃJnl=null,this.ǃJnW=null,super.ǃyY()}ǃLY(){return this.ǃJnl}ǃEW(){if(!this.ǃOFZ)throw new Error("missing parent element");let ne=this.ǃOFZ.querySelector(_282);if(!ne)throw new Error("missing root container element");return ne}ǃJP(ne,ie,ae){ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),ǃJ.ǃCl(ae);let de=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJnA,this,this.ǃOFZ,ne,ie,_277,"required",this.ǃiD);return this.ǃJnF.push(de),this.ǃJnZ=!0,this.ǃJnh(de,ae),de}ǃJnv(ne,ie,ae){ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),ǃJ.ǃCl(ae);let de=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJnA,this,this.ǃOFZ,ne,ie,_276,"required",this.ǃiD);return this.ǃJnF.push(de),this.ǃJnZ=!0,this.ǃJnh(de,ae),de}ǃJnP(ne,ie,ae){ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),ǃJ.ǃCl(ae);let de=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJnA,this,this.ǃOFZ,ne,ie,_277,"optional",this.ǃiD);this.ǃJnW.set(ne,de),this.ǃJnh(de,ae)}ǃJnd(ne,ie,ae){ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),ǃJ.ǃCl(ae);let de=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃJnA,this,this.ǃOFZ,ne,ie,_276,"optional",this.ǃiD);this.ǃJnW.set(ne,de),this.ǃJnh(de,ae)}ǃJns(ne,ie){ǃJ.ǃJO(ne),ie=!!ie;let ae=this.ǃJnW.get(ne);if(assert(ae,"optional toolbar is not present in this toolbar layout"),ie){if(-1!==this.ǃJnF.indexOf(ae))return;this.ǃJnF.push(ae)}else{if(-1===this.ǃJnF.indexOf(ae))return;this.ǃJnF.splice(this.ǃJnF.indexOf(ae),1)}ae.ǃJX(ie),this.ǃJnZ=!0}ǃJXO(ne){ne=!!ne;for(let ie of this.ǃJnW.keys())this.ǃJns(ie,ne)}ǃJXJ(){for(let ne=0,ie;nethis.ǃYc(le),this.ǃNZ.addEventListener("scroll",this.ǃJXT)),this.ǃJX(!1),this.ǃJXi=0,this.ǃlY=0}ǃyY(){this.ǃNZ.removeEventListener("scroll",this.ǃJXT),this.ǃJXT=null;for(let ie=0;iethis.ǃJOv(de),this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-color-picker",this.ǃJXs.ǃ_()),this.ǃJRR=ǃJ.ǃU.ǃH("input",this.ǃNZ,null,null,{type:"color"}),this.ǃJRR.addEventListener("change",this.ǃJRX),this.ǃOau=ǃJ.ǃU.ǃH("span",this.ǃNZ),this.ǃOau.innerHTML=this.ǃJRR.value,this.ǃJRf()}ǃyY(){this.ǃJRR.removeEventListener("change",this.ǃJRX),ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃOau),this.ǃJRX=null,this.ǃJRR=null,this.ǃOau=null,super.ǃyY()}ǃ$D(ne){ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("color")&&ǃJ.ǃLX(ne.color)&&(this.ǃJRR.value=ne.color)}ǃHH(){}ǃJXX(){this.ǃJRg()}ǃJXv(){}ǃJOv(){this.ǃOau.innerHTML=this.ǃJRR.value,this.ǃJRg()}ǃJRg(){let ne=new ǃJ.Event("colorchange");ne.ǃJRH=this.ǃJXs.ǃJXn(),ne.ǃJRU=this.ǃOmx.toLowerCase(),ne.color=this.ǃJRR.value,this.ǃJXs.ǃJXw().dispatchEvent(ne),this.ǃJRS(this.ǃJRR.value)}}}{const _286="sliderinput",ee=["min","max","step","value","label"];ǃJ.ǃU.ǃUu.ǃJnA.ǃJXj=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ne,ie,ae,de,re,oe,ye,Oe,le){ǃJ.ǃXq(ae),ǃJ.ǃXq(de),ǃJ.ǃXq(re),ǃJ.ǃaB(oe),ǃJ.ǃUV(ye),super(ne,ie,Oe),this.ǃJRC=ae,this.ǃJRu=de,this.ǃJR_=re?re:1,this.ǃJRm=oe?oe:0,this.ǃJRb=this.ǃJRm,this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-slider",this.ǃJXs.ǃ_()),this.ǃJRR=ǃJ.ǃU.ǃH("input",this.ǃNZ,null,null,{type:"range",min:ae.toString(),max:de.toString(),step:this.ǃJR_.toString(),value:this.ǃJRm.toString()}),this.ǃJRc=ǃJ.ǃU.ǃH("input",this.ǃNZ,null,null,{type:"number",min:ae.toString(),max:de.toString(),value:this.ǃJRR.value.toString()}),this.ǃOau=ǃJ.ǃU.ǃH("span"),le?(this.ǃOau.setAttribute("side","right"),this.ǃNZ.appendChild(this.ǃOau)):(this.ǃOau.setAttribute("side","left"),this.ǃNZ.insertBefore(this.ǃOau,this.ǃJRR)),this.ǃOau.textContent=ye?ye:ie.charAt(0).toUpperCase()+ie.slice(1),this.ǃJT=null,this.ǃJRt=null,this.ǃJR$(),this.ǃJRq(),this.ǃJRf()}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃOau),ǃJ.ǃU.ǃHU(this.ǃJRc),this.ǃJT&&(this.ǃJT.ǃuO(),this.ǃJT=null),this.ǃJRt&&(this.ǃJRt.ǃuO(),this.ǃJRt=null),this.ǃJRR=null,this.ǃOau=null,this.ǃJRc=null,super.ǃyY()}ǃ$D(ne){if(ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("min")&&ǃJ.ǃLR(ne.min)&&(this.ǃJRC=ne.min,this.ǃJRR.min=this.ǃJRC.toString(),this.ǃJRc.min=this.ǃJRC.toString()),ne.hasOwnProperty("max")&&ǃJ.ǃLR(ne.max)&&(this.ǃJRu=ne.max,this.ǃJRR.max=this.ǃJRu.toString(),this.ǃJRc.max=this.ǃJRC.toString()),ne.hasOwnProperty("step")&&ǃJ.ǃLR(ne.step)&&(this.ǃJRR.step=ne.step.toString()),ne.hasOwnProperty("value")&&ǃJ.ǃLR(ne.value)){let ie=ne.value.toString();this.ǃJRR.value=ie,this.ǃJRc.value=ie}ne.hasOwnProperty("label")&&ǃJ.ǃLX(ne.label)&&(this.ǃJRR.label=ne.label)}ǃHH(){}ǃJXX(){this.ǃJRM("sliderchange")}ǃJXv(){}ǃJR$(){this.ǃJT=ǃJ.ǃb(ǃJ.ǃJD,ǃJ.ǃJa.ǃJi(this.ǃJRR,"input change",ne=>this.ǃJRB(ne)),ǃJ.ǃJa.ǃJi(this.ǃJRc,"keypress",ne=>this.ǃJRL(ne)),ǃJ.ǃJa.ǃJi(this.ǃJRc,"change input",ne=>this.ǃJRz(ne)),ǃJ.ǃJa.ǃJi(this.ǃJRc,"blur",()=>this.ǃJyv()))}ǃJRq(){this.ǃJRt=ǃJ.ǃOwF(this.ǃJRc)}ǃJRB(ne){this.ǃJRc.value=this.ǃJRR.value,this.ǃJRb=+this.ǃJRR.value,"change"===ne.type&&this.ǃJRM("sliderchange"),"input"===ne.type&&this.ǃJRM(_286)}ǃJRL(ne){ne.key.match(/[0-9.e\-]/)||ne.preventDefault()}ǃJRz(){let ie=this.ǃJRc.value;if(ie.length&&(ie=+ie,!isNaN(ie))){let ae=this.ǃJRk(),de=this.ǃJRV();if((ie>de||iethis.ǃJRB(ie)),ǃJ.ǃJa.ǃJi(this.ǃJRc,"keypress",ie=>this.ǃJRL(ie)),ǃJ.ǃJa.ǃJi(this.ǃJRc,"change input",ie=>this.ǃJRz(ie)))}ǃJRN(ie){ǃJ.ǃCl(ie),assert(ie.length,"no steps defined for the step slider"),ǃJ.ǃXX(this.ǃJRI);let ae=0;for(var de=0;de=re.ǃJRi,"percentage slice of a step can not be larger than 100%"),assert(0re||ae=ae.ǃJRa&&ie<=ae.ǃJRp)return ae}ǃJRY(){let ie=this.ǃJRc.value;for(let ae of this.ǃJRI)if(ie>=ae.ǃJRG&&ie<=ae.ǃJRE)return ae}ǃJRQ(ie){for(let ae=0,de;aethis.ǃJRh(ge),this.ǃiQ=ge=>this.ǃJRv(ge),this.ǃJRP=()=>{},this.ǃJRd=ge=>this.ǃJRs(ge),this.ǃJgO=ge=>this.ǃJgJ(ge)),"check"===Je&&(this.ǃiw=ge=>this.ǃJgy(ge),this.ǃiQ=()=>{},this.ǃJRP=ge=>this.ǃJgf(ge),this.ǃJRd=ge=>this.ǃJgS(ge),this.ǃJgO=ge=>this.ǃJgn(ge)),this.ǃJgX=ge=>this.ǃzA(ge),this.ǃJgR=ge=>this.ǃJgg(ge),this.ǃNZ.addEventListener(_297,this.ǃiw),this.ǃNZ.addEventListener(_296,this.ǃiQ),this.ǃNZ.addEventListener(_296,this.ǃJRP),this.ǃNZ.addEventListener("contextmenu",this.ǃJgX),this.ǃNZ.addEventListener(_292,this.ǃJRd),this.ǃNZ.addEventListener(_293,this.ǃJgO),this.ǃJRf()}ǃyY(){this.ǃNZ.removeEventListener(_297,this.ǃiw),this.ǃNZ.removeEventListener(_296,this.ǃiQ),this.ǃNZ.removeEventListener(_296,this.ǃJRP),this.ǃNZ.removeEventListener(_292,this.ǃJRd),this.ǃNZ.removeEventListener(_293,this.ǃJgO),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃ$q.ǃyY(),this.ǃ$q=null,this.ǃiw=null,this.ǃiQ=null,this.ǃJRd=null,this.ǃJgO=null,clearTimeout(this.ǃJRZ),this.ǃJRZ=-1,clearTimeout(this.ǃJRl),this.ǃJRl=-1,super.ǃyY()}ǃ$D(oe){ǃJ.ǃLH(oe),this.ǃJRn(oe,ee)}ǃHH(){this.ǃNZ.removeAttribute(_295),this.ǃNZ.removeAttribute(_294),this.ǃJRF&&!this.ǃJRx&&(this.ǃJRF=!1,this.ǃNZ.addEventListener(_296,this.ǃiQ),this.ǃNZ.addEventListener(_292,this.ǃJRd),this.ǃNZ.addEventListener(_293,this.ǃJgO)),clearTimeout(this.ǃJRZ),this.ǃJRZ=-1,clearTimeout(this.ǃJRl),this.ǃJRl=-1}ǃJXX(){}ǃJXv(oe=!0){if(oe=!!oe,!this.ǃJRF){if("click"===this.ǃOiD){if(this.ǃJRA)return;this.ǃNZ.setAttribute(_295,""),this.ǃJRl=setTimeout(()=>{this.ǃNZ.removeAttribute(_295,""),oe&&this.ǃJgH(),this.ǃJRA=!1},100),this.ǃJRA=!0}"check"===this.ǃOiD&&this.ǃJgU(oe),this.ǃNZ.removeEventListener(_296,this.ǃiQ),this.ǃNZ.removeEventListener(_292,this.ǃJRd),this.ǃNZ.removeEventListener(_293,this.ǃJgO)}}ǃJRh(oe){this.ǃJXs.ǃJXd(),de=oe.detail.ǃOS$;!de&&oe.detail.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃJRA||(this.ǃJRW=!1,this.ǃNZ.setAttribute(_295,""))}ǃJRv(oe){(de||oe.detail.ǃTd===ǃJ.ǃDO.ǃaa)&&this.ǃNZ.hasAttribute(_295)&&!this.ǃJRA&&(!this.ǃJRW&&!this.ǃJXs.ǃJXP()&&this.ǃJgH(),this.ǃNZ.removeAttribute(_295))}ǃJRs(){de||this.ǃJRA||(this.ǃNZ.removeAttribute(_295),this.ǃNZ.removeAttribute(_294))}ǃJgJ(){de||this.ǃJRA||this.ǃNZ.setAttribute(_294,"")}ǃJgy(oe){this.ǃJXs.ǃJXd(),de=oe.detail.ǃOS$,this.ǃJRW=!1;(de||oe.detail.ǃTd===ǃJ.ǃDO.ǃaa)&&-1===this.ǃJRZ&&(de?this.ǃJRZ=setTimeout(this.ǃJgR,1e3):this.ǃJRZ=setTimeout(this.ǃJgR,5))}ǃJgf(){-1!==this.ǃJRZ&&(clearTimeout(this.ǃJRZ),this.ǃJRZ=-1,this.ǃJgU())}ǃJgS(){this.ǃNZ.removeAttribute(_295),this.ǃNZ.removeAttribute(_294)}ǃJgn(){de||this.ǃNZ.setAttribute(_294,"")}ǃzA(oe){oe.preventDefault();this.ǃJXs.ǃJXP()||(this.ǃJRW=!0,this.ǃJgC(oe))}ǃJgU(oe=!0){this.ǃJRW||this.ǃJXs.ǃJXP()||(this.ǃJRx=!0,this.ǃJRF=!this.ǃJRF,oe&&this.ǃJgu(),this.ǃJRF?(this.ǃNZ.setAttribute(_295,""),this.ǃNZ.removeAttribute(_294),this.ǃNZ.removeEventListener(_296,this.ǃiQ),this.ǃNZ.removeEventListener(_292,this.ǃJRd),this.ǃNZ.removeEventListener(_293,this.ǃJgO)):(this.ǃNZ.removeAttribute(_295),!de&&this.ǃNZ.setAttribute(_294,""),this.ǃNZ.addEventListener(_296,this.ǃiQ),this.ǃNZ.addEventListener(_292,this.ǃJRd),this.ǃNZ.addEventListener(_293,this.ǃJgO)),this.ǃJRx=!1)}ǃJgg(){this.ǃJgU(),this.ǃJRZ=-1}ǃJgH(){let oe=new ǃJ.Event("click");oe.ǃJRH=this.ǃJXs.ǃJXn(),oe.ǃTX=this.ǃOmx,this.ǃJXs.ǃJXw().dispatchEvent(oe),this.ǃJRS()}ǃJgu(){let oe=new ǃJ.Event("check");oe.ǃJRH=this.ǃJXs.ǃJXn(),oe.ǃTX=this.ǃOmx,oe.checked=this.ǃJRF,this.ǃJXs.ǃJXw().dispatchEvent(oe),this.ǃJRS(this.ǃJRF)}ǃJgC(oe){let ye=new ǃJ.Event("buttoncontextmenu");ye.ǃJRH=this.ǃJXs.ǃJXn(),ye.ǃTX=this.ǃOmx,ye.clientX=oe.clientX,ye.clientY=oe.clientY,this.ǃJXs.ǃJXw().dispatchEvent(ye)}ǃ_(){return this.ǃNZ}}}{const ee=["checked"];ǃJ.ǃU.ǃUu.ǃJnA.ǃJXZ=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ne,ie,ae,de){ǃJ.ǃUV(ae),super(ne,ie,de),this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-checkbox",this.ǃJXs.ǃ_()),this.ǃJg_=ǃJ.ǃU.ǃH("div",this.ǃNZ,null,"checkboxWrapper"),this.ǃJRR=ǃJ.ǃU.ǃH("input",this.ǃJg_,null,null,{type:"checkbox"}),this.ǃJgm=()=>this.ǃJgu(this.ǃJRR.checked),this.ǃJgb=()=>{this.ǃJXv(),this.ǃJgm()},this.ǃOau=ǃJ.ǃU.ǃH("span",this.ǃNZ),this.ǃOau.innerHTML=ae?ae:ie.charAt(0).toUpperCase()+ie.slice(1),this.ǃJRR.addEventListener("change",this.ǃJgm),this.ǃOau.addEventListener("UIPointerUp",this.ǃJgb),this.ǃNZ.style.height=`${this.ǃJXs.ǃOdk()}px`;let re=this.ǃJXs.ǃOmD();re.wrap&&this.ǃNZ.setAttribute("wrap","")}ǃyY(){this.ǃJRR.removeEventListener("change",this.ǃJgm),this.ǃOau.removeEventListener("UIPointerUp",this.ǃJgb),ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃJg_),ǃJ.ǃU.ǃHU(this.ǃOau),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃJgm=null,this.ǃJXs=null,this.ǃNZ=null,this.ǃJg_=null,this.ǃJRR=null,this.ǃOau=null}ǃ$D(ne){ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("checked")&&(this.ǃJRR.checked=!!ne.checked)}ǃHH(){}ǃJXX(){this.ǃJgu()}ǃJXv(){this.ǃJRR.checked=!this.ǃJRR.checked}ǃJgu(){let ie=new ǃJ.Event("checkboxchecked");ie.ǃJRH=this.ǃJXs.ǃJXn(),ie.ǃJgc=this.ǃOmx,ie.checked=this.ǃJRR.checked,this.ǃJXs.ǃJXw().dispatchEvent(ie),this.ǃJRS(this.ǃJRR.checked)}}}{const _299="input",_300="spinnerchange",ee=["min","max","step","value","label"];ǃJ.ǃU.ǃUu.ǃJnA.ǃJXl=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ne,ie,ae,de,re,oe,ye,Oe,le){ǃJ.ǃaB(ae),ǃJ.ǃaB(de),ǃJ.ǃaB(re),ǃJ.ǃaB(oe),ǃJ.ǃUV(ye),super(ne,ie,Oe),this.ǃJRC=ae,this.ǃJRu=de,this.ǃJR_=re?re:1,this.ǃJRm=oe?oe:0,this.ǃJgt=null,this.ǃJg$=!0,this.ǃGc=!1,this.ǃJgq="",this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-spinner",this.ǃJXs.ǃ_());let Je={};Je.type="number",Je.step=this.ǃJR_.toString(),Je.value=this.ǃJRm.toString(),ǃJ.ǃLR(ae)&&(Je.min=ae.toString()),ǃJ.ǃLR(de)&&(Je.max=de.toString()),this.ǃJgM=Je,this.ǃJRR=ǃJ.ǃU.ǃH(_299,this.ǃNZ,null,null,this.ǃJgM),this.ǃJgB=null,this.ǃJgL=null,this.ǃJgz=ye||ie.charAt(0).toUpperCase()+ie.slice(1),this.ǃOau=document.createElement("span"),this.ǃOau.textContent=this.ǃJgz,le?this.ǃNZ.appendChild(this.ǃOau):this.ǃNZ.insertBefore(this.ǃOau,this.ǃJRR),this.ǃJgk=ue=>this.ǃJgV(ue),this.ǃJgK=ue=>this.ǃJgo(ue),this.ǃJge=ue=>this.ǃJgr(ue),this.ǃJgI=ue=>this.ǃJgN(ue),this.ǃJT=ǃJ.ǃb(ǃJ.ǃJD,ǃJ.ǃJa.ǃJi(this.ǃJRR,"focus",ue=>this.ǃJyh(ue)),ǃJ.ǃJa.ǃJi(this.ǃJRR,"UIPointerDown",ue=>this.ǃaS(ue)),ǃJ.ǃJa.ǃJi(this.ǃJRR,"UIPointerUp",ue=>this.ǃaH(ue)),ǃJ.ǃJa.ǃJi(this.ǃJRR,"change",this.ǃJgk),ǃJ.ǃJa.ǃJi(this.ǃJRR,_299,this.ǃJgK),ǃJ.ǃOwF(this.ǃJRR)),this.ǃJRf()}ǃJgG(){return+this.ǃJRR.value}ǃyY(){this.ǃJgE(),ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃOau),this.ǃJT.ǃuO(),this.ǃJT=null,this.ǃJgL&&this.ǃJgL.ǃuO(),this.ǃJgL=null,this.ǃJRR=null,this.ǃOau=null,super.ǃyY()}ǃ$D(ne){if(ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("min")&&ǃJ.ǃLR(ne.min)){let ie=ne.min;this.ǃJRC=ie,this.ǃJgM.min=ie.toString(),this.ǃJRR.min=ie.toString(),this.ǃJgB&&(this.ǃJgB.min=ie.toString())}if(ne.hasOwnProperty("max")&&ǃJ.ǃLR(ne.max)){let ie=ne.max;this.ǃJRu=ie,this.ǃJgM.max=ie.toString(),this.ǃJRR.max=ie.toString(),this.ǃJgB&&(this.ǃJgB.max=ie.toString())}if(ne.hasOwnProperty("step")&&ǃJ.ǃLR(ne.step)){let ie=ne.step;this.ǃJR_=ie,this.ǃJgM.step=ie.toString(),this.ǃJRR.step=ie.toString(),this.ǃJgB&&(this.ǃJgB.step=ie.toString())}if(ne.hasOwnProperty("value")&&ǃJ.ǃLR(ne.value)){let ie=ne.value;this.ǃJRm=ie,this.ǃJgM.value=ie.toString(),this.ǃJRR.value=ie.toString(),this.ǃJgB&&this.ǃJgT(ie.toString())}ne.hasOwnProperty("label")&&ǃJ.ǃLX(ne.label)&&(this.ǃJgz=ne.label,this.ǃOau.textContent=this.ǃJgz)}ǃHH(){}ǃJXX(){this.ǃJgD(_300)}ǃJXv(){}ǃze(ne){ǃJ.ǃJO(ne);this.ǃJgz===ne||(this.ǃJgz=ne,this.ǃOau.textContent=ne)}ǃJgi(){return this.ǃJgz}ǃaS(){this.ǃJXs.ǃJXd(),this.ǃGc=!0}ǃaH(){this.ǃGc=!1,this.ǃJyh()}ǃJyh(){this.ǃGc||(this.ǃJgq=this.ǃJRR.value,this.ǃJRR.style.display="none",this.ǃJgM.value=this.ǃJRR.value,this.ǃJgB=ǃJ.ǃU.ǃH(_299,this.ǃNZ,"spinnerEditInput",null,this.ǃJgM,1),this.ǃJgL=ǃJ.ǃOwF(this.ǃJgB),this.ǃJgB.addEventListener("change",this.ǃJgk),this.ǃJgB.addEventListener(_299,this.ǃJgK),this.ǃJgB.addEventListener("blur",this.ǃJgI),this.ǃJgB.addEventListener("focus",this.ǃJge),this.ǃJgB.focus())}ǃJgV(){this.ǃJgB&&this.ǃRt(this.ǃJgB.value),this.ǃJg$=!0,this.ǃJgD(_300)}ǃJgo(){this.ǃJgB&&this.ǃRt(this.ǃJgB.value),this.ǃJg$&&(this.ǃJg$=!1,this.ǃJga()),this.ǃJgD("spinnerinput")}ǃJgr(){this.ǃJgB.value=this.ǃJgq,this.ǃJgB.removeEventListener("focus",this.ǃJge)}ǃJgN(){this.ǃJRR.style.display="",this.ǃJRR.value=this.ǃJgB.value,this.ǃRt(this.ǃJgB.value),this.ǃJgE()}ǃJgE(){this.ǃJgB&&(this.ǃJgL.ǃuO(),this.ǃJgL=null,this.ǃJgB.removeEventListener("change",this.ǃJgk),this.ǃJgB.removeEventListener(_299,this.ǃJgK),this.ǃJgB.removeEventListener("focus",this.ǃJge),this.ǃJgB.removeEventListener("blur",this.ǃJgI),ǃJ.ǃU.ǃHU(this.ǃJgB),this.ǃJgB=null)}ǃRt(ne){this.ǃJRR.value=""===ne?"0":this.ǃJRC&&+nethis.ǃJRu?this.ǃJRu.toString():ne}ǃJgT(ne){if(this.ǃJgB){let ie=this.ǃJgB.ownerDocument,ae=ie.defaultView;ie.execCommand("selectAll",!1),ie.execCommand("delete",!1),ie.execCommand("insertText",!1,ne)}}ǃJga(){let ne=new ǃJ.Event("firstspinnerinput");ne.ǃJRH=this.ǃJXs.ǃJXn(),ne.ǃJgp=this.ǃOmx.toLowerCase(),ne.ǃJgw=this.ǃJgG(),this.ǃJXs.ǃJXw().dispatchEvent(ne)}ǃJgD(ne){ǃJ.ǃJO(ne);let ie=this.ǃJgG();if(ie!==this.ǃJgt){let ae=new ǃJ.Event(ne);ae.ǃJRH=this.ǃJXs.ǃJXn(),ae.ǃJgp=this.ǃOmx.toLowerCase(),ae.ǃJgw=this.ǃJgG(),this.ǃJgt=ie,this.ǃJXs.ǃJXw().dispatchEvent(ae),this.ǃJRS(this.ǃJgG())}}}}{const ee=["value","label"];ǃJ.ǃU.ǃUu.ǃJnA.ǃJXx=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ne,ie,ae,de,re,oe){ǃJ.ǃUV(de),ǃJ.ǃUV(ae),super(ne,ie,re),this.ǃJg$=!0,this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-textbox",this.ǃJXs.ǃ_());({}).type="text",this.ǃJRR=document.createElement("input"),this.ǃJRR.type="text",this.ǃNZ.appendChild(this.ǃJRR),this.ǃOau=document.createElement("span"),oe?this.ǃNZ.insertBefore(this.ǃOau,this.ǃJRR):this.ǃNZ.appendChild(this.ǃOau),this.ǃJT=ǃJ.ǃJa.ǃJi(this.ǃJRR,"input",Oe=>this.ǃJgY(Oe)),this.ǃOau.innerHTML=de?de:ie.charAt(0).toUpperCase()+ie.slice(1),this.ǃJRf()}ǃhr(){return this.ǃJRR.value}ǃJgQ(ne){ǃJ.ǃJO(ne),this.ǃJRR.value=ne}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃOau),this.ǃJT.ǃuO(),this.ǃJT=null,this.ǃJRR=null,this.ǃOau=null,super.ǃyY()}ǃ$D(ne){ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("value")&&ǃJ.ǃLX(ne.value)&&(this.ǃJRR.value=ne.value.toString()),ne.hasOwnProperty("label")&&ǃJ.ǃLX(ne.label)&&(this.ǃJRR.label=ne.label)}ǃHH(){}ǃJXX(){this.ǃJgY()}ǃJXv(){}ǃJgY(){let ne=new ǃJ.Event("textinput");ne.ǃJRH=this.ǃJXs.ǃJXn(),ne.ǃJgj=this.ǃOmx.toLowerCase(),ne.ǃJgF=this.ǃhr(),this.ǃJXs.ǃJXw().dispatchEvent(ne),this.ǃJRS(this.ǃhr())}}}{const ee=["value","label"];ǃJ.ǃU.ǃUu.ǃJnA.ǃJXA=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ne,ie,ae,de,re,oe){ǃJ.ǃUV(de),ǃJ.ǃCl(ae),super(ne,ie,re),this.ǃJg$=!0,this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-dropdown",this.ǃJXs.ǃ_());({}).type="text",this.ǃJRR=document.createElement("select"),this.ǃNZ.appendChild(this.ǃJRR),this.ǃiD=new Map;for(let Oe of ae){let le=document.createElement("option");this.ǃJRR.appendChild(le),this.ǃiD.set(Oe.value,le),le.value=Oe.value,le.textContent=Oe.label,Oe.selected&&le.setAttribute("selected",""),Oe.disabled&&le.setAttribute("disabled","")}this.ǃOau=document.createElement("span"),oe?this.ǃNZ.insertBefore(this.ǃOau,this.ǃJRR):this.ǃNZ.appendChild(this.ǃOau),this.ǃJT=ǃJ.ǃJa.ǃJi(this.ǃJRR,"change",Oe=>this.ǃJgY(Oe)),this.ǃOau.innerHTML=de?de:ie.charAt(0).toUpperCase()+ie.slice(1),this.ǃJRf()}ǃhr(){return this.ǃJRR.value}ǃJgW(ne){ǃJ.ǃXq(ne),this.ǃJRR.selectedIndex=ne}ǃJgZ(ne){ǃJ.ǃJO(ne),this.ǃJRR.value=ne}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃJRR),ǃJ.ǃU.ǃHU(this.ǃOau),this.ǃJT.ǃuO(),this.ǃJT=null,this.ǃJRR=null,this.ǃOau=null,super.ǃyY()}ǃ$D(ne){ǃJ.ǃLH(ne),this.ǃJRn(ne,ee),ne.hasOwnProperty("value")&&ǃJ.ǃLX(ne.value)&&(this.ǃJRR.value=ne.value.toString()),ne.hasOwnProperty("label")&&ǃJ.ǃLX(ne.label)&&(this.ǃJRR.label=ne.label)}ǃHH(){}ǃJXX(){this.ǃJgY()}ǃJXv(){}ǃJgY(){let ne=new ǃJ.Event("optionselected");ne.ǃJRH=this.ǃJXs.ǃJXn(),ne.ǃJgl=this.ǃOmx.toLowerCase(),ne.ǃJgx=this.ǃhr(),this.ǃJXs.ǃJXw().dispatchEvent(ne),this.ǃJRS(this.ǃhr())}}}{const _303="mouse-over",_304="mouse-down",_305="UIPointerDown",_306="--arrow-color",_307="mouse-down-light",_308="mouse-over-light",ee=[];let te=!1;ǃJ.ǃU.ǃUu.ǃJnA.ǃJXY=class extends ǃJ.ǃU.ǃUu.ǃJnA.Element{constructor(ie,ae,de,re,oe,ye,Oe){ǃJ.ǃk(de,ǃJ.ǃU.ǃ$B),ǃJ.ǃUV(re),ǃJ.ǃUV(oe),ǃJ.ǃUg(Oe),super(ie,ae,ye),this.ǃJgA=Oe,this.ǃJRW=!1,this.ǃNZ=ǃJ.ǃU.ǃH("ui-toolbar-split-button",this.ǃJXs.ǃ_()),this.ǃNZ.style.height=`${this.ǃJXs.ǃOdk()}px`,this.ǃNZ.setAttribute("type","split"),this.ǃJgh=ǃJ.ǃU.ǃH("div",this.ǃNZ),this.ǃJgv=ǃJ.ǃU.ǃH("div",this.ǃNZ),this.ǃJgh.setAttribute("primary",""),this.ǃJgv.setAttribute("secondary",""),re&&this.ǃJgh.setAttribute("title",re),oe&&this.ǃJgv.setAttribute("title",oe),this.ǃJgP=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,de,this.ǃJgh),this.ǃJgd=ǃJ.ǃU.ǃH("div",this.ǃJgv,null,"arrow"),this.ǃNZ.style.setProperty("--arrow-size",`${app.ǃ$L()/2}px`),this.ǃNZ.style.setProperty(_306,app.ǃZb().iconColor),this.ǃJT=ǃJ.ǃb(ǃJ.ǃJD,ǃJ.ǃJa.ǃJi(this.ǃJgh,_305,le=>this.ǃaS(le)),ǃJ.ǃJa.ǃJi(this.ǃJgh,"UIPointerUp",le=>this.ǃaH(le)),ǃJ.ǃJa.ǃJi(this.ǃJgh,"contextmenu",le=>this.ǃzA(le)),ǃJ.ǃJa.ǃJi(this.ǃJgh,"mouseout",le=>this.ǃJgs(le)),ǃJ.ǃJa.ǃJi(this.ǃJgh,"mouseover",le=>this.ǃJHO(le)),ǃJ.ǃJa.ǃJi(this.ǃJgv,_305,le=>this.ǃaS(le)),ǃJ.ǃJa.ǃJi(this.ǃJgv,"UIPointerUp",le=>this.ǃaH(le)),ǃJ.ǃJa.ǃJi(this.ǃJgv,"contextmenu",le=>this.ǃzA(le)),ǃJ.ǃJa.ǃJi(this.ǃJgv,"mouseout",le=>this.ǃJgs(le)),ǃJ.ǃJa.ǃJi(this.ǃJgv,"mouseover",le=>this.ǃJHO(le)),ǃJ.ǃJa.ǃJi(app,"settingschange",le=>this.ǃJHJ(le))),this.ǃJRf()}ǃyY(){this.ǃJT.ǃuO(),this.ǃJT=null,this.ǃJgP.ǃyY(),this.ǃJgP=null,ǃJ.ǃU.ǃHU(this.ǃJgd),this.ǃJgd=null,ǃJ.ǃU.ǃHU(this.ǃJgh),this.ǃJgh=null,ǃJ.ǃU.ǃHU(this.ǃJgv),this.ǃJgv=null,super.ǃyY()}ǃ$D(ie){ǃJ.ǃLH(ie),this.ǃJRn(ie,ee)}ǃzr(ie){super.ǃzr(ie),ie||this.ǃHH()}ǃzb(ie,ae){ǃJ.ǃUV(ie),ǃJ.ǃUV(ae),ie&&this.ǃJgh.setAttribute("title",ie),ae&&this.ǃJgv.setAttribute("title",ae)}ǃHH(){this.ǃJgh.removeAttribute(_304),this.ǃJgh.removeAttribute(_307),this.ǃJgh.removeAttribute(_303),this.ǃJgv.removeAttribute(_304),this.ǃJgv.removeAttribute(_307),this.ǃJgv.removeAttribute(_303)}ǃJXX(){}ǃJXv(){this.ǃJgh.setAttribute(_304,""),this.ǃJgh.removeAttribute(_307),this.ǃJgv.removeAttribute(_304,""),this.ǃJgv.removeAttribute(_307),this.ǃJHy()}ǃJHf(){this.ǃNZ.setAttribute("type","single"),this.ǃNZ.style.width=`${this.ǃJXs.ǃOdk()}px`,this.ǃNZ.style.padding="",this.ǃJgv.setAttribute("hide","")}ǃyM(){this.ǃNZ.setAttribute("type","split"),this.ǃNZ.style.width="",this.ǃNZ.style.padding="",this.ǃJgv.removeAttribute("hide")}ǃyt(){this.ǃNZ.setAttribute("type","wide"),this.ǃNZ.style.width="",this.ǃNZ.style.padding=`0 ${app.ǃ$L()/4+1}px`,this.ǃJgv.setAttribute("hide","")}ǃaS(ie){this.ǃJXs.ǃJXd(),te=ie.detail.ǃOS$;(te||ie.detail.ǃTd===ǃJ.ǃDO.ǃaa)&&(this.ǃJRW=!1,this.ǃNZ.setAttribute(_304,""),ie.target===this.ǃJgh&&(this.ǃJgh.setAttribute(_304,""),this.ǃJgv.removeAttribute(_304)),ie.target===this.ǃJgv&&(this.ǃJgh.removeAttribute(_304),this.ǃJgv.setAttribute(_304,"")))}ǃaH(ie){(te||ie.detail.ǃTd===ǃJ.ǃDO.ǃaa)&&this.ǃNZ.hasAttribute(_304)&&(!this.ǃJRW&&!this.ǃJXs.ǃJXP()&&(ie.target===this.ǃJgh&&this.ǃJHy(ie),ie.target===this.ǃJgv&&this.ǃJHS(ie)),this.ǃNZ.removeAttribute(_304),this.ǃJgh.removeAttribute(_304),this.ǃJgh.removeAttribute(_307),this.ǃJgv.removeAttribute(_304),this.ǃJgv.removeAttribute(_307))}ǃJgs(){te||(this.ǃNZ.removeAttribute(_304),this.ǃJgh.removeAttribute(_304),this.ǃJgv.removeAttribute(_304),this.ǃNZ.removeAttribute(_303),this.ǃJgh.removeAttribute(_303),this.ǃJgv.removeAttribute(_303))}ǃJHO(ie){te||(this.ǃNZ.setAttribute(_303,""),ie.target===this.ǃJgh&&(this.ǃJgh.setAttribute(_303,""),this.ǃJgv.setAttribute(_308,""),this.ǃJgh.removeAttribute(_308,""),this.ǃJgv.removeAttribute(_303)),ie.target===this.ǃJgv&&(this.ǃJgh.setAttribute(_308,""),this.ǃJgv.setAttribute(_303,""),this.ǃJgh.removeAttribute(_303),this.ǃJgv.removeAttribute(_308)))}ǃzA(ie){ie.preventDefault();this.ǃJXs.ǃJXP()||(this.ǃJRW=!0,this.ǃJgC(ie))}ǃJHJ(ie){this.ǃNZ.style.setProperty(_306,ie.ǃJHn.iconColor)}ǃJHy(ie){let ae=new ǃJ.Event("primaryclick");ae.ǃJRH=this.ǃJXs.ǃJXn(),ae.ǃTX=this.ǃOmx,ae.clientX=ie?ie.detail.clientX:0,ae.clientY=ie?ie.detail.clientY:0,this.ǃJXs.ǃJXw().dispatchEvent(ae),this.ǃJRS()}ǃJHS(ie){let ae=new ǃJ.Event("secondaryclick");ae.ǃJRH=this.ǃJXs.ǃJXn(),ae.ǃTX=this.ǃOmx,ae.clientX=ie.detail.clientX,ae.clientY=ie.detail.clientY,this.ǃJXs.ǃJXw().dispatchEvent(ae),this.ǃJgA&&this.ǃJgA()}ǃJgC(ie){let ae=new ǃJ.Event("splitbuttoncontextmenu");ae.ǃJRH=this.ǃJXs.ǃJXn(),ae.ǃTX=this.ǃOmx,ae.clientX=ie.detail.clientX,ae.clientY=ie.detail.clientY,this.ǃJXs.ǃJXw().dispatchEvent(ae)}}}{ǃJ.ǃU.ǃUu.ǃJHX=class extends ǃJ.Event.ǃU_{constructor(){super(),this.ǃNZ=null,this.ǃJHR=[],this.ǃJHg=-1,this.ǃJHH=()=>this.ǃJHU()}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null;for(let ae of this.ǃJHR)ae.ǃyY();ǃJ.ǃXX(this.ǃJHR),-1=100)throw new Error("too much content added to status indicator");if(this.ǃJHR.includes(ae))throw new Error("already added");this.ǃJHR.push(ae),this.ǃJHu()}ǃJH_(ae){let de=this.ǃJHR.indexOf(ae);if(0>de)throw new Error("content not added to status indicator");this.ǃJHR.splice(de,1),this.ǃJHu()}ǃJHu(){-1"),ae+=this.ǃJHR[de].ǃJHm();ǃJ.ǃHe(this.ǃNZ,new ǃJ.ǃOrc(ae))}else this.ǃOsf(!1)}ǃOsf(ae){ae=!!ae;!!this.ǃNZ===ae||(ae?(this.ǃNZ=ǃJ.ǃU.ǃH("ui-statusIndicator",document.body),this.ǃNZ.setAttribute("role","status")):(ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null))}}}"use strict",ǃJ.ǃU.ǃUu.ǃJHb=class{constructor(te,ne){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJHX),ǃJ.ǃJO(ne),this.ǃJHc=te,this.ǃJHt=ne,this.ǃOPQ=0}ǃyY(){0=this.ǃOPQ)throw new Error("removed too many times");this.ǃOPQ--,0===this.ǃOPQ?this.ǃJHc.ǃJH_(this):this.ǃJHc.ǃJHu()}ǃJHm(){return ǃJ.ǃOEy(this.ǃJHt,this.ǃOPQ)}},"use strict",ǃJ.ǃU.ǃUu.ǃJH$=class{constructor(te,ne){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJHX),ǃJ.ǃJO(ne),this.ǃJHc=te,this.ǃJHt=ne,this.ǃJHq=0,this.ǃXl=!1}ǃyY(){this.ǃXl&&(this.ǃJHc.ǃJH_(this),this.ǃXl=!1),this.ǃJHc=null}ǃJHM(te){ǃJ.ǃXq(te),te=ǃJ.ǃRf(te,0,1),this.ǃXl||(this.ǃJHc.ǃJHC(this),this.ǃXl=!0);this.ǃJHq===te||(this.ǃJHq=te,this.ǃJHc.ǃJHu())}ǃOfI(){this.ǃXl&&(this.ǃJHc.ǃJH_(this),this.ǃXl=!1,this.ǃJHq=0)}ǃJHm(){return ǃJ.ǃOEy(this.ǃJHt,Math.round(1e3*this.ǃJHq)/10)}},"use strict",ǃJ.ǃU.ǃUu.ǃJHB=class{constructor(te,ne){ǃJ.ǃk(te,ǃJ.ǃU.ǃUu.ǃJHX),ǃJ.ǃJO(ne),this.ǃJHc=te,this.ǃtA=ne,this.ǃXl=!1}ǃyY(){this.ǃXl&&(this.ǃJHc.ǃJH_(this),this.ǃXl=!1),this.ǃJHc=null}ǃOK(){this.ǃXl||(this.ǃJHc.ǃJHC(this),this.ǃXl=!0)}ǃRa(te){ǃJ.ǃJO(te),this.ǃOK();this.ǃtA===te||(this.ǃtA=te,this.ǃJHc.ǃJHu())}ǃJHm(){return this.ǃtA}},"use strict";{const _309="ui-balloontip",_310="UIPointerDown",_311="invalid alignment",ee=[{opacity:"1"},{opacity:"0"}],te=[{transform:"scale(0.85)",opacity:"0"},{transform:"scale(1)",opacity:"1"}],ne={duration:100,easing:"ease-out"},ie=ǃJ.ǃO().getElementById("balloontip-svg"),ae={ǃJHL:1e4,maxWidth:"300px",align:"center",clientX:null,clientY:null},de=5,re=new Set(["top-left","top","top-right","left","center","right","bottom-left","bottom","bottom-right"]);let oe=null;ǃJ.ǃU.ǃUu.ǃFr=class extends ǃJ.ǃq{constructor(Oe,le,Je,ue,pe){ǃJ.ǃKw(Oe,HTMLElement,Range),ǃJ.ǃUR(Je),ǃJ.ǃUR(ue),ǃJ.ǃBA(pe),super(),"string"==typeof le&&(le=app.ǃa(le)),ǃJ.ǃq$(le,ǃJ.ǃU.ǃ$B),this.ǃJHz=Oe,this.ǃJHk=Je,this.ǃJHV=ue,this.ǃuP=!1,pe=Object.assign({},ae,pe),ǃJ.ǃJO(pe.maxWidth),ǃJ.ǃXq(pe.ǃJHL),ǃJ.ǃJO(pe.align),ǃJ.ǃaB(pe.clientX),ǃJ.ǃaB(pe.clientY);let he=pe.clientX,ge=pe.clientY,me=Number.isFinite(he)&&Number.isFinite(ge);if(!re.has(pe.align))throw new Error(_311);oe&&oe.ǃJHK(),oe=this,this.ǃJHo=pe.maxWidth,this.ǃJHe=pe.ǃJHL,this.ǃJHr=pe.align,this.ǃNZ=null,this.ǃJHI=-1,this.ǃZE=()=>this.ǃaS(),this.ǃJHN=!1;let ve=this.ǃJHz;ve instanceof Range&&(ve=this.ǃJHz.commonAncestorContainer);let be=ǃJ.ǃOrZ(ve,"dialog"),Ue=0,Ee=0;if(be){let Ae=ǃJ.ǃU.ǃOR.ǃOWC(be);Ae.ǃOWn()||(Ue=Ae.ǃOZS(),Ee=Ae.ǃOZn()),this.ǃNZ=ǃJ.ǃU.ǃH(_309,be)}else Ue=0,Ee=0,this.ǃNZ=ǃJ.ǃU.ǃH(_309,ve.ownerDocument.body);this.ǃJHG=ǃJ.ǃU.ǃH("ui-balloontip-icon",this.ǃNZ),this.ǃJHE=ǃJ.ǃU.ǃH("ui-balloontip-text",this.ǃNZ),this.ǃAD=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,le||app.ǃi()),this.ǃJHG.appendChild(this.ǃAD.ǃ_()),this.ǃxp=ǃJ.ǃU.ǃH("ui-balloontip-title",this.ǃJHE),this.ǃzj=ǃJ.ǃU.ǃH("ui-balloontip-body",this.ǃJHE),ǃJ.ǃHe(this.ǃxp,this.ǃJHk),ǃJ.ǃHe(this.ǃzj,this.ǃJHV),this.ǃxp.style.maxWidth=this.ǃJHo,this.ǃzj.style.maxWidth=this.ǃJHo;let Le=this.ǃNZ.ownerDocument.defaultView.getComputedStyle(this.ǃNZ),we=this.ǃJHz.getBoundingClientRect(),xe=parseInt(Le.paddingLeft),ke=parseInt(Le.paddingTop),Se=0,Xe=0;switch(this.ǃJHr){case"top-left":Se=0,Xe=0;break;case"top":Se=we.width/2,Xe=0;break;case"top-right":Se=we.width,Xe=0;break;case"left":Se=0,Xe=we.height/2;break;case"center":Se=we.width/2,Xe=we.height/2;break;case"right":Se=we.width,Xe=we.height/2;break;case"bottom-left":Se=0,Xe=we.height;break;case"bottom":Se=we.width/2,Xe=we.height;break;case"bottom-right":Se=we.width,Xe=we.height;break;default:throw new Error(_311);}let Ne=we.left+Se,Re=we.top+Xe;me&&(Ne=he-Ue,Re=ge-Ee);let Ce=Ne-2*xe-Ue,De=Re+ke-Ee,Fe=parseInt(Le.width),Ze=parseInt(Le.height),Ie=Fe+4*xe,_e=Ze+4*ke;this.ǃJHT=ie.cloneNode(!0),this.ǃJHT.setAttributeNS(null,"width",Ie),this.ǃJHT.setAttributeNS(null,"height",_e),this.ǃJHT.style.left=`${-xe}px`,this.ǃJHT.style.top=`${-ke}px`,this.ǃJHD=this.ǃJHT.querySelector(".balloontipPath"),this.ǃNZ.insertBefore(this.ǃJHT,this.ǃJHG);let $e=null;if(this.ǃJHi(Ce+2*xe,Fe-xe,Ue))this.ǃJHa(De+ke,Ze,Ee)?(this.ǃNZ.style.top=`${De}px`,this.ǃNZ.style.left=`${Ce}px`,this.ǃNZ.style.transformOrigin=`${Ne-Ce-Ue}px 0%`,$e=this.ǃJHp):(this.ǃNZ.style.top=`${De-Ze-4*ke}px`,this.ǃNZ.style.left=`${Ce}px`,this.ǃNZ.style.transformOrigin=`${Ne-Ce-Ue}px 100%`,$e=this.ǃJHw);else if(this.ǃJHa(De+ke,Ze,Ee)){let Ae=Ce-Fe+2*xe;this.ǃNZ.style.top=`${De}px`,this.ǃNZ.style.left=`${Ae}px`,this.ǃNZ.style.transformOrigin=`${Ne-Ae-Ue}px 0%`,$e=this.ǃJHY}else{let Ae=Ce-Fe+2*xe;this.ǃNZ.style.top=`${De-Ze-4*ke}px`,this.ǃNZ.style.left=`${Ae}px`,this.ǃNZ.style.transformOrigin=`${Ne-Ae-Ue}px 100%`,$e=this.ǃJHQ}this.ǃJHD.setAttributeNS(null,"d",$e(xe,ke,Ie-xe,_e-ke,xe,ke)),this.ǃOva(te,ne,"show")}ǃJHj(){let Oe=this.ǃJHz;return Oe instanceof Range&&(Oe=this.ǃJHz.commonAncestorContainer),Oe.ownerDocument}ǃJHF(){return this.ǃJHj().defaultView}ǃOva(Oe,le,Je){let ue;"show"===Je&&(ue=this.ǃJHW),"hide"===Je&&(ue=this.ǃJHZ),app.ǃlN()?(this.ǃOFK=this.ǃNZ.animate(Oe,le),this.ǃOFK.onfinish=()=>ue.call(this)):ue.call(this)}ǃJHW(){this.ǃuP||(this.ǃJHI=setTimeout(()=>this.ǃJHK(),this.ǃJHe),this.ǃJHj().addEventListener(_310,this.ǃZE))}ǃJHZ(){this.ǃih()}ǃaS(){this.ǃJHK()}ǃJHK(){this.ǃJHN||(oe===this&&(oe=null),this.ǃJHN=!0,this.ǃOva(ee,ne,"hide"))}ǃih(){this.ǃuP||(this.ǃuP=!0,oe===this&&(oe=null),-1!==this.ǃJHI&&(clearTimeout(this.ǃJHI),this.ǃJHI=-1),this.ǃJHj().removeEventListener(_310,this.ǃZE),this.ǃZE=null,this.ǃAD&&this.ǃAD.ǃyY(),ǃJ.ǃU.ǃHU(this.ǃxp),ǃJ.ǃU.ǃHU(this.ǃxp),ǃJ.ǃU.ǃHU(this.ǃxp),ǃJ.ǃU.ǃHU(this.ǃJHT),ǃJ.ǃU.ǃHU(this.ǃJHG),ǃJ.ǃU.ǃHU(this.ǃJHE),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃJHG=null,this.ǃJHE=null,this.ǃAD=null,this.ǃJHT=null,this.ǃxp=null,this.ǃzj=null,this.ǃJHz=null,this.ǃNZ=null,ǃJ.ǃyY(this))}ǃJHp(Oe,le,Je,ue,pe,he){return`M ${Oe+de} ${le}
L ${Oe+pe} ${le}
L ${Oe+2*pe} ${le-he}
L ${Oe+2*pe} ${le}
L ${Je-de} ${le}
A ${de} ${de} 0 0 1 ${Je} ${le+de}
L ${Je} ${ue-de}
A ${de} ${de} 0 0 1 ${Je-de} ${ue}
L ${Oe+de} ${ue}
A ${de} ${de} 0 0 1 ${Oe} ${ue-de}
L ${Oe} ${le+de}
A ${de} ${de} 0 0 1 ${Oe+de} ${le}
Z`}ǃJHY(Oe,le,Je,ue,pe,he){return`M ${Je/2} ${le}
L ${Oe+Je-4*pe} ${le}
L ${Oe+Je-4*pe+pe} ${le-he}
L ${Oe+Je-4*pe+pe} ${le}
L ${Je-de} ${le}
A ${de} ${de} 0 0 1 ${Je} ${le+de}
L ${Je} ${ue-de}
A ${de} ${de} 0 0 1 ${Je-de} ${ue}
L ${Oe+de} ${ue}
A ${de} ${de} 0 0 1 ${Oe} ${ue-de}
L ${Oe} ${le+de}
A ${de} ${de} 0 0 1 ${Oe+de} ${le}
Z`}ǃJHw(Oe,le,Je,ue,pe,he){return`M ${Oe+de} ${le}
L ${Je-de} ${le}
A ${de} ${de} 0 0 1 ${Je} ${le+de}
L ${Je} ${ue-de}
A ${de} ${de} 0 0 1 ${Je-de} ${ue}
L ${Oe+2*pe} ${ue}
L ${Oe+2*pe} ${ue+he}
L ${Oe+pe} ${ue}
L ${Oe+de} ${ue}
A ${de} ${de} 0 0 1 ${Oe} ${ue-de}
L ${Oe} ${le+de}
A ${de} ${de} 0 0 1 ${Oe+de} ${le}
Z`}ǃJHQ(Oe,le,Je,ue,pe,he){return`M ${Oe+de} ${le}
L ${Je-de} ${le}
A ${de} ${de} 0 0 1 ${Je} ${le+de}
L ${Je} ${ue-de}
A ${de} ${de} 0 0 1 ${Je-de} ${ue}
L ${Oe+Je-4*pe+pe} ${ue}
L ${Oe+Je-4*pe+pe} ${ue+he}
L ${Oe+Je-4*pe} ${ue}
L ${Oe+de} ${ue}
A ${de} ${de} 0 0 1 ${Oe} ${ue-de}
L ${Oe} ${le+de}
A ${de} ${de} 0 0 1 ${Oe+de} ${le}
Z`}ǃJHi(Oe,le,Je){return Oe+le+Jethis.ǃYc(de),this.ǃJHs=()=>this.ǃJUO(),this.ǃJUJ=0,this.ǃGu=-1,this.ǃww=ǃJ.ǃU.ǃH("div",null,null,"table-insert-mark"),this.ǃJUy=null,this.ǃwQ="",this.ǃJUf=!1,this.ǃGu=-1,this.ǃJff=()=>this.ǃJfS(),this.ǃJfn=0,this.ǃJfX=0,this.ǃJfR=0,this.ǃJfg=0,this.ǃJUS=!1,this.ǃJUn=null,this.ǃJUX=null,this.ǃOAr=!0}ǃyY(){this.ǃbi(),this.ǃVt(),this.ǃww=null,this.ǃJUR(),this.ǃJff=null,this.ǃJHv&&(this.ǃJHv.ǃyY(),this.ǃJHv=null),this.ǃJUX&&(ǃJ.ǃU.ǃHU(this.ǃJUX),this.ǃJUX=null),this.ǃJUn&&(this.ǃJUn.ǃyY(),this.ǃJUn=null),-1!==this.ǃGu&&(this.ǃGl().cancelAnimationFrame(this.ǃGu),this.ǃGu=-1),this.ǃOJa&&(this.ǃOJa.removeEventListener("scroll",this.ǃJHd,{ǃgO:!0}),this.ǃJHd=null,ǃJ.ǃU.ǃHU(this.ǃOJa),this.ǃOJa=null),ǃJ.ǃU.ǃHU(this.ǃJHh),this.ǃJHh=null,this.ǃJHs=null,this.ǃOFZ=null,super.ǃyY()}ǃbi(){this.ǃJHP.clear(),this.ǃVt();for(let ie of this.ǃLt)ie.ǃyY();this.ǃLt.length=0}ǃ_(){return this.ǃJHh}ǃqc(){return this.ǃ_().ownerDocument}ǃGl(){return this.ǃqc().defaultView}ǃJfB(){return this.ǃJyZ}ǃJUg(ie){this.ǃJUS=ie}ǃJUH(){return this.ǃJUS}ǃJUU(ie){this.ǃJUC(ie),this.ǃJHP.add(ie)}ǃJUu(ie){this.ǃJUC(ie),this.ǃJHP.delete(ie)}ǃeZ(){return this.ǃJHP.size}ǃoe(){for(let ie of this.ǃJHP)ie.ǃQa(!1);assert(0===this.ǃJHP.size,"should have deleted all selected row")}ǃJU_(){return this.ǃJHP.values()}ǃJUm(){return ǃJ.ǃUe(this.ǃJHP)}ǃJUb(){return this.ǃJHv}ǃJUc(){return this.ǃOJa}ǃJUt(ie){this.ǃOJa.insertBefore(ie,this.ǃJUn.ǃ_())}ǃbn(){if(this.ǃLt.length)throw new Error("table must be empty before setting the top row");return this.ǃJHv&&this.ǃJHv.ǃyY(),this.ǃJHv=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJU$,this),this.ǃOJa=ǃJ.ǃU.ǃH("div",this.ǃJHh,null,"table-scroll-container"),this.ǃOJa.addEventListener("scroll",this.ǃJHd,{ǃgO:!0}),this.ǃJHv}ǃcc(ie){this.ǃbg();let ae=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃct,ie,this);return this.ǃLt.push(ae),ae}ǃbg(){this.ǃJUn||(this.ǃJUn=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃct,null,this,!0))}ǃJUq(){if(this.ǃJUX)return this.ǃJUX;if(!this.ǃJUn)throw new Error("must create padding row before footer element");this.ǃJUX=ǃJ.ǃU.ǃH("div",null,null,"tableFooterElem");const ie=this.ǃJUn.ǃ_();return ie.insertBefore(this.ǃJUX,ie.firstChild),this.ǃJUX}ǃOWL(){return this.ǃJUX}ǃJUM(ie){ǃJ.ǃ$V(ie);for(let ae of this.ǃLt)if(ie(ae))return ae}ǃck(ie){ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃbS.ǃct);let ae=this.ǃLt.indexOf(ie);if(0>ae)throw new Error("cannot find row");this.ǃLt[ae].ǃyY(),this.ǃLt.splice(ae,1)}ǃJSc(){for(let ie of this.ǃLt)ie.ǃJSc()}ǃYc(){let ae=this.ǃOJa.scrollLeft;this.ǃJUJ===ae||(this.ǃJUJ=ae,-1===this.ǃGu&&(this.ǃGu=this.ǃGl().requestAnimationFrame(this.ǃJHs)))}ǃJUO(){this.ǃJHv.ǃ_().style.marginLeft=`-${this.ǃJUJ}px`,this.ǃGu=-1}ǃJUC(ie){if(ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃbS.ǃct),ie.ǃJUB()!==this)throw new Error("row from different table")}*rows(){for(let ie of this.ǃLt)yield ie}ǃV$(ie,ae){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae);let de=this.ǃJHh.getBoundingClientRect();if(iede.right||ae>de.bottom)return null;for(let re of this.rows()){let oe=re.ǃV$(ie,ae);if(oe)return{ǃbU:re,ǃVc:oe.ǃVc}}return null}ǃVb(ie,ae){if(this.ǃJUC(ie),ǃJ.ǃJO(ae),"before"!==ae&&"after"!==ae)throw new Error("invalid insert mark type");if(ie!==this.ǃJUy||ae!==this.ǃwQ){this.ǃVt();let de=ie.ǃ_(),re=de.parentElement;re.insertBefore(this.ǃww,"before"===ae?de:de.nextSibling),this.ǃJUy=ie,this.ǃwQ=ae}}ǃVt(){this.ǃwQ&&(ǃJ.ǃU.ǃHU(this.ǃww),this.ǃJUy=null,this.ǃwQ="")}ǃJUL(){this.ǃJUf||(this.ǃJUf=!0,this.ǃJfg=0,this.ǃJfn=performance.now(),this.ǃGu=this.ǃGl().requestAnimationFrame(this.ǃJff))}ǃJUz(ie,ae){this.ǃJUf&&(this.ǃJfX=ie,this.ǃJfR=ae)}ǃJfS(){if(this.ǃGu=-1,!!this.ǃJUf){let ie=performance.now(),ae=(ie-this.ǃJfn)/1e3;this.ǃJfn=ie;let de=this.ǃJHh.getBoundingClientRect();if(this.ǃJfX>=de.left&&this.ǃJfX<=de.right)if(this.ǃJfRde.bottom){let re=this.ǃOJa.scrollTop,oe=re+te*ae+this.ǃJfg;this.ǃJfg=oe-Math.floor(oe),oe=Math.floor(oe),this.ǃOJa.scrollTop=oe}this.ǃGu=requestAnimationFrame(this.ǃJff)}}ǃbZ(){return this.ǃOJa.scrollTop}ǃbl(ie){ǃJ.ǃXq(ie),this.ǃOJa.scrollTop=ie}ǃJUR(){this.ǃJUf=!1,-1!==this.ǃGu&&(this.ǃGl().cancelAnimationFrame(this.ǃGu),this.ǃGu=-1)}ǃJUk(ie,ae,de,re,oe){let ye=new ǃJ.Event(ae),Oe=null;if(!(de&&(Oe=de.getAttribute("columnName"),!Oe)))return ye.ǃbU=ie,ye.ǃJUV=Oe,typeof re!==_312&&typeof oe!==_312&&(ye.clientX=re,ye.clientY=oe),ye.ǃJUK=de?ie.ǃO_p(ye.ǃJUV):null,this.dispatchEvent(ye)}ǃJUo(ie,ae,de){let re=new ǃJ.Event(ie);return re.table=this,typeof ae!==_312&&typeof de!==_312&&(re.clientX=ae,re.clientY=de),this.dispatchEvent(re)}ǃJg(){return this.ǃOAr}ǃJX(ie){ie=!!ie;this.ǃOAr===ie||(this.ǃOAr=ie,this.ǃJHh.style.display=this.ǃOAr?"":"none")}}}{const _313="UIPointerUp",_314="UIPointerMove",_315="UIPointerDown";ǃJ.ǃU.ǃUu.ǃbS.ǃct=class extends ǃJ.Event.ǃU_{constructor(ne,ie,ae){ǃJ.ǃk(ie,ǃJ.ǃU.ǃUu.ǃbS),ae=!!ae,super(),this.ǃbf=ie,this.ǃOAu=ne,this.ǃJUe=ae,this.ǃZG=!1,this.ǃOAr=!0,this.ǃJHv=ie.ǃJUb(),this.ǃJUr=ǃJ.ǃU.ǃH("ui-table-row"),this.ǃJUr.setAttribute("tabindex",-1),this.ǃJUe&&this.ǃJUr.setAttribute("filler",""),this.ǃJUe?this.ǃbf.ǃJUc().appendChild(this.ǃJUr):this.ǃbf.ǃJUt(this.ǃJUr),this.ǃJUI=[],this.ǃJUN=new Set,this.ǃJUG=this.ǃJHv.ǃJUE(),this.ǃJUT=[];for(let de=0;dethis.ǃOyA(de),this.ǃZT=de=>this.ǃYm(de),this.ǃZD=de=>this.ǃzA(de),this.ǃOsZ=de=>this.ǃJyh(de),this.ǃOsl=de=>this.ǃJyv(de),this.ǃwT=-1,this.ǃwD=0,this.ǃwi=0,this.ǃOsh=!1,this.ǃZE=null,this.ǃYO=null,this.ǃYy=null,this.ǃJUr.addEventListener("UIDoubleTap",this.ǃZT),this.ǃJUe||(this.ǃJUr.addEventListener("focus",this.ǃOsZ),this.ǃJUr.addEventListener("blur",this.ǃOsl),this.ǃJUr.addEventListener("UITap",this.ǃORW),this.ǃbf.ǃJfB()&&(this.ǃZE=de=>this.ǃaS(de),this.ǃYO=de=>this.ǃYJ(de),this.ǃYy=de=>this.ǃaH(de),this.ǃJUr.addEventListener(_315,this.ǃZE))),this.ǃJUr.addEventListener("contextmenu",this.ǃZD)}ǃyY(){for(let ne of this.ǃJUI)ne.ǃyY();for(let ne of this.ǃJUT)ne.ǃyY();ǃJ.ǃXX(this.ǃJUT),ǃJ.ǃXX(this.ǃJUI),this.ǃJUN.clear(),this.ǃQa(!1),ǃJ.ǃU.ǃHU(this.ǃJUr),this.ǃJUr.removeEventListener("focus",this.ǃOsZ),this.ǃOsZ=null,this.ǃJUr.removeEventListener("blur",this.ǃOsl),this.ǃOsl=null,this.ǃJUr.removeEventListener("UITap",this.ǃORW),this.ǃORW=null,this.ǃJUr.removeEventListener("UIDoubleTap",this.ǃZT),this.ǃZT=null,this.ǃJUr.removeEventListener(_315,this.ǃZE),this.ǃZE=null,this.ǃqc().removeEventListener(_314,this.ǃYO),this.ǃYO=null,this.ǃqc().removeEventListener(_313,this.ǃYy),this.ǃYy=null,this.ǃJUr.removeEventListener("contextmenu",this.ǃZD),this.ǃZD=null,this.ǃJUN=null,this.ǃJUI=null,this.ǃJUr=null,this.ǃJUG=null,this.ǃbf=null,this.ǃOAu=null,this.ǃJHv=null,this.ǃJUT=null,super.ǃyY()}ǃHc(){return this.ǃOAu}ǃJUB(){return this.ǃbf}ǃ_(){return this.ǃJUr}ǃqc(){return this.ǃ_().ownerDocument}ǃJUa(){return Array.prototype.indexOf.call(this.ǃJUr.parentElement.children,this.ǃJUr)}ǃO_p(ne){ǃJ.ǃJO(ne);for(let ie of this.ǃJUI)if(ie.ǃJUp()===ne)return ie;return null}ǃJSc(){for(let ne of this.ǃJUI)ne.ǃJUw()&&ne.ǃJSc()}ǃcb(ne,ie){ǃJ.ǃJO(ne),ǃJ.ǃk(ie,ǃJ.ǃU.ǃ$B),this.ǃJUY(ne);let ae=this.ǃJUr.querySelector(`[columnName="${ne}"]`);return this.ǃJUI.push(ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUQ,ae,ie)),this}ǃJUj(ne,ie){ǃJ.ǃJO(ne),ǃJ.ǃJO(ie),this.ǃJUY(ne);let ae=this.ǃJUr.querySelector(`[columnName="${ne}"]`);return this.ǃJUI.push(ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUF,ae,ie)),this}ǃJUW(ne,ie){ǃJ.ǃJO(ne),ǃJ.ǃXq(ie),this.ǃJUY(ne);let ae=this.ǃJUr.querySelector(`[columnName="${ne}"]`);return this.ǃJUI.push(ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUZ,ae,ie)),this}ǃcm(ne,ie){ǃJ.ǃJO(ne),ǃJ.ǃUR(ie),this.ǃJUY(ne);let ae=this.ǃJUr.querySelector(`[columnName="${ne}"]`);return this.ǃJUI.push(ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUl,ae,ie)),this}ǃqT(ne,ie){ǃJ.ǃJO(ne),ǃJ.ǃk(ie,ie.ownerDocument.defaultView.DocumentFragment),this.ǃJUY(ne);let ae=this.ǃJUr.querySelector(`[columnName="${ne}"]`);return this.ǃJUI.push(ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUx,ae,ie)),this}ǃJUY(ne){if(this.ǃJUN.has(ne))throw new Error(`field '${ne}' has already been set`);if(!this.ǃJUG.some(ie=>ie.ǃJXn()===ne))throw new Error(`field '${ne}' does not exist`);this.ǃJUN.add(ne)}ǃOyA(ne){this.ǃbf.ǃJUk(this,"rowtapped",ne.target,ne.clientX,ne.clientY)}ǃYm(ne){this.ǃJUe?this.ǃbf.ǃJUo("tablespacedoubletap",ne.clientX,ne.clientY):this.ǃbf.ǃJUk(this,"rowdoubletapped",ne.target,ne.clientX,ne.clientY)}ǃzA(ne){ne.preventDefault(),this.ǃJUe?this.ǃbf.ǃJUo("tablecontextmenu",ne.clientX,ne.clientY):this.ǃbf.ǃJUk(this,"rowcontextmenu",ne.target,ne.clientX,ne.clientY)}ǃJX(ne){ne=!!ne;this.ǃOAr===ne||(this.ǃOAr=ne,this.ǃJUr.style.display=this.ǃOAr?"":"none")}ǃkE(){this.ǃoB()||(this.ǃbf.ǃoe(),this.ǃQa(!0))}ǃrh(){this.ǃQa(!1)}ǃQa(ne){ne=!!ne;this.ǃZG===ne||(ne?(this.ǃJUr.setAttribute("selected",""),this.ǃbf.ǃJUU(this)):(this.ǃJUr.removeAttribute("selected"),this.ǃbf.ǃJUu(this)),this.ǃZG=ne)}ǃoB(){return this.ǃZG}ǃJyh(){this.ǃkE()}ǃJyv(){this.ǃQa(!1)}ǃV$(ne,ie){if(ǃJ.ǃXq(ne),ǃJ.ǃXq(ie),this.ǃJUe)return null;let ae=this.ǃJUr.getBoundingClientRect();if(neae.right||ieae.bottom)return null;let de=ae.bottom-ae.top,re=ae.top+de/2;return{ǃVc:ie>=re?"after":"before"}}ǃaS(ne){let ie=ne.detail;ie.ǃTd!==ǃJ.ǃDO.ǃaa||this.ǃbf.ǃJUH()||-1===this.ǃwT&&(this.ǃqc().addEventListener(_314,this.ǃYO),this.ǃqc().addEventListener(_313,this.ǃYy),this.ǃwT=ie.id,this.ǃwD=ie.clientX,this.ǃwi=ie.clientY,this.ǃOsh=!1)}ǃYJ(ne){ne.preventDefault();let ie=ne.detail;if(ie.id===this.ǃwT&&!this.ǃbf.ǃJUH()){if(this.ǃbf.ǃJfB()&&!this.ǃOsh&&ǃJ.ǃ_i(this.ǃwD,this.ǃwi,ie.clientX,ie.clientY)>=10)if(this.ǃbf.ǃJUk(this,"dragstart",ne.target))this.ǃOsh=!0,this.ǃbf.ǃJUL();else return this.ǃwT=-1,this.ǃqc().removeEventListener(_314,this.ǃYO),void this.ǃqc().removeEventListener(_313,this.ǃYy);this.ǃOsh&&(this.ǃbf.ǃJUk(this,"dragmove",null,ie.clientX,ie.clientY),this.ǃbf.ǃJUz(ie.clientX,ie.clientY))}}ǃaH(ne){let ie=ne.detail;ie.id!==this.ǃwT||(this.ǃqc().removeEventListener(_314,this.ǃYO),this.ǃqc().removeEventListener(_313,this.ǃYy),this.ǃOsh&&(this.ǃOsh=!1,this.ǃwT=-1,this.ǃbf.ǃJUR(),this.ǃbf.ǃJUk(this,"drop",null,ie.clientX,ie.clientY)))}}}{const _316="UIPointerUp",_317="UIPointerDown",_318="UIPointerMove",_319="ui-table-column",_320="resizing-column",ee=2;ǃJ.ǃU.ǃUu.ǃbS.ǃJUi=class extends ǃJ.Event.ǃU_{constructor(ne,ie,ae,de){ǃJ.ǃk(ne,ǃJ.ǃU.ǃUu.ǃbS),ǃJ.ǃLA(ie),ǃJ.ǃXq(ae),ǃJ.ǃUV(de),super(),this.ǃbf=ne,this.ǃOFZ=ie,this.ǃXs=ae,this.ǃOmx=de,this.ǃNZ=null,this.ǃJUA=null,this.ǃJUh=null,this.ǃJUv=null,this.ǃJUP=null,this.ǃJUT=null,this.ǃJUd=0,this.ǃJUs=0,this.ǃJCO=-1,this.ǃJCJ=-1,this.ǃJCy="",this.ǃNZ=de?ǃJ.ǃU.ǃH(_319,ie,null,null,{columnName:de}):ǃJ.ǃU.ǃH(_319,ie),ae&&-1!==ae&&(this.ǃNZ.style.width=`${ae}px`,this.ǃNZ.style.maxWidth=`${ae}px`,this.ǃNZ.style.minWidth=`${ae}px`),this.ǃiw=re=>this.ǃaS(re),this.ǃiF=re=>this.ǃYJ(re),this.ǃiQ=re=>this.ǃaH(re),this.ǃJCf=re=>this.ǃJCS(re),this.ǃNZ.addEventListener(_317,this.ǃiw),this.ǃNZ.addEventListener(_318,this.ǃJCf)}ǃyY(){this.ǃNZ.removeEventListener(_317,this.ǃiw),this.ǃNZ.removeEventListener(_318,this.ǃJCf),this.ǃbf.ǃqc().removeEventListener(_318,this.ǃiF),this.ǃbf.ǃqc().removeEventListener(_316,this.ǃiQ),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃJUA&&ǃJ.ǃXX(this.ǃJUA),this.ǃJUh&&ǃJ.ǃXX(this.ǃJUh),this.ǃJUT&&ǃJ.ǃXX(this.ǃJUT),this.ǃiw=null,this.ǃiF=null,this.ǃiQ=null,this.ǃJCf=null,this.ǃJUA=null,this.ǃJUv=null,this.ǃJUh=null,this.ǃJUP=null,this.ǃJUT=null,this.ǃbf=null,this.ǃOFZ=null,this.ǃNZ=null,super.ǃyY()}ǃ_(){return this.ǃNZ}ǃJUD(){return-1===this.ǃXs}ǃJCn(){return 0===this.ǃJCX(this.ǃNZ)}ǃJCR(){return this.ǃJCX(this.ǃNZ)===this.ǃbf.ǃJUb().ǃJUE().length-1}ǃJXn(){return this.ǃOmx}ǃOdk(){if(-1===this.ǃXs){let ne=getComputedStyle(this.ǃNZ),ie=parseInt(ne.width);return ie}return this.ǃXs}ǃRC(ne){ǃJ.ǃXq(ne);-1===this.ǃXs||(this.ǃXs=ne)}ǃLZ(ne){ǃJ.ǃk(ne,ǃJ.ǃU.ǃUu.ǃbS.ǃJUi),this.ǃJUT||(this.ǃJUT=[]),this.ǃJUT.push(ne)}ǃJCg(){return this.ǃJUT}ǃJCX(ne){return Array.prototype.indexOf.call(ne.parentNode.childNodes,ne)}ǃJCH(ne){ǃJ.ǃXq(ne);let ie=this.ǃJCX(this.ǃNZ)+ne,ae=this.ǃbf.ǃ_(),de=ae.getElementsByTagName(_319);return 0===ne?this.ǃJUv=this.ǃbf.ǃJUb().ǃJUE()[ie]:this.ǃJUP=this.ǃbf.ǃJUb().ǃJUE()[ie],Array.prototype.filter.call(de,re=>{return this.ǃJCX(re)===ie})}ǃaS(ne){let ie=ne.target,ae=ie.getBoundingClientRect(),de=ne.detail.clientX-ae.left,re=parseInt(getComputedStyle(ie).padding);return(this.ǃJUd=ne.detail.clientX,this.ǃJUs=ae.width-2*re,de<=ee)?this.ǃJCn()?void 0:(this.ǃbf.ǃJUg(!0),this.ǃJCy="left",this.ǃJUA=this.ǃJCH(0),this.ǃJUh=this.ǃJCH(-1),this.ǃbf.ǃqc().addEventListener(_318,this.ǃiF),this.ǃbf.ǃqc().addEventListener(_316,this.ǃiQ),void this.ǃNZ.removeEventListener(_318,this.ǃJCf)):de>=ae.width-ee?(this.ǃbf.ǃJUg(!0),this.ǃJCy="right",this.ǃJUA=this.ǃJCH(0),this.ǃJUh=this.ǃJCH(1),this.ǃbf.ǃqc().addEventListener(_318,this.ǃiF),this.ǃbf.ǃqc().addEventListener(_316,this.ǃiQ),void this.ǃNZ.removeEventListener(_318,this.ǃJCf)):void 0}ǃYJ(ne){let ie=ne.detail.clientX-this.ǃJUd;if(("left"===this.ǃJCy&&(ie*=-1),this.ǃJCO=this.ǃJUs+ie,!(0>this.ǃJCO))&&!(this.ǃJUP&&(this.ǃJCJ=this.ǃJUP.ǃOdk()-ie,!this.ǃJUP.ǃJUD()&&0>this.ǃJCJ))){for(let ae of this.ǃJUA)ae.style.width=`${this.ǃJCO}px`,ae.style.maxWidth&&(ae.style.maxWidth=`${this.ǃJCO}px`),ae.style.minWidth&&(ae.style.minWidth=`${this.ǃJCO}px`);for(let ae of this.ǃJUh)ae.style.width=`${this.ǃJCJ}px`,ae.style.maxWidth&&(ae.style.maxWidth=`${this.ǃJCJ}px`),ae.style.minWidth&&(ae.style.minWidth=`${this.ǃJCJ}px`)}}ǃJCS(ne){let ie=ne.target,ae=ie.getBoundingClientRect(),de=ne.detail.clientX-ae.left;return de<=ee?0===this.ǃJCX(ie)?void this.ǃbf.ǃ_().removeAttribute(_320):void this.ǃbf.ǃ_().setAttribute(_320,""):de>=ae.width-ee?this.ǃJUD()&&this.ǃJCR()?void this.ǃbf.ǃ_().removeAttribute(_320):void this.ǃbf.ǃ_().setAttribute(_320,""):void this.ǃbf.ǃ_().removeAttribute(_320)}ǃaH(){if(this.ǃJUv&&-1!==this.ǃJCO){let ie=0{ne.preventDefault(),this.ǃbf.ǃJUo("tablecontextmenu",ne.clientX,ne.clientY)},this.ǃNZ.addEventListener("contextmenu",this.ǃJCC)}ǃyY(){this.ǃNZ.removeEventListener("contextmenu",this.ǃJCC),this.ǃJCC=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null;for(let te of this.ǃJUG)te.ǃyY();ǃJ.ǃXX(this.ǃJUG),this.ǃJUG=null,this.ǃbf=null,this.ǃJCU=!1,super.ǃyY()}ǃ_(){return this.ǃNZ}ǃJUE(){return this.ǃJUG}ǃbX(te,ne,ie){if(ǃJ.ǃJO(te),ǃJ.ǃXq(ne),ǃJ.ǃUV(ie),this.ǃJCU)throw new Error("only one auto sizing column at the end of the table is allowed");let ae=ǃJ.ǃb(ǃJ.ǃU.ǃUu.ǃbS.ǃJUi,this.ǃbf,this.ǃNZ,ne,te);if(ie){let de=ǃJ.ǃU.ǃH("div",ae.ǃ_());de.textContent=ie}return this.ǃJUG.push(ae),this}ǃbR(te,ne){ǃJ.ǃJO(te),ǃJ.ǃUV(ne),this.ǃbX(te,-1,ne),this.ǃbf.ǃ_().setAttribute("flex-filler",""),this.ǃbf.ǃJUc().style.overflowX="hidden",this.ǃJCU=!0}},"use strict",ǃJ.ǃU.ǃUu.ǃbS.ǃJCu=class{constructor(){this.ǃJC_=!1}ǃJUp(){ǃJ.ǃZZ()}ǃyY(){ǃJ.ǃZZ()}ǃJUw(){return this.ǃJC_}},"use strict",ǃJ.ǃU.ǃUu.ǃbS.ǃJUQ=class extends ǃJ.ǃU.ǃUu.ǃbS.ǃJCu{constructor(te,ne){ǃJ.ǃLA(te),ǃJ.ǃk(ne,ǃJ.ǃU.ǃ$B),super(),this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,ne,te),this.ǃ$q.ǃ_().style.pointerEvents="none",this.ǃOFZ=te,this.ǃOFZ.setAttribute("icon","")}ǃJUp(){return this.ǃOFZ.getAttribute("columnName")}ǃyY(){this.ǃ$q.ǃyY(),this.ǃ$q=null,this.ǃOFZ=null}},"use strict",ǃJ.ǃU.ǃUu.ǃbS.ǃJUl=class extends ǃJ.ǃU.ǃUu.ǃbS.ǃJCu{constructor(te,ne){ǃJ.ǃLA(te),ǃJ.ǃUR(ne),super(),this.ǃtA=ǃJ.ǃU.ǃH("div",te),ǃJ.ǃHe(this.ǃtA,ne),this.ǃtA.style.pointerEvents="none",this.ǃOFZ=te}ǃJUp(){return this.ǃOFZ.getAttribute("columnName")}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃtA),this.ǃtA=null,this.ǃOFZ=null}ǃRa(te){ǃJ.ǃUR(te),ǃJ.ǃHe(this.ǃtA,te)}},"use strict",ǃJ.ǃU.ǃUu.ǃbS.ǃJUZ=class extends ǃJ.ǃU.ǃUu.ǃbS.ǃJCu{constructor(te,ne){ǃJ.ǃLA(te),ǃJ.ǃXq(ne),super(),this.ǃJCm=ǃJ.ǃU.ǃH("div",te),this.ǃJCm.textContent=ne.toString(),this.ǃJCm.style.pointerEvents="none",this.ǃOFZ=te}ǃJUp(){return this.ǃOFZ.getAttribute("columnName")}ǃyY(){ǃJ.ǃU.ǃHU(this.ǃJCm),this.ǃJCm=null,this.ǃOFZ=null}},"use strict";{ǃJ.ǃU.ǃUu.ǃbS.ǃJUF=class extends ǃJ.ǃU.ǃUu.ǃbS.ǃJCu{constructor(ne,ie){ǃJ.ǃLA(ne),ǃJ.ǃJO(ie),super(),this.ǃOFZ=ne,this.ǃJCb=ie,this.ǃtA=ǃJ.ǃU.ǃH("div",this.ǃOFZ),this.ǃtA.textContent=this.ǃJCb,this.ǃtA.style.pointerEvents="none",this.ǃOZU=null,this.ǃJSX=null,this.ǃJSR=null,this.ǃJSf=null,this.ǃJSS=null,this.ǃJOf=null,this.ǃJCc=null,this.ǃJCt=()=>this.ǃJSu(),this.ǃJC_=!0}ǃyY(){this.ǃJSr(),ǃJ.ǃU.ǃHU(this.ǃtA),this.ǃJCb=null,this.ǃtA=null,this.ǃOFZ=null,this.ǃJSX=null,this.ǃJSR=null,this.ǃJSf=null,this.ǃJSS=null,this.ǃJOf=null,this.ǃJCc=null,this.ǃJCt=null}ǃJUp(){return this.ǃOFZ.getAttribute("columnName")}ǃ_(){return this.ǃtA}ǃRa(ne){ǃJ.ǃJO(ne),this.ǃJCb=ne,this.ǃtA.textContent=this.ǃJCb}ǃKP(){return this.ǃJCb}ǃVO(){if(!this.ǃOZU)return this.ǃOZU=ǃJ.ǃU.ǃH("input",this.ǃOFZ,null,"table-edit-text"),this.ǃOZU.type="text",this.ǃOZU.setAttribute("spellcheck","false"),this.ǃJSS=()=>this.ǃJSo(),this.ǃOZU.addEventListener("input",this.ǃJSS),this.ǃOZU.addEventListener("UITap",ǃJ.ǃU.ǃOQt),this.ǃOZU.addEventListener("UIDoubleTap",ǃJ.ǃU.ǃOQt),window.setTimeout(()=>{this.ǃJSf=()=>this.ǃJSK(),this.ǃOZU.addEventListener("blur",this.ǃJSf),this.ǃOZU.select()},30),this.ǃJOf=ne=>this.ǃJSe(ne),this.ǃOZU.addEventListener("keydown",this.ǃJOf,!0),this.ǃOFZ.addEventListener("scroll",this.ǃJCt,{ǃgO:!0}),this.ǃOZU.value=this.ǃJCb,this.ǃOZU.focus(),this.ǃtA.textContent=".",new Promise((ne,ie)=>{this.ǃJSX=ne,this.ǃJSR=ie})}ǃJSe(ne){ne.which===ǃJ.ǃCi.ǃCD?(ne.preventDefault(),ne.stopPropagation(),this.ǃJSK()):ne.which===ǃJ.ǃCi.ǃiz&&(ne.preventDefault(),ne.stopPropagation(),this.ǃJSc())}ǃJSK(){if(this.ǃOZU){let ne=this.ǃOZU.value;this.ǃJSr(),this.ǃJSX&&this.ǃJSX(ne),this.ǃJSX=null,this.ǃJSR=null}}ǃJSc(){this.ǃOZU&&(this.ǃJSr(),this.ǃJSX&&this.ǃJSX(null),this.ǃJSX=null,this.ǃJSR=null)}ǃJSr(){this.ǃOZU&&(this.ǃtA.textContent=this.ǃJCb,this.ǃOFZ.removeEventListener("scroll",this.ǃJCt,{ǃgO:!0}),this.ǃOZU.removeEventListener("keydown",this.ǃJOf,!0),this.ǃOZU.removeEventListener("input",this.ǃJSS),this.ǃOZU.removeEventListener("blur",this.ǃJSf),this.ǃOZU.removeEventListener("contextmenu",this.ǃJCc),this.ǃOZU.removeEventListener("UITap",ǃJ.ǃU.ǃOQt),this.ǃOZU.removeEventListener("UIDoubleTap",ǃJ.ǃU.ǃOQt),ǃJ.ǃU.ǃHU(this.ǃOZU),this.ǃJOf=null,this.ǃJSS=null,this.ǃJSf=null,this.ǃOZU=null)}ǃJSo(){this.ǃtA.textContent=this.ǃOZU.value;let ne=this.ǃtA.getBoundingClientRect();this.ǃOZU.style.width=`${Math.max(ne.right-ne.left,30)}px`,this.ǃtA.textContent="."}ǃJSu(){this.ǃOZU.style.left=`${this.ǃtA.offsetLeft}px`,this.ǃOZU.style.top=`${this.ǃtA.offsetTop-this.ǃOFZ.scrollTop}px`;let ne=this.ǃOFZ.getBoundingClientRect(),ie=this.ǃOZU.getBoundingClientRect();(ie.bottom>ne.bottom||ie.topne.right)&&this.ǃJSc()}}}"use strict",ǃJ.ǃU.ǃUu.ǃbS.ǃJUx=class extends ǃJ.ǃU.ǃUu.ǃbS.ǃJCu{constructor(te,ne){ǃJ.ǃLA(te),ǃJ.ǃk(ne,ne.ownerDocument.defaultView.DocumentFragment),super(),this.ǃOFZ=te,this.ǃOFZ.appendChild(ne)}ǃJUp(){return this.ǃOFZ.getAttribute("columnName")}ǃyY(){this.ǃOFZ=null}},"use strict";{const _323="UIPointerDown";ǃJ.ǃU.ǃUu.ǃUC=class extends ǃJ.Event.ǃU_{constructor(te){super(),ǃJ.ǃLA(te),this.ǃNZ=ǃJ.ǃU.ǃH("ui-close-button",te),this.ǃNZ.setAttribute("title",lang("ui.controls.close-button.close-tooltip")),this.ǃOdG=null,app.ǃJC$("close").ǃUU().then(ne=>{ǃJ.ǃ_O(this)||this.ǃJCq(ne)}),this.onclick=null,this.ǃZE=ne=>this.ǃaS(ne),this.ǃNZ.addEventListener(_323,this.ǃZE),this.ǃuP=!1}ǃyY(){this.ǃuP=!0,ǃJ.ǃU.ǃHU(this.ǃOdG),this.ǃOdG=null,this.ǃNZ.removeEventListener(_323,this.ǃZE),this.ǃZE=null,this.onclick=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,super.ǃyY()}ǃJCq(te){this.ǃuP||(this.ǃOdG=te,this.ǃNZ.appendChild(this.ǃOdG))}ǃ_(){return this.ǃNZ}ǃaS(te){0!==te.detail.ǃTd||(te.stopPropagation(),this.onclick&&this.onclick())}}}{const _324="UIPointerDown";ǃJ.ǃU.ǃUu.ǃOFF=class extends ǃJ.Event.ǃU_{constructor(te){super(),ǃJ.ǃLA(te),this.ǃNZ=ǃJ.ǃU.ǃH("ui-back-button"),te.insertBefore(this.ǃNZ,te.firstChild),this.ǃNZ.setAttribute("title",lang("ui.controls.back-button.back-tooltip")),this.ǃOdG=null,app.ǃJC$("back").ǃUU().then(ne=>this.ǃJCq(ne)),this.onclick=null,this.ǃZE=ne=>this.ǃaS(ne),this.ǃNZ.addEventListener(_324,this.ǃZE),this.ǃJRJ=!0,this.ǃuP=!1}ǃyY(){this.ǃuP=!0,ǃJ.ǃU.ǃHU(this.ǃOdG),this.ǃOdG=null,this.ǃNZ.removeEventListener(_324,this.ǃZE),this.ǃZE=null,this.onclick=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null,super.ǃyY()}ǃJCq(te){this.ǃuP||(this.ǃOdG=te,this.ǃNZ.appendChild(this.ǃOdG))}ǃJX(te){this.ǃJRJ===te||(this.ǃNZ.style.visibility=te?"visible":"hidden",this.ǃJRJ=te)}ǃ_(){return this.ǃNZ}ǃaS(te){0!==te.detail.ǃTd||(te.stopPropagation(),this.onclick&&this.onclick())}}}{function ee(pe){Oe&&Oe.ǃYJ(pe)}const _325="right",_326="top-left",_327="UIPointerDown",_328="UIPointerMove",_329="not in a group",_330="menu was released",_331="should not be current menu",te=[{opacity:"1"},{opacity:"0"}],ne=[{transform:"scale(0.85)",opacity:"0"},{transform:"scale(1)",opacity:"1"}],ie=[{opacity:"0"},{opacity:"1"}],ae={duration:100,easing:"ease-out"},de=[_326,"top","top-right","left","center",_325,"bottom-left","bottom","bottom-right"],re=[_325,"left"],oe=4,ye={ǃJCM:null};let Oe=null,le=NaN;ǃJ.ǃU.ǃD=class extends ǃJ.ǃq{constructor(he,ge,me,ve){ǃJ.ǃLA(he),ǃJ.ǃaB(ge),ǃJ.ǃq$(me,ǃJ.ǃU.ǃD.ǃJCB),ǃJ.ǃBA(ve),super(),ve=Object.assign({},ye,ve),this.ǃJCL=he,this.ǃOaj=null,this.ǃJCz=ve.ǃJCM||null,this.ǃJCk=!1,this.ǃNZ=ǃJ.ǃU.ǃH("ui-menu"),this.ǃNZ.setAttribute("role","menu"),this.ǃJSa=[],this.ǃOlK=null,this.ǃJCV=[],this.ǃJCK=null,this.ǃOFK=null,this.ǃOFo=!1,this.ǃOFe=!1,this.ǃXl=!1,this.ǃJCo=me,this.ǃOAr=!0,this.ǃJCe(!1),this.ǃJCr=0,this.ǃJCI=!1,this.ǃJCN=0,this.ǃJCG=0,this.ǃJCE=_325,this.ǃOFM=null,this.ǃJCT=ǃJ.ǃl.ǃO_&&window.matchMedia("(max-width: 500px), (max-height: 500px)").matches,this.ǃJCD=!1,this.ǃJCT&&this.ǃNZ.setAttribute("compact",""),this.ǃJXT=be=>this.ǃYc(be),this.ǃNZ.addEventListener("scroll",this.ǃJXT,{ǃgO:!0}),this.ǃJyj=ge||(this.ǃJCT?app.ǃi():app.ǃ$L()),this.ǃuP=!1}ǃyY(){assert(!this.ǃuP,"already released"),this.ǃJCi(),this.ǃOFK&&(this.ǃOFK.finish(),this.ǃOFK=null);for(let he of this.ǃJSa)he.ǃih();ǃJ.ǃXX(this.ǃJSa);for(let he of this.ǃJCV)ǃJ.ǃU.ǃHU(he);ǃJ.ǃXX(this.ǃJCV),this.ǃJCK=null,this.ǃNZ&&(this.ǃNZ.removeEventListener("scroll",this.ǃJXT),this.ǃJXT=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null),this.ǃOlK=null,this.ǃOFK=null,this.ǃJCL=null,this.ǃJCo=null,this.ǃuP=!0,ǃJ.ǃyY(this)}ǃ_O(){return this.ǃuP}ǃ_(){return this.ǃNZ}ǃqc(){return this.ǃNZ.ownerDocument}ǃGl(){return this.ǃqc().defaultView}ǃJCa(){return this.ǃJCK||this.ǃNZ}ǃJfb(){return this.ǃJyj}ǃJCp(){return this.ǃJCo}ǃJCw(){if(isNaN(le)){let he=ǃJ.ǃU.ǃOnl("padding-top",{ǃgx:this.ǃNZ});if(!he.endsWith("px"))throw new Error("CSS style for menu padding-top must be in units of 'px'");le=parseFloat(he)||0}return le}ǃXb(){return this.ǃXl}ǃJCY(){return this.ǃJCI}ǃYc(){this.ǃJCI=!0}ǃJCQ(){this.ǃJCI=!1}ǃJCj(){this.ǃJCQ();for(let he of this.ǃJSa)if(he.ǃJCF()&&he.ǃJCW()){let We=he.ǃJCZ();We&&We.ǃJCl().ǃJCj()}}ǃw(he,ge,me,ve){"string"==typeof he&&(he=app.ǃJCx(he,this.ǃJyj)),ǃJ.ǃq$(he,ǃJ.ǃU.ǃ$B),ǃJ.ǃJO(ge),ǃJ.ǃUg(me),ǃJ.ǃBA(ve),this.ǃJCD||(this.ǃJCD=!0,this.ǃJCT&&this.ǃJCA()&&this.ǃJCh());let be=ǃJ.ǃb(ǃJ.ǃU.ǃD.ǃJCB,this,he,ge,me,ve);return this.ǃJSa.push(be),this.ǃJCv(),be}ǃW(){let he=ǃJ.ǃb(ǃJ.ǃU.ǃD.ǃJXQ,this);return this.ǃJSa.push(he),this.ǃJCv(),he}ǃp(he,ge,me,ve){"string"==typeof he&&(he=app.ǃJCx(he,this.ǃJyj)),ǃJ.ǃq$(he,ǃJ.ǃU.ǃ$B),ǃJ.ǃJO(ge),ǃJ.ǃBA(me),ǃJ.ǃBA(ve);let be=this.ǃw(he,ge,null,me);return be.ǃJCP(ve),be.ǃJCZ()}ǃxn(){if(!this.ǃJCd()){if(this.ǃJCs())throw new Error("already in a group");this.ǃJCK=ǃJ.ǃU.ǃH("div",this.ǃ_(),null,"menuitemgroup"),this.ǃJCV.push(this.ǃJCK)}}ǃxX(){if(!this.ǃJCd()){if(!this.ǃJCs())throw new Error(_329);this.ǃJCK=null}}ǃJuO(){if(!this.ǃJCs())throw new Error(_329);ǃJ.ǃU.ǃHU(this.ǃJCK),this.ǃJCK=null,this.ǃJCV.pop()}ǃJCs(){return!!this.ǃJCK}ǃJCh(){const he=this.ǃJCs();he&&this.ǃJuO(),this.ǃw(app.ǃJCx("close",this.ǃJfb()),lang("common.close-menu"),ǃJ.ǃOrI),this.ǃW(),he&&this.ǃxn()}ǃJCv(){null===this.ǃJCz||this.ǃJSa.length>this.ǃJCz&&(this.ǃJCk=!0)}ǃHa(he,ge,me){if(ǃJ.ǃXq(he),ǃJ.ǃXq(ge),ǃJ.ǃaB(me),assert(!this.ǃuP,_330),assert(!this.ǃXl,"showing already active menu"),this.ǃJCK)throw new Error("group not finished");if(this.ǃJCA()){ǃJ.ǃU.ǃD.ǃJHx(),Oe=this;let ve=new Promise(be=>this.ǃOFM=be);return this.ǃJCT&&ǃJ.ǃU.ǃOWw.ǃOK(this.ǃJCL),this.ǃJuJ(he,ge),this.ǃJuy(),this.ǃOaj.addEventListener(_327,ǃJ.ǃU.ǃD.ǃaS,!0),this.ǃOaj.addEventListener("keydown",ǃJ.ǃU.ǃD.ǃi$),this.ǃOaj.defaultView.addEventListener("resize",ǃJ.ǃU.ǃD.ǃJHx),this.ǃOaj.defaultView.addEventListener("unload",ǃJ.ǃU.ǃD.ǃJHx),this.ǃOaj.addEventListener(_328,ee),this.ǃJCk||this.ǃOaj.addEventListener("wheel",ǃJ.ǃU.ǃD.ǃJuf,!0),ǃJ.ǃOD||this.ǃOaj.defaultView.addEventListener("blur",ǃJ.ǃU.ǃD.ǃJHx),ve}this.ǃJuS()&&(this.ǃJun()?this.ǃJCp().ǃJCl().ǃJCY()&&this.ǃJuJ(he,ge,me):this.ǃJuJ(he,ge,me),this.ǃJuy())}ǃOW(he=_326,ge=0,me=0,ve=_325){if(ǃJ.ǃJO(he),ǃJ.ǃXq(ge),ǃJ.ǃXq(me),ǃJ.ǃJO(ve),!de.includes(he))throw new Error("invalid alignment");if(!re.includes(ve))throw new Error("invalid preferred expand direction");this.ǃJCE=ve;const be=this.ǃJCL.getBoundingClientRect();return he===_326?this.ǃHa(be.left+ge,be.top+me):"top"===he?this.ǃHa(be.left+be.width/2+ge,be.top+me):"top-right"===he?this.ǃHa(be.right+ge,be.top+me):"left"===he?this.ǃHa(be.left+ge,be.top+be.height/2+me):"center"===he?this.ǃHa(be.left+be.width/2+ge,be.top+be.height/2+me):he===_325?this.ǃHa(be.right+ge,be.top+be.height/2+me):"bottom-left"===he?this.ǃHa(be.left+ge,be.bottom+me):"bottom"===he?this.ǃHa(be.left+be.width/2+ge,be.bottom+me):"bottom-right"===he?this.ǃHa(be.right+ge,be.bottom+me):void 0}ǃOV(he){!he&&(this.ǃOFe||this.ǃJuX()||!this.ǃXl)||(this.ǃXl=!1,this.ǃJuR(),this.ǃJCA()&&(Oe===this&&(Oe=null),this.ǃJCT&&ǃJ.ǃU.ǃOWw.ǃOV(),this.ǃOaj&&(this.ǃOaj.removeEventListener(_327,ǃJ.ǃU.ǃD.ǃaS,!0),this.ǃOaj.removeEventListener("keydown",ǃJ.ǃU.ǃD.ǃi$),this.ǃOaj.removeEventListener("wheel",ǃJ.ǃU.ǃD.ǃJuf,!0),this.ǃOaj.defaultView.removeEventListener("resize",ǃJ.ǃU.ǃD.ǃJHx),this.ǃOaj.defaultView.removeEventListener("unload",ǃJ.ǃU.ǃD.ǃJHx),this.ǃOaj.removeEventListener(_328,ee),!ǃJ.ǃOD&&this.ǃOaj.defaultView.removeEventListener("blur",ǃJ.ǃU.ǃD.ǃJHx)),this.ǃJCi()),this.ǃOaj=null,this.ǃJug())}ǃJCi(){this.ǃOFM&&(this.ǃOFM(),this.ǃOFM=null)}ǃV$(he,ge){if(ǃJ.ǃXq(he),ǃJ.ǃXq(ge),assert(!this.ǃuP,_330),this.ǃOFe||!this.ǃXl||this.ǃJuX())return!1;let me=this.ǃOlK;return me?he>=me.left&&ge>=me.top&&heCe?(he=0,ǃJ.ǃl.ǃO_&&(ge=me),Ee="100%"):(he=we-be,Ee="0%")}let Ne="number"==typeof me?me:ge;ge+Ue+oe<=xe?Le="0%":0<=Ne-Ue?(ge=Ne-Ue,Le="100%"):(Le=100*ge/xe+"%",ge=0,this.ǃNZ.style.height=Math.min(Ue,xe-5)+"px"),this.ǃNZ.style.transformOrigin=`${Ee} ${Le}`,this.ǃNZ.style.left=`${he-this.ǃJCN}px`,this.ǃNZ.style.top=`${ge-this.ǃJCG}px`,"DIALOG"===this.ǃJuU().tagName&&(this.ǃNZ.style.width=`${be}px`),this.ǃOlK=this.ǃNZ.getBoundingClientRect()}ǃJuy(){assert(!this.ǃuP,_330),assert(!this.ǃOFo,"already fading in"),assert(!this.ǃOFe,"menu is fading out"),this.ǃOFo=!0,this.ǃXl=!0,this.ǃJuX()?(this.ǃJCe(!0),this.ǃOva(this.ǃJCT?ie:ne,ae)):this.ǃOWa()}ǃJug(){return assert(!this.ǃOFe,"already animating out"),assert(Oe!==this,_331),this.ǃOFe=!0,this.ǃOFo&&(this.ǃOFo=!1,this.ǃOFK)?void ǃJ.ǃOrd(this.ǃOFK):void(this.ǃJuC()?this.ǃOva(te,ae):this.ǃOWa())}ǃOva(he,ge){app.ǃlN()?(assert(!this.ǃOFK,"already animating"),this.ǃOFK=this.ǃNZ.animate(he,ge),this.ǃOFK.onfinish=()=>this.ǃOWa()):this.ǃOWa()}ǃOWa(){if(!(ǃJ.ǃ_O(this)||this.ǃuP)){let he=!1;this.ǃOFe&&(assert(Oe!==this,_331),this.ǃJCA()&&(he=!0),this.ǃJuS()&&this.ǃJCe(!1)),this.ǃOFo=!1,this.ǃOFe=!1,this.ǃOFK=null,he&&this.ǃyY()}}ǃJuu(he){ǃJ.ǃq$(he,ǃJ.ǃU.ǃD.ǃJCB);for(let ge of this.ǃJSa)ge.ǃQa(ge===he)}ǃJuR(){for(let he of this.ǃJSa)if(he.ǃJCF()){let Ke=he.ǃJCZ();Ke&&Ke.ǃJCl().ǃOV()}}ǃJu_(){for(let he of this.ǃJSa)if(he.ǃJCF()){let Qe=he.ǃJCZ();Qe&&Qe.ǃJCl().ǃyY()}}ǃJum(he,ge){for(let me of this.ǃJSa)if(me.ǃJCF()){let Jt=me.ǃJCZ();if(Jt&&Jt.ǃJCl().ǃJub(he,ge))return!0}return!1}ǃJub(he,ge){return this.ǃV$(he,ge)||this.ǃJum(he,ge)}ǃJCe(he){if((he=!!he,this.ǃOAr!==he)&&(this.ǃOAr=he,this.ǃNZ.setAttribute("visible",this.ǃOAr?"true":"false"),!this.ǃOAr))for(let ge of this.ǃJSa)ge.ǃQa(!1)}ǃJuc(){return this.ǃOFe}ǃJut(){return this.ǃXl}ǃJuX(){return!this.ǃOAr}ǃJuC(){return this.ǃOAr}ǃJuS(){return!!this.ǃJCo}ǃJCA(){return!this.ǃJCo}ǃJCd(){return this.ǃJCT}ǃJu$(he){this.ǃJCT&&(this.ǃXl=!!he,this.ǃJCe(this.ǃXl))}ǃJuq(){return this.ǃNZ.scrollHeight>this.ǃNZ.clientHeight}ǃJun(){return!!this.ǃNZ.parentNode}ǃJuU(){return this.ǃNZ.parentNode}static ǃjX(){return!!Oe}static ǃJHx(){Oe&&(assert(!Oe.ǃ_O(),_330),Oe.ǃOV(Oe.ǃJCd()),Oe=null)}static ǃOWl(){Oe&&(assert(!Oe.ǃ_O(),_330),Oe.ǃJu_(),Oe.ǃyY(),Oe=null)}static ǃOQq(he,ge,me){return!!Oe&&(assert(!Oe.ǃ_O(),_330),me&&Oe.ǃGl()!==me?!1:Oe.ǃJub(he,ge))}static ǃaS(he){Oe&&(assert(!Oe.ǃ_O(),_330),Oe.ǃJCj(),!Oe.ǃJub(he.detail.clientX,he.detail.clientY)&&(Oe.ǃJCd()&&(he.stopPropagation(),he.preventDefault()),ǃJ.ǃU.ǃD.ǃJHx()))}ǃYJ(he){if(!this.ǃ_O())for(let ge of this.ǃJSa)if(ge.ǃJCF()&&(ge.ǃYJ(he),ge.ǃJCW())){let Lt=ge.ǃJCZ();Lt.ǃJuM()&&(Lt.ǃYJ(he),Lt.ǃJCl().ǃYJ(he))}}static ǃi$(he){Oe&&(he.which!==ǃJ.ǃCi.ǃiz||ǃJ.ǃU.ǃD.ǃJHx())}static ǃJuf(he){ǃJ.ǃU.ǃD.ǃjX()&&(he.preventDefault(),he.stopPropagation())}}}{const _332="UIPointerDown",ne={ǃE:!1,bold:!1,ǃQ:"",ǃOG:!1,ǃJuB:!1};ǃJ.ǃU.ǃD.ǃJCB=class extends ǃJ.ǃq{constructor(ae,de,re,oe,ye){if(ǃJ.ǃk(ae,ǃJ.ǃU.ǃD),ǃJ.ǃq$(de,ǃJ.ǃU.ǃ$B),ǃJ.ǃJO(re),ǃJ.ǃUg(oe),ǃJ.ǃBA(ye),ye=Object.assign({},ne,ye),ǃJ.ǃJO(ye.ǃQ),super(),this.ǃJuL=ae,this.ǃJuz=null,this.ǃNZ=ǃJ.ǃU.ǃH("ui-menuitem",this.ǃJuL.ǃJCa()),this.ǃNZ.setAttribute("role","menuitem"),this.ǃOlK=null,this.ǃZG=!1,this.ǃJUd=0,this.ǃJuk=0,this.ǃJuV=!1,this.ǃJuK=!0,this.ǃ$q=null,this.ǃOdG=null,de){this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,{icon:de,ǃOdC:ye.ǃOG},this.ǃNZ);let Oe=de.ǃUH();Oe&&Oe.ǃUU().then(le=>{this.ǃ$q&&(this.ǃ$q.ǃOdz(le),this.ǃ$q=null,this.ǃOdG=le)})}else this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,this.ǃJuL.ǃJfb(),this.ǃNZ);this.ǃJuo=ǃJ.ǃU.ǃH("span",this.ǃNZ,null,"menu-item-text"),this.ǃJuo.textContent=re,this.ǃJJt=oe,this.ǃJue=!!ye.ǃE,this.ǃJur=!!ye.ǃJuB,ye.bold&&this.ǃNZ.setAttribute("bold",""),ye.ǃQ&&this.ǃNZ.setAttribute("title",ye.ǃQ),this.ǃZE=Oe=>this.ǃaS(Oe),this.ǃNZ.addEventListener(_332,this.ǃZE),this.ǃYy=Oe=>this.ǃaH(Oe),this.ǃNZ.addEventListener("UIPointerUp",this.ǃYy,!0),this.ǃNZ.addEventListener("contextmenu",ǃJ.ǃU.ǃOQc)}ǃih(){this.ǃJuz&&(this.ǃJuz.ǃyY(),this.ǃJuz=null),this.ǃ$q&&(this.ǃ$q.ǃyY(),this.ǃ$q=null),ǃJ.ǃU.ǃHU(this.ǃOdG),this.ǃOdG=null,this.ǃJuo&&(ǃJ.ǃU.ǃHU(this.ǃJuo),this.ǃJuo=null),this.ǃNZ&&(this.ǃNZ.removeEventListener("contextmenu",ǃJ.ǃU.ǃOQc),this.ǃNZ.removeEventListener("UIPointerUp",this.ǃYy,!0),this.ǃYy=null,this.ǃNZ.removeEventListener(_332,this.ǃZE),this.ǃZE=null,ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃNZ=null),this.ǃJuL=null,this.ǃJJt=null,this.ǃOlK=null,ǃJ.ǃyY(this)}ǃ_(){return this.ǃNZ}ǃJCZ(){return this.ǃJuz}ǃJCl(){return this.ǃJuL}ǃbj(){let ae=this.ǃJCl();do{if(ae.ǃJCA())return ae;ae=ae.ǃJCp().ǃJCl()}while(ae);throw new Error("unable to get root menu")}ǃJCF(){return!0}ǃJCW(){return!!this.ǃJCZ()}ǃJuH(ae){return(ae=!!ae,ae)?(this.ǃOlK=this.ǃNZ.getBoundingClientRect(),this.ǃOlK):(this.ǃOlK||(this.ǃOlK=this.ǃNZ.getBoundingClientRect()),this.ǃOlK)}ǃJCP(ae){ǃJ.ǃBA(ae);this.ǃJuz||(assert(!this.ǃJJt,"submenu items should not have a callback function"),this.ǃJuz=ǃJ.ǃb(ǃJ.ǃU.ǃD.ǃJuI,this,this.ǃJuL.ǃJfb(),ae))}ǃJuN(){}ǃJuG(){}ǃaS(ae){this.ǃJuL.ǃXb()&&(!this.ǃJuL.ǃJuq()&&ae.preventDefault(),this.ǃJUd=ae.detail.clientX,this.ǃJuk=ae.detail.clientY,ae.detail.ǃOS$&&this.ǃJuL.ǃJuu(this))}ǃYJ(ae){if(!ǃJ.ǃ_O(this)&&!this.ǃbj().ǃJCd()){let de=this.ǃJuK||this.ǃJuL.ǃJCY(),re=this.ǃV$(ae.detail.clientX,ae.detail.clientY,de);!this.ǃJuV&&re?(this.ǃJuV=!0,this.ǃJuK=!1,this.ǃJuN(ae)):this.ǃJuV&&!re&&(this.ǃJuV=!1,this.ǃJuG(ae))}}ǃaH(ae){if(this.ǃJuL.ǃXb()&&(ae.preventDefault(),ae.detail.ǃTd!==ǃJ.ǃDO.ǃTs)){if(ae.detail.ǃOS$){let oe=this.ǃJCl();if(!this.ǃV$(ae.detail.clientX,ae.detail.clientY))return void oe.ǃJuu(null);if(oe.ǃJCY())return void oe.ǃJuu(null)}if(this.ǃJCW())return void((!this.ǃJuz.ǃXb()||ae.detail.ǃOS$)&&this.ǃJuL.ǃJuR());let de=ae.detail.clientX,re=ae.detail.clientY;return ǃJ.ǃ_i(this.ǃJUd,this.ǃJuk,de,re)>=25?void this.ǃJuL.ǃJuu(null):void(this.ǃJJt&&(this.ǃJue?this.ǃJJt():window.setTimeout(this.ǃJJt,16)),!this.ǃJur&&ǃJ.ǃU.ǃD.ǃJHx())}}ǃV$(ae,de,re){ǃJ.ǃXq(ae),ǃJ.ǃXq(de);let oe=this.ǃJCl();return oe.ǃJuc()||!oe.ǃJut()||oe.ǃJuX()?!1:(re=!!re,this.ǃOlK=this.ǃJuH(re),ae>=this.ǃOlK.left&&de>=this.ǃOlK.top&&aethis.ǃaH(re),this.ǃZE=re=>this.ǃaS(re),this.ǃJuL=ǃJ.ǃb(ǃJ.ǃU.ǃD,this.ǃJCL,this.ǃJyj,this.ǃJuE,de)}ǃyY(){this.ǃJul(),this.ǃJux(),this.ǃJCL.removeEventListener("UIPointerUp",this.ǃYy),this.ǃJCL.removeEventListener(_333,this.ǃZE),this.ǃ$q&&(this.ǃ$q.ǃyY(),this.ǃ$q=null),ǃJ.ǃU.ǃHU(this.ǃOdG),this.ǃOdG=null,this.ǃJuL&&!ǃJ.ǃ_O(this.ǃJuL)&&this.ǃJuL.ǃ_()&&this.ǃJuL.ǃyY(),this.ǃJuL=null,this.ǃYy=null,this.ǃZE=null,this.ǃJCL=null,this.ǃJuE=null,ǃJ.ǃyY(this)}ǃJCl(){return this.ǃJuL}ǃJuM(){return this.ǃJuT}ǃbj(){let ie=this.ǃJuE.ǃJCl();do{if(ie.ǃJCA())return ie;ie=ie.ǃJCp().ǃJCl()}while(ie);throw new Error("unable to get root menu")}ǃw(ie,ae,de,re){return this.ǃJuA(),this.ǃJCl().ǃw(ie,ae,de,re)}ǃW(){return this.ǃJuA(),this.ǃJCl().ǃW()}ǃp(ie,ae){return this.ǃJuA(),this.ǃJCl().ǃp(ie,ae)}ǃxn(){this.ǃJCl().ǃxn()}ǃxX(){this.ǃJCl().ǃxX()}ǃJCs(){this.ǃJCl().ǃJCs()}ǃaS(){this.ǃJuD=!1,this.ǃJui=!1}ǃaH(ie){if(!(ie.detail.ǃOS$&&this.ǃJuL.ǃJuc())&&ie.detail.ǃTd!==ǃJ.ǃDO.ǃTs){if(ie.detail.ǃOS$){let ae=this.ǃJuE.ǃJCl();if(this.ǃJuE.ǃV$(ie.detail.clientX,ie.detail.clientY)){if(this.ǃbj().ǃJCd()&&(this.ǃJuD||this.ǃJui))return void ae.ǃJuu(null);if(ae.ǃJCY())return void ae.ǃJuu(null)}else return void ae.ǃJuu(null)}this.ǃJuh()}}ǃJuN(){this.ǃJul(),this.ǃJux(),this.ǃJuZ=setTimeout(()=>{this.ǃJuv()},300)}ǃJuG(){this.ǃJua=!1,this.ǃJup=!1,this.ǃJul(),this.ǃJux(),this.ǃJHI=setTimeout(()=>{this.ǃJuP(this.ǃJuY,this.ǃJuQ)},500)}ǃYJ(ie){if(!ǃJ.ǃ_O(this)){this.ǃJuY=ie.detail.clientX,this.ǃJuQ=ie.detail.clientY;let ae=this.ǃJuw||!this.ǃJuL.ǃJCY(),de=this.ǃJuE.ǃV$(this.ǃJuY,this.ǃJuQ,ae);!this.ǃJua&&de?(this.ǃJua=!0,this.ǃJuw=!1,this.ǃbj().ǃJCd()||this.ǃJuN(ie)):this.ǃJua&&!de&&(this.ǃJua=!1,this.ǃbj().ǃJCd()?this.ǃJuD=!0:this.ǃJuG(ie)),de=this.ǃJuL.ǃV$(this.ǃJuY,this.ǃJuQ),!this.ǃJup&&de?this.ǃJup=!0:this.ǃJup&&!de&&(this.ǃJup=!1,this.ǃbj().ǃJCd()?this.ǃJui=!0:this.ǃJuG(ie))}}ǃJul(){-1!==this.ǃJuZ&&(clearTimeout(this.ǃJuZ),this.ǃJuZ=-1)}ǃJux(){-1!==this.ǃJHI&&(clearTimeout(this.ǃJHI),this.ǃJHI=-1)}ǃXb(){return this.ǃJCl().ǃXb()}ǃJuh(){this.ǃJuE.ǃJCl().ǃJu$(!1);let ie=this.ǃJCl();if(!ie.ǃXb()){this.ǃJul(),this.ǃJux();let ae=this.ǃJuE.ǃJCl();if(0===this.ǃJuj&&0===this.ǃJuF&&0===this.ǃJuW){let de=ae.ǃJCw(),re=this.ǃJuE.ǃJuH(!0);this.ǃJuj=re.left+re.width,this.ǃJuF=re.top-de,this.ǃJuW=re.bottom+de}else if(ae.ǃJCY()){let de=ae.ǃJCw(),re=this.ǃJuE.ǃJuH(!0);this.ǃJuj=re.left+re.width,this.ǃJuF=re.top-de,this.ǃJuW=re.bottom+de}ie.ǃHa(this.ǃJuj,this.ǃJuF,this.ǃJuW)}}ǃJuv(){this.ǃJuZ=-1;this.ǃJCl().ǃXb()||(this.ǃJuE.ǃJCl().ǃJuR(),this.ǃJuh())}ǃJuP(ie,ae){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),this.ǃJHI=-1;let de=this.ǃJCl();de.ǃXb()&&!de.ǃJub(ie,ae)&&de.ǃOV()}ǃJuA(){if(!this.ǃJuT){this.ǃJCL.setAttribute("sub-menu","full");let ie=app.ǃJt("menu-submenu");this.ǃ$q=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,ie,this.ǃJCL);let ae=ie.ǃUH();ae&&ae.ǃUU().then(re=>{this.ǃ$q&&(this.ǃ$q.ǃOdz(re),this.ǃ$q=null,this.ǃOdG=re)}),this.ǃJCL.addEventListener("UIPointerUp",this.ǃYy),this.ǃJCL.addEventListener(_333,this.ǃZE),this.ǃJuT=!0;const de=this.ǃbj();if(de.ǃJCd()){const re=this.ǃJCl(),oe=re.ǃJCs();oe&&re.ǃJuO(),re.ǃw(app.ǃJCx("back",de.ǃJfb()),lang("common.back"),()=>this.ǃJud(),{ǃJuB:!0}),re.ǃW(),oe&&re.ǃxn()}}}ǃJud(){this.ǃJuE.ǃJCl().ǃJu$(!0),this.ǃJuL.ǃOV()}}}{function ee(te,ne){return!!te==!!ne}ǃJ.ǃU.ǃJus=class{constructor(...ne){if(2>ne.length)throw new Error("missing arguments");this.ǃJJt=null,this.ǃOau="",this.ǃJ_O=ne[ne.length-2],this.ǃJ_J=!1,this.ǃJ_y=!1,this.ǃJ_f=!1,this.ǃJ_S=!1,this.ǃJ_n=!1;let ie=[];for(let de=0,re=ne.length-2,oe;dethis.ǃi$(ne,!1)),te.addEventListener("external-keydown",ne=>this.ǃi$(ne.ǃqp,!0))}ǃJ__(te){ǃJ.ǃbw(te,ǃJ.ǃU.ǃJus),ǃJ.ǃXn(this.ǃJ_C,te)}ǃJ_m(){this.ǃJ_u=!1}ǃi$(te,ne){if(window.C3_IsPopupWindow)return void window.opener.postMessage({type:"keydown-event",event:{key:te.key,keyCode:te.keyCode,keyIdentifier:te.keyIdentifier,keyLocation:te.keyLocation,code:te.code,location:te.location,char:te.char,charCode:te.charCode,which:te.which,ctrlKey:te.ctrlKey,shiftKey:te.shiftKey,altKey:te.altKey,metaKey:te.metaKey}},location.origin);const ie=ǃJ.ǃiq();for(let ae of this.ǃJ_C)if((!ie||ae.ǃJ_R())&&ae.ǃJ_g(te))return this.ǃJ_u=!0,ae.ǃJ_H(this.ǃOdr),ǃJ.ǃU.ǃD.ǃJHx(),void(!ne&&this.ǃJ_u&&te.preventDefault())}},"use strict",ǃJ.ǃJ_b=class extends ǃJ.ǃq{constructor(te,ne){super(),ǃJ.ǃk(te,ǃJ.ǃOyv.constructor),ǃJ.ǃJO(ne),this.ǃOYF=te,this.ǃOYj=ne,this.ǃJ_c=`@font-face {
font-family: '${this.ǃOYj}';
src: `,this.ǃJ_t=null,this.ǃJ_$="",this.ǃJ_q=[],this.ǃJ_M=null}ǃyg(){return this.ǃOYj}ǃOQT(te,ne,ie,ae){ǃJ.ǃk(te,Blob),ǃJ.ǃJO(ne),ǃJ.ǃJO(ie);let de=URL.createObjectURL(te);this.ǃJ_q.push(de),this.ǃJ_c+=`url('${de}')`;let re=ǃJ.ǃOyv.ǃJ_B(ne,ie);re&&(this.ǃJ_c+=` format('${re}')`),this.ǃJ_c+=ae?";\n}":", "}ǃJ_L(){return this.ǃJ_t=new Blob([this.ǃJ_c],{type:"text/css"}),this.ǃJ_$=URL.createObjectURL(this.ǃJ_t),ǃJ.ǃOIU(this.ǃJ_$).then(te=>{return this.ǃJ_M=te,this.ǃJ_M.setAttribute("data-comment","webfont-"+this.ǃOYj),document.fonts.load("1em '"+this.ǃOYj+"'")}).then(()=>{return ǃJ.ǃOyv.ǃJ_z(this),this})}ǃyY(){this.ǃOYF.ǃJ_k(this),this.ǃOYF=null;for(let te of this.ǃJ_q)URL.revokeObjectURL(te);ǃJ.ǃXX(this.ǃJ_q),this.ǃJ_$&&(URL.revokeObjectURL(this.ǃJ_$),this.ǃJ_$=""),this.ǃJ_t=null,ǃJ.ǃU.ǃHU(this.ǃJ_M),this.ǃJ_M=null}},"use strict";{const _335="application/font-woff";class ee extends ǃJ.Event.ǃU_{constructor(){super(),this.ǃJ_V=new Map}ǃJ_K(te,ne){if(ǃJ.ǃJO(te),ǃJ.ǃCl(ne),this.ǃJ_V.has(te.toLowerCase()))return Promise.resolve(this.ǃJ_V.get(te.toLowerCase()));let ie=ǃJ.ǃb(ǃJ.ǃJ_b,this,te);ne=this.ǃJ_o(ne);for(let ae=0,de=ne.length,re;ae{ee.ǃOFg.ǃOjW()&&!ee.ǃOFg.ǃOW_()||ǃJ.ǃU.ǃJ_I.ǃJ_r()}),ǃJ.ǃU.ǃOSt.addEventListener("hidemodal",ee=>{ee.ǃOFg.ǃOjW()&&!ee.ǃOFg.ǃOW_()||ǃJ.ǃU.ǃJ_I.ǃyY()}),ǃJ.ǃU.ǃJ_I=class{constructor(){}static ǃyY(){for(let te of this.ǃJ_N.values()){for(let ne of te)ne.ǃih(!1);ǃJ.ǃXX(te)}}static ǃJ_G(te){ǃJ.ǃk(te,ǃJ.ǃU.Notification);let ne=this.ǃJ_N.get(te.ǃJ_E());ne.unshift(te);for(let ie=0;ie=this.ǃJ_D+1){let ie=ne[ne.length-1];this.ǃJ_i(ie),ie.ǃJHK()}}static ǃJ_a(te){ǃJ.ǃk(te,ǃJ.ǃU.Notification),this.ǃJ_i(te)}static ǃJ_p(te){ǃJ.ǃk(te,ǃJ.ǃU.Notification);let ne=this.ǃJ_N.get(te.ǃJ_E());for(let ie=0,ae;iethis.ǃJ_x(),this.ǃJ_A=()=>this.ǃJ_h(),this.ǃJ_v=()=>this.ǃJ_P(),this.ǃJ_d=()=>this.ǃJHK(),this.ǃJ_s=Je=>this.ǃJmO(Je),this.ǃJmJ=Je=>this.ǃJmy(Je),this.ǃNZ=ǃJ.ǃU.ǃH("ui-notification"),this.ǃJmf=null,this.ǃJ_F&&(this.ǃJmf=ǃJ.ǃU.ǃOSt.ǃOjb()),this.ǃJmf?(this.ǃJmf.ǃ_().appendChild(this.ǃNZ),this.ǃJmf.addEventListener(_343,this.ǃJ_l),this.ǃJmf.addEventListener("widthchange",this.ǃJ_l),this.ǃJmf.addEventListener("heightchange",this.ǃJ_l),this.ǃJmf.addEventListener(_340,this.ǃJ_v),this.ǃJmf.addEventListener(_345,this.ǃJ_A),this.ǃJmf.addEventListener(_342,this.ǃJ_v),this.ǃJmf.addEventListener(_346,this.ǃJ_A)):(document.body.appendChild(this.ǃNZ),this.ǃNZ.setAttribute("document-parent","")),this.ǃNZ.setAttribute("align",this.ǃJHr),this.ǃNZ.style.transitionDuration=Oe.duration,this.ǃJHG=ǃJ.ǃU.ǃH("ui-notification-icon",this.ǃNZ),this.ǃJHE=ǃJ.ǃU.ǃH("ui-notification-text",this.ǃNZ),this.ǃAD=ǃJ.ǃb(ǃJ.ǃU.ǃ$M,re),this.ǃJHG.appendChild(this.ǃAD.ǃ_()),this.ǃxp=ǃJ.ǃU.ǃH("ui-notification-title",this.ǃJHE),this.ǃzj=ǃJ.ǃU.ǃH("ui-notification-body",this.ǃJHE),ǃJ.ǃHe(this.ǃxp,this.ǃJHk),ǃJ.ǃHe(this.ǃzj,this.ǃJHV),this.ǃt_=this.ǃNZ.getBoundingClientRect().height,ǃJ.ǃU.ǃJ_I.ǃJ_G(this),app.ǃlN()||(this.ǃNZ.style.transition="none"),this.ǃJmS()}ǃih(re=!0){ǃJ.ǃ_O(this)||this.ǃuP||(this.ǃuP=!0,re=!!re,re&&ǃJ.ǃU.ǃJ_I.ǃJ_a(this),this.ǃJmf&&(this.ǃJmf.removeEventListener(_343,this.ǃJ_l),this.ǃJmf.removeEventListener("widthchange",this.ǃJ_l),this.ǃJmf.removeEventListener("heightchange",this.ǃJ_l),this.ǃJmf.removeEventListener(_340,this.ǃJ_v),this.ǃJmf.removeEventListener(_345,this.ǃJ_A),this.ǃJmf.removeEventListener(_342,this.ǃJ_v),this.ǃJmf.removeEventListener(_346,this.ǃJ_A),this.ǃJmf=null,this.ǃJ_l=null,this.ǃJ_v=null,this.ǃJ_A=null),this.ǃNZ.removeEventListener(_341,this.ǃJ_s),this.ǃJ_s=null,this.ǃNZ.removeEventListener(_341,this.ǃJmJ),this.ǃJmJ=null,this.ǃJux(),this.ǃAD&&this.ǃAD.ǃyY(),ǃJ.ǃU.ǃHU(this.ǃxp),ǃJ.ǃU.ǃHU(this.ǃJHG),ǃJ.ǃU.ǃHU(this.ǃJHE),ǃJ.ǃU.ǃHU(this.ǃNZ),this.ǃJHG=null,this.ǃJHE=null,this.ǃAD=null,this.ǃxp=null,this.ǃzj=null,this.ǃNZ=null,ǃJ.ǃyY(this))}ǃJ_E(){return this.ǃJHr}ǃJmn(){return this.ǃJHe}ǃJ_Q(){return this.ǃt_+5}ǃJ_T(re){ǃJ.ǃXq(re),re>=ǃJ.ǃU.ǃJ_I.ǃJ_D-1&&(re=ǃJ.ǃU.ǃJ_I.ǃJ_D-1);this.ǃJ_W===re||(this.ǃJ_W=re,this.ǃJ_x())}ǃJmS(){this.ǃJ_x(),this.ǃNZ.setAttribute("showing",this.ǃJHr),app.ǃlN()?this.ǃNZ.addEventListener(_341,this.ǃJ_s):ǃJ.ǃU.ǃJ_I.ǃJ_p(this)}ǃJmO(re){ǃJ.ǃ_O(this)||this.ǃuP||"transform"!==re.propertyName||(this.ǃNZ.removeEventListener(_341,this.ǃJ_s),ǃJ.ǃU.ǃJ_I.ǃJ_p(this))}ǃJmX(){this.ǃJ_Z||(this.ǃJ_Z=!0,this.ǃNZ.removeAttribute("showing"),(this.ǃJHr===_336||this.ǃJHr===_338)&&this.ǃNZ.setAttribute("hiding-left",""),(this.ǃJHr===_337||this.ǃJHr===_339)&&this.ǃNZ.setAttribute("hiding-right",""),app.ǃlN()?this.ǃNZ.addEventListener(_341,this.ǃJmJ):this.ǃih())}ǃJmy(re){ǃJ.ǃ_O(this)||this.ǃuP||"transform"!==re.propertyName||(this.ǃNZ.removeEventListener(_341,this.ǃJmJ),this.ǃih())}ǃJux(){clearTimeout(this.ǃJHI)}ǃJ_w(){this.ǃJHI=setTimeout(this.ǃJ_d,this.ǃJHe)}ǃJmR(){this.ǃNZ.setAttribute("no-position-transitions","")}ǃJ_P(){this.ǃNZ.setAttribute(_344,"")}ǃJ_h(){this.ǃNZ.removeAttribute(_344)}ǃJmg(){return!this.ǃNZ.hasAttribute(_344)}ǃJHK(){this.ǃJux(),this.ǃJmg()||(this.ǃJ_h(),this.ǃJmR()),this.ǃJmX()}ǃJ_x(){let re=this.ǃNZ.style,oe=ǃJ.ǃU.ǃJ_I.ǃJ_Y(this);if(this.ǃJmf&&!this.ǃJmf.ǃOWn()){let ye=this.ǃNZ.ownerDocument,Oe=ye.defaultView,le=Oe.innerWidth||ye.documentElement.clientWidth||ye.body.clientWidth,Je=Oe.innerHeight||ye.documentElement.clientHeight||ye.body.clientHeight,ue=this.ǃJmf.ǃOZS(),pe=this.ǃJmf.ǃOZn(),he=le-(ue+this.ǃJmf.ǃfI()),ge=Je-(pe+this.ǃJmf.ǃfG());this.ǃJHr===_336?(re.left=`${-ue}px`,re.top=`${-pe+oe}px`):this.ǃJHr===_337?(re.right=`${-he}px`,re.top=`${-pe+oe}px`):this.ǃJHr===_338?(re.left=`${-ue}px`,re.bottom=`${-ge+oe}px`):this.ǃJHr===_339&&(re.right=`${-he}px`,re.bottom=`${-ge+oe}px`)}else this.ǃJHr===_336?(re.left=`${0}px`,re.top=`${oe}px`):this.ǃJHr===_337?(re.right=`${0}px`,re.top=`${oe}px`):this.ǃJHr===_338?(re.left=`${0}px`,re.bottom=`${oe}px`):this.ǃJHr===_339&&(re.right=`${0}px`,re.bottom=`${oe}px`)}static ǃHa(re,oe,ye,Oe){if(app.ǃJmH()){let le=ǃJ.ǃU.ǃOSt.ǃOjb();le&&le.ǃOjW()&&!Oe.ǃJ_j&&!le.ǃOWu()||ǃJ.ǃb(ǃJ.ǃU.Notification,re,oe,ye,Oe,ae)}}}}{const _347="ui-loader-message",ee=ǃJ.ǃO(),te=ee.getElementById("ui-loader-template");ǃJ.ǃU.ǃC$=class{constructor(ae){ǃJ.ǃq$(ae,HTMLElement),this.ǃJmU=document.createElement("ui-loader");const de=te.content.cloneNode(!0);this.ǃJmU.appendChild(de),ae&&ae.appendChild(this.ǃJmU)}ǃJX(ae){ae?this.ǃJmU.removeAttribute("hidden",""):this.ǃJmU.setAttribute("hidden","")}ǃCz(){this.ǃJmU.setAttribute("pause","")}ǃJmC(){this.ǃJmU.removeAttribute("pause")}get ǃCq(){return this.ǃJmU.getElementsByTagName(_347)[0].innerHTML}set ǃCq(ae){this.ǃJmU.getElementsByTagName(_347)[0].innerHTML=ae}remove(){this.ǃJmU.remove()}}}"use strict",ǃJ.ǃM=ǃJ.ǃb(ǃJ.Event.ǃU_),ǃJ.ǃJmu=class{constructor(te,ne,ie){if(ǃJ.ǃJO(te),ǃJ.ǃFt(ne),ǃJ.ǃOrg(ie,"#document"),ie===document)throw new Error("component cannot reference main document");this.ǃOmx=te,this.ǃJm_=ne,this.ǃJmm=ie,this.ǃJmb=ie.documentURI}ǃyY(){this.ǃOmx=null,this.ǃJm_=null,this.ǃJmm=null,this.ǃJmb=null}ǃdQ(){return this.ǃOmx}ǃL(){return this.ǃJm_}ǃO(){return this.ǃJmm}ǃJmc(){return this.ǃJmb}},"use strict";{const _348="preview-debug",_349="loop-condition",_350="trigger-condition",_351="instance-variable",ee="c3-user-settings",ne=["account","account-login","account-logout","account-register","add","add-folder","addon","align-bottom","align-top","align-left","align-vcenter","align-hcenter","align-right","align-edge-left","align-edge-top","align-edge-right","align-edge-bottom","ambiguous","animation","array","arrow-pointer","audio","back","bar","bookmark","breakpoint","breakpoint-active-left","breakpoint-active-right","brush","bucket","build","check","clear","cloud","close","closed-folder","code","collapsed","color","copy","crop","cross","cut","debug","delete","delete-all","delete-column","delete-row","dictionary","disabled","dot","download","dpad","dropbox","duplicate","edit","ellipse","eraser","error","event-comment","event-sheet","exit-fullscreen","expanded","export","external","eye-dropper","file","font","frame","fullscreen","generic-file","globe","global-variable","google-drive","goto","grid","hand","help","home","html","image","import","import-files","insert-row-before","insert-row-after","insert-column-before","insert-column-after",_351,"info","invisible","javascript","json","language","layers","layout","line","link","local-variable","location-pin","locked",_349,"menu-submenu","mirror-h","mirror-v","move-down","move-up","new","offline","onedrive","open","open-folder","open-popup","origin","paste","pause","play","polygon","preview",_348,"print","rectangle","rectangle-select","redo","reload","remove","replace","resize","reverse","rotate-acw","rotate-cw","save","scirra-store","scroll","search","security-shield","select-all","send-to-back","send-to-front","settings","sound","space-horiz","space-vert","star","statistics","style","thumbnail","timer","toggle-background","tools","touch",_350,"undo","unlocked","update","video","videogame","view","visible","warning","xml","z-order","zoom-in","zoom-out","zoom-reset",{name:"effect",color:"#590094"},{name:"family-overlay",color:"#F05300"},{name:"image-point",color:"#FF0000"},{name:"invert",color:"#FF0000"},{ǃJmt:"origin",name:"origin-cursor",color:"#FFFFFF"},{ǃJmt:"image-point",name:"image-point-cursor",color:"#00FFFF"}],ie=new Set(["save","undo","redo","preview",_348,"menu-submenu","account"]),ae=new Set(["animation","event-sheet",_351,"layout",_349,_350]),de=new Set(["effect"]),re=!!window.C3_IsPopupWindow;let oe=!1;ǃJ.ǃOjv=class extends ǃJ.Event.ǃU_{constructor(){if(super(),oe)throw new Error("only one C3.App should be instantiated");oe=!0,this.ǃOYj="MyApp",this.ǃJm$=new Map,this.ǃJmq=re,this.ǃJmM=null,this.ǃJmB=0,this.ǃJmL=0,this.ǃJmz=0,this.ǃJmk={},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{this.ǃJmB=Math.round(1.54*ǃJ.ǃU.ǃJl()),this.ǃJmL=2*this.ǃJmB,this.ǃJmz=2*this.ǃJmL}):(this.ǃJmB=Math.round(1.54*ǃJ.ǃU.ǃJl()),this.ǃJmL=2*this.ǃJmB,this.ǃJmz=2*this.ǃJmL),this.ǃJmV=new Map,this.ǃJmK=new Map,window.addEventListener("beforeunload",Oe=>this.ǃJmo(Oe)),window.app=this}ǃJme(){this.ǃJmq||(this.ǃJmM=ǃJ.ǃb(ǃJ.ǃU.ǃJs,"main",!1),ǃJ.ǃOD?this.ǃJmr():this.ǃJmM.ǃOle(!0))}ǃJmr(){C3_HideLoader(),ǃJ.ǃU.ǃOYd("supportMessage"),ǃJ.ǃU.ǃOYs("noscript"),ǃJ.ǃU.ǃOYs("script[src$='supportCheck.js']"),ǃJ.ǃU.ǃOYs("script[src$='es2015check.js']"),ǃJ.ǃOD||this.ǃJmM.ǃOle(!1)}ǃyg(){return this.ǃOYj}ǃOQf(){return this.ǃJmM}ǃ$L(){return this.ǃJmB}ǃi(){return this.ǃJmL}ǃ$z(){return this.ǃJmz}ǃJfb(Oe){switch(ǃJ.ǃJO(Oe),Oe){case"small":return this.ǃJmB;case"medium":return this.ǃJmL;case"large":return this.ǃJmz;default:throw new Error("invalid icon size specifier");}}ǃOWn(){return this.ǃJmq}ǃJmI(){let Oe=new ǃJ.Event("load");return Oe.app=this,Oe.ǃUm=this.ǃJmq,ǃJ.ǃM.ǃOiE(Oe)}ǃz(Oe){return ǃJ.ǃJO(Oe),this.ǃJm$.get(Oe)}ǃJmN(Oe){return ǃJ.ǃJO(Oe),this.ǃJm$.has(Oe)}ǃB(Oe,le,Je){if(ǃJ.ǃJO(Oe),ǃJ.ǃFt(le),ǃJ.ǃOrg(Je,"#document"),Je===document)throw new Error("cannot register component with main document");if(this.ǃJmN(Oe))throw new Error(`component id '${Oe}' already registered`);let ue=ǃJ.ǃb(ǃJ.ǃJmu,Oe,le,Je);this.ǃJm$.set(Oe,ue);let pe=new ǃJ.Event("registercomponent");pe.app=this,pe.ǃJmG=ue,ǃJ.ǃM.dispatchEvent(pe)}ǃJmE(Oe){if(ǃJ.ǃJO(Oe),!this.ǃJmN(Oe))throw new Error(`component id '${Oe}' is not registered`);let le=this.ǃJm$.get(Oe),Je=new ǃJ.Event("unregistercomponent");Je.app=this,Je.ǃJmG=le,ǃJ.ǃM.dispatchEvent(Je),le.ǃyY(),this.ǃJm$.delete(Oe)}ǃOI(Oe){const le=this.ǃz(Oe);return le?le.ǃL():null}ǃJmT(){return{}}ǃJmD(){return localforage.getItem(ee).then(Oe=>{return this.ǃJmk=Object.assign({},this.ǃJmT(),Oe),this.ǃJmk})}ǃZb(){return this.ǃJmk}ǃJmi(){return localforage.setItem(ee,this.ǃJmk).catch(Oe=>this.ǃHB(Oe))}ǃJma(Oe){ǃJ.ǃJO(Oe);let le=new ǃJ.Event(Oe);le.ǃJHn=this.ǃJmk,this.dispatchEvent(le)}ǃlN(){return!0}ǃORT(){return!0}ǃJmp(){let Oe=document.body.parentElement,le=this.ǃORT()?"highgfxmode":"lowgfxmode",Je=this.ǃORT()?"lowgfxmode":"highgfxmode";Oe.removeAttribute(Je),Oe.setAttribute(le,"")}ǃJmw(){this.ǃJmp(),ǃJ.ǃOoG();const Oe=[];for(const le of ie)Oe.push(this.ǃJmV.get(le).ǃ_Z());return Promise.all(Oe)}ǃJmY(){const Oe=[];for(const[le,Je]of this.ǃJmV.entries())ie.has(le)||Oe.push(Je.ǃ_Z());return Promise.all(Oe)}ǃJmQ(){let Oe=ǃJ.ǃU.ǃOQB.ǃOQz();for(let le of ne){let Je,ue=null,pe=null;"object"==typeof le?(Je=le.name,ue=le.color,pe=le.ǃJmt):(Je=le,ae.has(le)&&(ue="#398C00"));let he=pe?pe:Je,ge=ǃJ.ǃb(ǃJ.ǃU.ǃOP$,this,`${Oe}${he}.svg`,{name:Je,color:ue});this.ǃJmV.set(Je,ge)}}ǃJt(Oe){ǃJ.ǃJO(Oe);let le=this.ǃJmV.get(Oe);if(le)return le.ǃyX();throw new Error(`common small icon '${Oe}' not found`)}ǃa(Oe){ǃJ.ǃJO(Oe);let le=this.ǃJmV.get(Oe);if(le)return le.ǃOdW();throw new Error(`common medium icon '${Oe}' not found`)}ǃ$A(Oe){ǃJ.ǃJO(Oe);let le=this.ǃJmV.get(Oe);if(le)return le.ǃOdZ();throw new Error(`common large icon '${Oe}' not found`)}ǃJmj(Oe,le){switch(ǃJ.ǃJO(Oe),ǃJ.ǃJO(le),le){case"small":return this.ǃJt(Oe);case"medium":return this.ǃa(Oe);case"large":return this.ǃ$A(Oe);default:throw new Error("invalid icon size");}}ǃJCx(Oe,le){return ǃJ.ǃJO(Oe),ǃJ.ǃXq(le),le<=this.ǃ$L()?this.ǃJt(Oe):le<=this.ǃi()?this.ǃa(Oe):this.ǃ$A(Oe)}ǃOdY(Oe){let le=ǃJ.ǃU.ǃOQB.ǃOQz();if(Oe.startsWith(le)){let Je=ǃJ.ǃOrK(Oe).toLowerCase();return ǃJ.ǃU.ǃOQB.ǃOQk().then(ue=>{return ue.hasOwnProperty(Je)?ue[Je]:ǃJ.ǃOIg(Oe)})}return ǃJ.ǃOIg(Oe)}ǃJC$(Oe){return ǃJ.ǃJO(Oe),this.ǃJmV.get(Oe)||null}ǃyR(Oe){if(ǃJ.ǃJO(Oe),this.ǃJmK.has(Oe))return this.ǃJmK.get(Oe);let le=``,Je=new Blob([le],{type:"image/svg+xml"}),ue=URL.createObjectURL(Je),pe=ǃJ.ǃb(ǃJ.ǃU.ǃOP$,app,ue,{});return this.ǃJmK.set(Oe,pe),pe}ǃJmF(){return this.ǃJmV.values()}ǃJmo(){}ǃHB(Oe){console.warn("Storage write error:",Oe)}}}"use strict",ǃJ.ǃRN={},"use strict";{function ee(ne,ie){return ne[0]===ie[0]&&ne[1]===ie[1]&&ne[2]===ie[2]&&ne[3]===ie[3]&&ne[4]===ie[4]&&ne[5]===ie[5]&&ne[6]===ie[6]&&ne[7]===ie[7]&&ne[8]===ie[8]&&ne[9]===ie[9]&&ne[10]===ie[10]&&ne[11]===ie[11]&&ne[12]===ie[12]&&ne[13]===ie[13]&&ne[14]===ie[14]&&ne[15]===ie[15]}function te(ne,ie){return ne[0]===ie[0]&&ne[1]===ie[1]&&ne[2]===ie[2]&&ne[3]===ie[3]}const _352="\tvTex = aTex;",_353="void main(void) {",_354="uniform highp mat4 matP;",_355="uniform lowp vec4 color;",_356="uniform highp mat4 matMV;",_357="varying mediump vec2 vTex;",_358="attribute mediump vec2 aTex;",_359="uniform lowp sampler2D samplerFront;";ǃJ.ǃRN.ǃJmW=class{constructor(ie,ae,de,re,oe,ye){this.ǃJmZ=ie,this.ǃOfL=ae,this.ǃJml=de,this.name=oe,this.index=ye,this.ǃJmx=ie.getAttribLocation(de,"aPos"),this.ǃJmA=ie.getAttribLocation(de,"aTex"),this.ǃJmh=ie.getAttribLocation(de,"aPoints"),-1!==this.ǃJmx&&(ie.bindBuffer(ie.ARRAY_BUFFER,this.ǃOfL.ǃJmv),ie.vertexAttribPointer(this.ǃJmx,2,ie.FLOAT,!1,0,0),ie.enableVertexAttribArray(this.ǃJmx)),-1!==this.ǃJmA&&(ie.bindBuffer(ie.ARRAY_BUFFER,this.ǃOfL.ǃJmP),ie.vertexAttribPointer(this.ǃJmA,2,ie.FLOAT,!1,0,0),ie.enableVertexAttribArray(this.ǃJmA)),-1!==this.ǃJmh&&(ie.bindBuffer(ie.ARRAY_BUFFER,this.ǃOfL.ǃJmd),ie.vertexAttribPointer(this.ǃJmh,4,ie.FLOAT,!1,0,0),ie.enableVertexAttribArray(this.ǃJmh)),ie.bindBuffer(ie.ARRAY_BUFFER,null),this.ǃJms=ie.getUniformLocation(de,"matP"),this.ǃJbO=ie.getUniformLocation(de,"matMV"),this.ǃJbJ=ie.getUniformLocation(de,"opacity"),this.ǃJby=ie.getUniformLocation(de,"color"),this.ǃJbf=ie.getUniformLocation(de,"samplerFront"),this.ǃJbS=ie.getUniformLocation(de,"pointTexStart"),this.ǃJbn=ie.getUniformLocation(de,"pointTexEnd"),this.ǃJbX=ie.getUniformLocation(de,"samplerBack"),this.ǃJbR=ie.getUniformLocation(de,"destStart"),this.ǃJbg=ie.getUniformLocation(de,"destEnd"),this.ǃJbH=ie.getUniformLocation(de,"srcStart"),this.ǃJbU=ie.getUniformLocation(de,"srcEnd"),this.ǃJbC=ie.getUniformLocation(de,"seconds"),this.ǃJbu=ie.getUniformLocation(de,"pixelWidth"),this.ǃJb_=ie.getUniformLocation(de,"pixelHeight"),this.ǃJbm=ie.getUniformLocation(de,"layerScale"),this.ǃJbb=ie.getUniformLocation(de,"layerAngle"),this.ǃJbc=ie.getUniformLocation(de,"viewStart"),this.ǃJbt=ie.getUniformLocation(de,"viewEnd"),this.ǃJb$=ie.getUniformLocation(de,"layoutStart"),this.ǃJbq=ie.getUniformLocation(de,"layoutEnd"),this.ǃJbM=!!(this.ǃJbu||this.ǃJb_||this.ǃJbC||this.ǃJbX||this.ǃJbR||this.ǃJbg||this.ǃJbH||this.ǃJbU||this.ǃJbm||this.ǃJbb||this.ǃJbc||this.ǃJbt||this.ǃJb$||this.ǃJbq),this.ǃJbB=re.ǃJbB||0,this.ǃJbL=re.ǃJbL||0,this.ǃJbz=!!re.ǃJbz,this.ǃJbk=!!re.ǃJbk,this.ǃJbV=!!re.ǃJbV,this.ǃWz=re.ǃWz||[],this.ǃJbK=-999,this.ǃJbo=-999,this.ǃJbe=vec4.ǃO$B(1,1,1,1),this.ǃJbr=0,this.ǃJbI=0,this.ǃJbN=1,this.ǃJbG=1,this.ǃJbE=0,this.ǃJbT=0,this.ǃJbD=1,this.ǃJbi=1,this.ǃJba=0,this.ǃJbp=0,this.ǃJbw=0,this.ǃJbY=0,this.ǃJbQ=1,this.ǃJbj=0,this.ǃJbF=0,this.ǃJbW=0,this.ǃJbZ=0,this.ǃJbl=0,this.ǃJbx=0,this.ǃJbA=0,this.ǃJbh=0,this.ǃJbv=0,this.ǃJbP=0,this.ǃJbd=[],this.ǃJbs=mat4.create(),this.ǃJcO=!1,this.ǃJbJ&&ie.uniform1f(this.ǃJbJ,1),this.ǃJby&&ie.uniform4f(this.ǃJby,1,1,1,1),this.ǃJbf&&ie.uniform1i(this.ǃJbf,0),this.ǃJbX&&ie.uniform1i(this.ǃJbX,1),this.ǃJbS&&ie.uniform2f(this.ǃJbS,0,0),this.ǃJbn&&ie.uniform2f(this.ǃJbn,1,1),this.ǃJbR&&ie.uniform2f(this.ǃJbR,0,0),this.ǃJbg&&ie.uniform2f(this.ǃJbg,1,1),this.ǃJbH&&ie.uniform2f(this.ǃJbH,0,0),this.ǃJbU&&ie.uniform2f(this.ǃJbU,0,0),this.ǃJbm&&ie.uniform1f(this.ǃJbm,1),this.ǃJbb&&ie.uniform1f(this.ǃJbb,0),this.ǃJbc&&ie.uniform2f(this.ǃJbc,0,0),this.ǃJbt&&ie.uniform2f(this.ǃJbt,0,0),this.ǃJb$&&ie.uniform2f(this.ǃJb$,0,0),this.ǃJbq&&ie.uniform2f(this.ǃJbq,0,0);for(let Oe=0,le=this.ǃWz.length,Je;Oe=this.ǃtu||0>=this.ǃt_)throw new Error("invalid texture data size");if(oe.ǃ_x){let pe=document.createElement("canvas");pe.width=this.ǃtu,pe.height=this.ǃt_;let he=pe.getContext("2d");he.drawImage(re,0,0,this.ǃtu,this.ǃt_),re=pe}let ye=ǃJ.ǃOIv(this.ǃtu)&&ǃJ.ǃOIv(this.ǃt_),Oe=this.ǃuA.ǃJtS();if(this.ǃtu>Oe||this.ǃt_>Oe)throw new Error("texture data exceeds maximum texture size");let le=this.ǃuA.ǃEc(),Je=this.ǃuA.ǃJtn();this.ǃuY=le.createTexture(),le.bindTexture(le.TEXTURE_2D,this.ǃuY),oe.ǃOep&&le.pixelStorei(le.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);let ue=ee(this.ǃJcs,le);if(!this.ǃuA.ǃOfD()&&!ye&&this.ǃJcv){if(null===re)throw new Error("cannot pass null data when creating a NPOT tiled texture without NPOT support");if(re instanceof ArrayBuffer&&(re=new ImageData(new Uint8ClampedArray(re),this.ǃtu,this.ǃt_)),re instanceof ImageData){let ge=document.createElement("canvas");ge.width=this.ǃtu,ge.height=this.ǃt_;let me=ge.getContext("2d");me.putImageData(re,0,0),re=ge}let pe=document.createElement("canvas");pe.width=ǃJ.ǃRi(this.ǃtu),pe.height=ǃJ.ǃRi(this.ǃt_);let he=pe.getContext("2d");he.imageSmoothingEnabled=this.ǃJcd,he.drawImage(re,0,0,this.ǃtu,this.ǃt_,0,0,pe.width,pe.height),le.texImage2D(le.TEXTURE_2D,0,ue.ǃJcZ,ue.format,ue.type,pe)}else if(2<=Je){let pe;pe=this.ǃJtO?Math.floor(Math.log2(Math.max(this.ǃtu,this.ǃt_))+1):1,le.texStorage2D(le.TEXTURE_2D,pe,ue.ǃJcW,this.ǃtu,this.ǃt_),re instanceof ArrayBuffer?le.texSubImage2D(le.TEXTURE_2D,0,0,0,this.ǃtu,this.ǃt_,ue.format,ue.type,new Uint8Array(re)):null!==re&&le.texSubImage2D(le.TEXTURE_2D,0,0,0,ue.format,ue.type,re)}else re instanceof ArrayBuffer?le.texImage2D(le.TEXTURE_2D,0,ue.ǃJcZ,this.ǃtu,this.ǃt_,0,ue.format,ue.type,new Uint8Array(re)):null===re?le.texImage2D(le.TEXTURE_2D,0,ue.ǃJcZ,this.ǃtu,this.ǃt_,0,ue.format,ue.type,null):le.texImage2D(le.TEXTURE_2D,0,ue.ǃJcZ,ue.format,ue.type,re);null!==re&&this.ǃJtX(le),le.bindTexture(le.TEXTURE_2D,null),this.ǃuA.ǃJtR(),this.ǃJty=1,ae.add(this)}ǃJtg(re,oe){ǃJ.ǃk(re,ArrayBuffer),ǃJ.ǃXq(oe);let ye=re.byteLength;if(ye!==4*(this.ǃtu*this.ǃt_))throw new Error(_365);this.ǃJcA=!0;let Oe=this.ǃuA.ǃEc(),le=ee(this.ǃJcs,Oe),Je=4*this.ǃtu;oe=Math.floor(oe/Je)*Je,assert(0ye&&(ve=ye-me,Ue=ve/Je),he.push(ǃJ.ǃgi(()=>this.ǃJtH(Oe,re,le,me,ve,be,Ue)))}return Promise.all(he).then(()=>{return this.ǃuY?(this.ǃuA.ǃJtU(),Oe.bindTexture(Oe.TEXTURE_2D,this.ǃuY),this.ǃJtX(Oe),Oe.bindTexture(Oe.TEXTURE_2D,null),this.ǃuA.ǃJtR(),this.ǃJcA=!1,this):null})}ǃJtH(re,oe,ye,Oe,le,Je,ue){this.ǃuY&&(this.ǃuA.ǃJtU(),re.bindTexture(re.TEXTURE_2D,this.ǃuY),re.texSubImage2D(re.TEXTURE_2D,0,0,Je,this.ǃtu,ue,ye.format,ye.type,new Uint8Array(oe,Oe,le)),re.bindTexture(re.TEXTURE_2D,null),this.ǃuA.ǃJtR())}ǃJtC(){return this.ǃJcA}ǃJtu(re,oe,ye){if(ǃJ.ǃXq(re),ǃJ.ǃXq(oe),ǃJ.ǃBA(ye),ye=Object.assign({},ie,ye),this.ǃuY)throw new Error(_366);if(ǃJ.ǃJO(ye.ǃ_H),ǃJ.ǃJO(ye.ǃJcl),this.ǃJcv=!!ye.ǃ_X,this.ǃJcP=ye.ǃ_H,this.ǃJcd=!!ye.ǃ_R,this.ǃJcs=ye.ǃJcl,this.ǃJtO=!!ye.ǃOfa,!te.has(this.ǃJcs))throw new Error(_362);this.ǃJch=!1,this.ǃtu=Math.floor(re),this.ǃt_=Math.floor(oe);let Oe=ǃJ.ǃOIv(this.ǃtu)&&ǃJ.ǃOIv(this.ǃt_),le=this.ǃuA.ǃJtS();if(0>=this.ǃtu||0>=this.ǃt_)throw new Error("invalid texture size");if(this.ǃtu>le||this.ǃt_>le)throw new Error("texture exceeds maximum texture size");if(!this.ǃuA.ǃOfD()&&this.ǃJcv&&!Oe)throw new Error(_367);let Je=this.ǃuA.ǃEc(),ue=this.ǃuA.ǃJtn();this.ǃuY=Je.createTexture(),Je.bindTexture(Je.TEXTURE_2D,this.ǃuY),Je.pixelStorei(Je.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);let pe=ee(this.ǃJcs,Je),he=2<=ue?pe.ǃJcW:pe.ǃJcZ;Je.texImage2D(Je.TEXTURE_2D,0,he,this.ǃtu,this.ǃt_,0,pe.format,pe.type,null),this.ǃJtX(Je),Je.bindTexture(Je.TEXTURE_2D,null),this.ǃuA.ǃJtR(),this.ǃJty=1,ae.add(this)}ǃJt_(re){if(this.ǃJtJ===_361)return this.ǃJch?re.NICEST:re.FASTEST;if("low"===this.ǃJtJ)return re.FASTEST;if("high"===this.ǃJtJ)return re.NICEST;throw new Error(_363)}ǃJtX(re){let oe=ǃJ.ǃOIv(this.ǃtu)&&ǃJ.ǃOIv(this.ǃt_);if(!this.ǃJcv)re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_S,re.CLAMP_TO_EDGE),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_T,re.CLAMP_TO_EDGE);else if("repeat-x"===this.ǃJcP)re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_S,re.REPEAT),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_T,re.CLAMP_TO_EDGE);else if("repeat-y"===this.ǃJcP)re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_S,re.CLAMP_TO_EDGE),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_T,re.REPEAT);else if("repeat"===this.ǃJcP)re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_S,re.REPEAT),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_WRAP_T,re.REPEAT);else throw new Error("invalid tile type");this.ǃJcd?(re.texParameteri(re.TEXTURE_2D,re.TEXTURE_MAG_FILTER,re.LINEAR),(oe||this.ǃuA.ǃOfD())&&this.ǃJtO?(re.hint(re.GENERATE_MIPMAP_HINT,this.ǃJt_(re)),re.generateMipmap(re.TEXTURE_2D),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_MIN_FILTER,re.LINEAR_MIPMAP_LINEAR)):(re.texParameteri(re.TEXTURE_2D,re.TEXTURE_MIN_FILTER,re.LINEAR),this.ǃJtO=!1)):(re.texParameteri(re.TEXTURE_2D,re.TEXTURE_MAG_FILTER,re.NEAREST),re.texParameteri(re.TEXTURE_2D,re.TEXTURE_MIN_FILTER,re.NEAREST),this.ǃJtO=!1)}ǃJtm(re){if(!(re instanceof HTMLImageElement)&&!(re instanceof HTMLCanvasElement)&&!(re instanceof ImageData)&&!(re instanceof ImageBitmap))throw new Error(_364);if(!this.ǃuY||0>=this.ǃJty)throw new Error("texture not created");if(this.ǃJch)throw new Error("cannot update static texture");let oe=re.width,ye=re.height,Oe=this.ǃuA.ǃJtn(),le=this.ǃuA.ǃEc();le.bindTexture(le.TEXTURE_2D,this.ǃuY),le.pixelStorei(le.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);let Je=ee(this.ǃJcs,le),ue=2<=Oe?Je.ǃJcW:Je.ǃJcZ;try{if(this.ǃtu===oe&&this.ǃt_===ye){let pe=ǃJ.ǃOIv(this.ǃtu)&&ǃJ.ǃOIv(this.ǃt_);le.texSubImage2D(le.TEXTURE_2D,0,0,0,Je.format,Je.type,re),(pe||this.ǃuA.ǃOfD())&&this.ǃJtO&&(le.hint(le.GENERATE_MIPMAP_HINT,this.ǃJt_(le)),le.generateMipmap(le.TEXTURE_2D))}else{this.ǃtu=oe,this.ǃt_=ye;let pe=ǃJ.ǃOIv(this.ǃtu)&&ǃJ.ǃOIv(this.ǃt_);if(!this.ǃuA.ǃOfD()&&this.ǃJcv&&!pe)throw new Error(_367);le.texImage2D(le.TEXTURE_2D,0,ue,Je.format,Je.type,re),(pe||this.ǃuA.ǃOfD())&&this.ǃJtO&&(le.hint(le.GENERATE_MIPMAP_HINT,this.ǃJt_(le)),le.generateMipmap(le.TEXTURE_2D))}}catch(pe){console.error("Error updating WebGL texture: ",pe)}le.bindTexture(le.TEXTURE_2D,null),this.ǃuA.ǃJtR()}ǃJtb(){if(0=this.ǃJty)throw new Error("no more references");this.ǃJty--}ǃJtq(){return this.ǃJty}ǃfI(){return this.ǃtu}ǃfG(){return this.ǃt_}ǃJtM(){return this.ǃJch}ǃOnU(){let re=this.ǃtu*this.ǃt_;switch(this.ǃJcs){case _360:re*=4;break;case"rgb8":re*=3;break;case"rgba4":case"rgb5_a1":case"rgb565":re*=2;}return this.ǃJtO&&(re+=Math.floor(re/3)),re}static ǃuV(){ae.clear()}static ǃJtB(){return ae.values()}}}{const _368="WebGLRenderTarget framebuffer is incomplete",ee={ǃ_R:!0,alpha:!0,ǃJtL:!0};let te=new Set;ǃJ.ǃRN.ǃOnv=class{constructor(ie){ǃJ.ǃk(ie,ǃJ.ǃRN.ǃ$X),this.ǃuA=ie,this.ǃJtz=null,this.ǃuY=null,this.ǃJtk=null,this.ǃtu=0,this.ǃt_=0,this.ǃJcd=!0,this.ǃJtV=!0,this.ǃJtK=!0}ǃo(ie,ae,de){if(ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),ǃJ.ǃBA(de),de=Object.assign({},ee,de),this.ǃuY||this.ǃJtk)throw new Error("already created render target");if(this.ǃJcd=!!de.ǃ_R,this.ǃJtV=!!de.alpha,this.ǃJtK=!!de.ǃJtL,2>this.ǃuA.ǃJtn()&&(this.ǃJtK=!0),this.ǃtu=ie,this.ǃt_=ae,0>=this.ǃtu||0>=this.ǃt_)throw new Error("invalid render target size");let re=this.ǃuA.ǃEc();if(this.ǃJtz=re.createFramebuffer(),re.bindFramebuffer(re.FRAMEBUFFER,this.ǃJtz),this.ǃJtK){this.ǃuY=this.ǃuA.ǃOfi(this.ǃtu,this.ǃt_,{ǃ_R:this.ǃJcd,ǃJcl:this.ǃJtV?"rgba8":"rgb8",ǃOfa:!1});let oe=this.ǃuY.ǃJtc();re.framebufferTexture2D(re.FRAMEBUFFER,re.COLOR_ATTACHMENT0,re.TEXTURE_2D,oe,0)}else this.ǃJtk=re.ǃJto(),re.bindRenderbuffer(re.RENDERBUFFER,this.ǃJtk),re.renderbufferStorage(re.RENDERBUFFER,this.ǃJtV?re.RGBA8:re.RGB8,this.ǃtu,this.ǃt_),re.framebufferRenderbuffer(re.FRAMEBUFFER,re.COLOR_ATTACHMENT0,re.RENDERBUFFER,this.ǃJtk),re.bindRenderbuffer(re.RENDERBUFFER,null);assert(re.checkFramebufferStatus(re.FRAMEBUFFER)===re.FRAMEBUFFER_COMPLETE,_368),re.bindFramebuffer(re.FRAMEBUFFER,null),te.add(this)}ǃJte(ie,ae){this.ǃtu=ie,this.ǃt_=ae;let de=this.ǃuA.ǃEc();de.bindFramebuffer(de.FRAMEBUFFER,this.ǃJtz),this.ǃuY?this.ǃuY.ǃJtm(new ImageData(this.ǃtu,this.ǃt_)):(de.bindRenderbuffer(de.RENDERBUFFER,this.ǃJtk),de.renderbufferStorage(de.RENDERBUFFER,this.ǃJtV?de.RGBA8:de.RGB8,this.ǃtu,this.ǃt_),de.bindRenderbuffer(de.RENDERBUFFER,null)),assert(de.checkFramebufferStatus(de.FRAMEBUFFER)===de.FRAMEBUFFER_COMPLETE,_368),de.bindFramebuffer(de.FRAMEBUFFER,null)}ǃJtb(){if(!this.ǃuY&&!this.ǃJtk)throw new Error("already deleted render target");te.delete(this);let ie=this.ǃuA.ǃEc();ie.bindFramebuffer(ie.FRAMEBUFFER,this.ǃJtz),this.ǃuY?(ie.framebufferTexture2D(ie.FRAMEBUFFER,ie.COLOR_ATTACHMENT0,ie.TEXTURE_2D,null,0),this.ǃuA.ǃus(this.ǃuY),this.ǃuY=null):this.ǃJtk&&(ie.framebufferRenderbuffer(ie.FRAMEBUFFER,ie.COLOR_ATTACHMENT0,ie.RENDERBUFFER,null),ie.deleteRenderbuffer(this.ǃJtk),this.ǃJtk=null),ie.bindFramebuffer(ie.FRAMEBUFFER,null),ie.deleteFramebuffer(this.ǃJtz),this.ǃuA.ǃJcG=null,this.ǃJtz=null}ǃJcN(){return this.ǃJtz}ǃfk(){return this.ǃuY}ǃOXW(){return this.ǃJcd}ǃOmD(){return{ǃ_R:this.ǃJcd,alpha:this.ǃJtV,ǃJtL:this.ǃJtK}}ǃJcI(){return this.ǃuY?this.ǃuY.ǃJtc():null}ǃOnU(){return this.ǃuY?this.ǃuY.ǃOnU():this.ǃtu*this.ǃt_*(this.ǃJtV?4:3)}static ǃOnh(ie,ae){ie.ǃJtU();let de=ie.ǃOX_(),re,oe,ye;ae?(re=ae.ǃtu,oe=ae.ǃt_,ye=ae.ǃJtz):(re=ie.ǃfI(),oe=ie.ǃfG(),ye=null);let Oe=ie.ǃEc();Oe.bindFramebuffer(Oe.FRAMEBUFFER,ye);let le=new ImageData(re,oe);Oe.readPixels(0,0,re,oe,Oe.RGBA,Oe.UNSIGNED_BYTE,new Uint8Array(le.data.buffer));let Je=ǃJ.ǃOIo(le);return Oe.bindFramebuffer(Oe.FRAMEBUFFER,null),ie.ǃJtr=null,ie.ǃJcG=null,ie.ǃOfV(de),Je}static ǃuV(){te.clear()}static ǃJtI(){return te.values()}static ǃJtN(ie,ae){for(let de of te)de.ǃJte(ie,ae)}}}{function ee($e,Ae){return $e[0]===Ae[0]&&$e[1]===Ae[1]&&$e[2]===Ae[2]&&$e[3]===Ae[3]&&$e[4]===Ae[4]&&$e[5]===Ae[5]&&$e[6]===Ae[6]&&$e[7]===Ae[7]&&$e[8]===Ae[8]&&$e[9]===Ae[9]&&$e[10]===Ae[10]&&$e[11]===Ae[11]&&$e[12]===Ae[12]&&$e[13]===Ae[13]&&$e[14]===Ae[14]&&$e[15]===Ae[15]}function te($e,Ae){return $e[0]===Ae[0]&&$e[1]===Ae[1]&&$e[2]===Ae[2]&&$e[3]===Ae[3]}const _369="(unavailable)",_370="experimental-webgl",_371="WEBGL_lose_context not supported",_372="pushed too many line caps - check push/pop pairs",ne={ǃOXQ:"default"},ie=new Set(["default","low-power","high-performance"]),re=8e3,ye=3*(re/2),Oe=8e3;let ue=window.devicePixelRatio||1;const me=3,Ee=7;const Ne=new Float32Array([0,0,1,0,1,1,0,1]);let Re=[0,0,0,0,0,0,0,0],Ce=vec3.ǃO$B(0,0,0),De=vec3.ǃO$B(0,0,0),Fe=mat4.create(),Ze=new ǃJ.ǃfw,Ie=new ǃJ.Rect,_e=null;ǃJ.ǃOD&&(window.ǃJtG=function(){return _e?void _e.ǃJtE():void console.warn(_371)},window.ǃJtT=function(){return _e?void _e.ǃJtD():void console.warn(_371)}),ǃJ.ǃRN.ǃ$X=class{constructor(Ae,qe){if(qe=Object.assign({},ne,qe),ǃJ.ǃJO(qe.ǃOXQ),!ie.has(qe.ǃOXQ))throw new Error("invalid power preference");let Te=null,Be=!1,Ye={alpha:!1,depth:!1,antialias:!1,powerPreference:qe.ǃOXQ,failIfMajorPerformanceCaveat:!0};if(Te=Ae.getContext("webgl2",Ye)||Ae.getContext("webgl",Ye)||Ae.getContext(_370,Ye),Te||(Be=!0,Ye.failIfMajorPerformanceCaveat=!1,Te=Ae.getContext("webgl",Ye)||Ae.getContext(_370,Ye)),!Te)throw new Error("failed to initialise WebGL context");this.ǃJmZ=Te,this.ǃJti=this.ǃJmZ.getContextAttributes(),this.ǃJta=this.ǃJmZ.getParameter(Te.VERSION),this.version=1;let He=this.ǃJta.indexOf("WebGL ");if(0<=He){let je=parseFloat(this.ǃJta.substr(He+6));isFinite(je)&&1<=je&&(this.version=je)}this.ǃJtp=2<=this.version,this.width=0,this.height=0,this.ǃJtw=vec3.ǃO$B(0,0,100),this.ǃJtY=vec3.ǃO$B(0,0,0),this.ǃJtQ=vec3.ǃO$B(0,1,0),this.ǃJtj=vec3.ǃO$B(1,1,1),this.ǃJtF=mat4.create(),this.ǃJtW=mat4.create(),this.ǃJtZ=mat4.create(),this.ǃJco=mat4.create(),this.ǃJmv=null,this.ǃJmP=null,this.ǃJtl=null,this.ǃJmd=null,this.ǃJtx=new Float32Array(2*re),this.ǃJtA=new Uint16Array(ye),this.ǃJth=new Float32Array(2*re),this.ǃJtv=new Float32Array(4*Oe),this.ǃJtP=0,this.ǃJtd=0,this.ǃJts=0,this.ǃJcV=[],this.ǃJ$O=-1,this.ǃJcK=-1,this.ǃJcB=null,this.ǃJ$J=[],this.ǃJ$y=0,this.ǃJ$f=0,this.ǃJtr=null,this.ǃJcG=null,this.ǃJ$S=vec4.ǃO$B(1,1,1,1),this.ǃJcM=vec4.ǃO$B(1,1,1,1),this.ǃJ$n=null,this.ǃJcr=null,this.ǃJ$X=0,this.ǃJ$R=0,this.lineWidth=1,this.ǃJ$g=[this.lineWidth],this.lineCap=1,this.ǃJ$H=[this.lineCap],this.ǃJ$U=0.5,this.ǃJ$C=[this.ǃJ$U],this.ǃJcD=!1,this.ǃJci=-1,this.ǃJca=-1,this.ǃJ$u=new ǃJ.Rect,this.ǃJcw=new ǃJ.Rect,this.ǃJ$_=-1,this.ǃJ$m=0,this.ǃJ$b=0,this.ǃJ$c=_369,this.ǃJ$t=_369,this.extensions=[],this.ǃJ$$=Be,this.ǃJ$q(),this.ǃJ$M();let ze=this.ǃJmZ.getExtension("WEBGL_debug_renderer_info");ze&&(this.ǃJ$c=this.ǃJmZ.getParameter(ze.UNMASKED_VENDOR_WEBGL),this.ǃJ$t=this.ǃJmZ.getParameter(ze.UNMASKED_RENDERER_WEBGL)),ǃJ.ǃOD&&(_e=this.ǃJmZ.getExtension("WEBGL_lose_context"))}ǃJ$M(){let Ae=this.ǃJmZ;vec4.set(this.ǃJ$S,1,1,1,1),vec4.set(this.ǃJcM,1,1,1,1),this.ǃJ$n=null,this.ǃJcr=null,this.ǃJtP=0,this.ǃJts=0,ǃJ.ǃXX(this.ǃJ$J),this.ǃJ$y=0,this.ǃJ$f=0,this.ǃJ$O=-1,this.ǃJcK=-1,this.ǃJcB=null,this.ǃJtr=null,this.ǃJcG=null,this.ǃJ$u.set(0,0,1,1),this.ǃJcw.set(0,0,1,1),Ae.clearColor(0,0,0,0),Ae.clear(Ae.COLOR_BUFFER_BIT),Ae.enable(Ae.BLEND),Ae.blendFunc(Ae.ONE,Ae.ONE_MINUS_SRC_ALPHA),this.ǃJ$X=Ae.ONE,this.ǃJ$R=Ae.ONE_MINUS_SRC_ALPHA,Ae.disable(Ae.CULL_FACE),Ae.disable(Ae.STENCIL_TEST),Ae.disable(Ae.DITHER),Ae.disable(Ae.DEPTH_TEST),this.ǃJmd=Ae.createBuffer(),Ae.bindBuffer(Ae.ARRAY_BUFFER,this.ǃJmd),Ae.bufferData(Ae.ARRAY_BUFFER,this.ǃJtv.byteLength,Ae.DYNAMIC_DRAW),this.ǃJmv=Ae.createBuffer(),Ae.bindBuffer(Ae.ARRAY_BUFFER,this.ǃJmv),Ae.bufferData(Ae.ARRAY_BUFFER,this.ǃJtx.byteLength,Ae.DYNAMIC_DRAW),this.ǃJmP=Ae.createBuffer(),Ae.bindBuffer(Ae.ARRAY_BUFFER,this.ǃJmP),Ae.bufferData(Ae.ARRAY_BUFFER,this.ǃJth.byteLength,Ae.DYNAMIC_DRAW),this.ǃJtl=Ae.createBuffer(),Ae.bindBuffer(Ae.ELEMENT_ARRAY_BUFFER,this.ǃJtl),Ae.bufferData(Ae.ELEMENT_ARRAY_BUFFER,this.ǃJtA,Ae.STATIC_DRAW),ǃJ.ǃXX(this.ǃJcV);const qe=ǃJ.ǃRN.ǃJmW;let Te=qe.ǃJcn();this.ǃJ$B({src:qe.ǃJcX()},Te,""),this.ǃJ$B({src:qe.ǃJcg()},qe.ǃJcR(),""),this.ǃJ$B({src:qe.ǃJcH()},Te,""),this.ǃJ$B({src:qe.ǃJcU()},Te,""),Ae.activeTexture(Ae.TEXTURE0),Ae.bindTexture(Ae.TEXTURE_2D,null),this.ǃJ$_=Ae.getParameter(Ae.MAX_TEXTURE_SIZE);let Be=Ae.getParameter(Ae.ALIASED_POINT_SIZE_RANGE);this.ǃJ$m=Be[0],this.ǃJ$b=Be[1],2048=2*re-8&&(this.ǃJtU(),Ae=0),1===this.ǃJ$f)this.ǃJ$J[this.ǃJ$y-1].ǃJcm+=6;else{let qe=this.ǃJ$e(1);qe.ǃJc_=3*(Ae/2),qe.ǃJcm=6,this.ǃJ$f=1}}ǃfw(Ae){this.ǃJ$T();let qe=this.ǃJtP,Te=this.ǃJtd,Be=this.ǃJtx,Ye=this.ǃJth;Be.set(Ae.ǃsT(),qe),qe+=8,Ye.set(Ne,Te),Te+=8,this.ǃJtP=qe,this.ǃJtd=Te}ǃJ$E(Ae,qe,Te,Be,Ye,He,ze,je){this.ǃJ$T();let Pe=this.ǃJtP,Me=this.ǃJtd,Ve=this.ǃJtx,We=this.ǃJth;Ve[Pe++]=Ae,Ve[Pe++]=qe,Ve[Pe++]=Te,Ve[Pe++]=Be,Ve[Pe++]=Ye,Ve[Pe++]=He,Ve[Pe++]=ze,Ve[Pe++]=je,We.set(Ne,Me),Me+=8,this.ǃJtP=Pe,this.ǃJtd=Me}ǃfE(Ae,qe){this.ǃJ$T();let Te=this.ǃJtP,Be=this.ǃJtd,Ye=this.ǃJtx,He=this.ǃJth;Ye.set(Ae.ǃsT(),Te),Te+=8;let ze=qe.ǃsT();He[Be++]=ze[0],He[Be++]=ze[1],He[Be++]=ze[2],He[Be++]=ze[1],He[Be++]=ze[2],He[Be++]=ze[3],He[Be++]=ze[0],He[Be++]=ze[3],this.ǃJtP=Te,this.ǃJtd=Be}ǃbO(Ae,qe){this.ǃJ$T();let Te=this.ǃJtP,Be=this.ǃJtd,Ye=this.ǃJtx,He=this.ǃJth;Ye.set(Ae.ǃsT(),Te),Te+=8,He.set(qe.ǃsT(),Be),Be+=8,this.ǃJtP=Te,this.ǃJtd=Be}ǃJ$D(){if(mat4.ǃRV(Fe,this.ǃJtZ),vec3.ǃRV(Ce,this.ǃJtw),vec3.ǃRV(De,this.ǃJtY),this.ǃJtw[0]=0,this.ǃJtw[1]=0,this.ǃJtw[2]=100,this.ǃJtY[0]=0,this.ǃJtY[1]=0,this.ǃJtY[2]=0,this.ǃOf_(),this.ǃOfb(),this.ǃJcD){let Ae=this.width/2/ue,qe=this.height/2/ue;Ie.set(-Ae,qe,-Ae+this.ǃJci,qe-this.ǃJca),Ze.ǃRK(Ie),Ie.set(0,0,this.ǃJci/this.width,this.ǃJca/this.height),this.ǃfE(Ze,Ie)}else{let Ae=this.width/2/ue,qe=this.height/2/ue;this.ǃOgI(-Ae,qe,Ae,-qe)}mat4.ǃRV(this.ǃJtW,Fe),vec3.ǃRV(this.ǃJtw,Ce),vec3.ǃRV(this.ǃJtY,De),this.ǃOfb()}ǃmp(Ae){let qe=Ae.length/2;if(3>qe)throw new Error("need at least 3 points");let Te=qe-2,Ye=Ae[0],He=Ae[1],ze,je,Pe,Me,Ve,We,Ke,Qe;for(ze=0;ze=this.ǃJ$g.length)throw new Error("cannot pop last line width - check push/pop pairs");this.ǃJ$g.pop(),this.lineWidth=this.ǃJ$g[this.ǃJ$g.length-1]}ǃJ$v(){this.lineCap=0,this.ǃJ$H[this.ǃJ$H.length-1]=0}ǃJ$P(){this.lineCap=1,this.ǃJ$H[this.ǃJ$H.length-1]=0}ǃJ$d(){this.lineCap=2,this.ǃJ$H[this.ǃJ$H.length-1]=0}ǃJ$s(){if(100<=this.ǃJ$H.length)throw new Error(_372);this.ǃJ$H.push(0),this.lineCap=0}ǃSN(){if(100<=this.ǃJ$H.length)throw new Error(_372);this.ǃJ$H.push(1),this.lineCap=1}ǃOgO(){if(100<=this.ǃJ$H.length)throw new Error(_372);this.ǃJ$H.push(2),this.lineCap=2}ǃSi(){if(1>=this.ǃJ$H.length)throw new Error("cannot pop last line cap - check push/pop pairs");this.ǃJ$H.pop(),this.lineCap=this.ǃJ$H[this.ǃJ$H.length-1]}ǃOfk(Ae){this.ǃJ$U=Ae,this.ǃJ$C[this.ǃJ$C.length-1]=Ae}ǃJqO(){return this.ǃJ$U}ǃSI(Ae){if(100<=this.ǃJ$C.length)throw new Error("pushed too many line offsets - check push/pop pairs");this.ǃJ$C.push(Ae),this.ǃJ$U=Ae}ǃSD(){if(1>=this.ǃJ$C.length)throw new Error("cannot pop last line offset - check push/pop pairs");this.ǃJ$C.pop(),this.ǃJ$U=this.ǃJ$C[this.ǃJ$C.length-1]}ǃXc(Ae){if(!this.ǃJ$u.ǃtE(Ae)){this.ǃJ$u.ǃRV(Ae);let qe=this.ǃJ$e(13);qe.ǃJcc.set(Ae.ǃsT(),0),this.ǃJ$f=0}}ǃRX(Ae,qe,Te,Be){this.ǃJts>=Oe-4&&this.ǃJtU();let Ye=this.ǃJts,He=this.ǃJtv;if(2===this.ǃJ$f)this.ǃJ$J[this.ǃJ$y-1].ǃJcm++;else{let ze=this.ǃJ$e(8);ze.ǃJc_=Ye,ze.ǃJcm=1,this.ǃJ$f=2}He[Ye++]=Ae,He[Ye++]=qe,He[Ye++]=Te,He[Ye++]=Be,this.ǃJts=Ye}ǃOXS(Ae){if(this.ǃJ$O!==Ae){let qe=this.ǃJ$e(9);qe.ǃJc_=Ae,this.ǃJ$O=Ae,this.ǃJ$f=0}}ǃSc(){this.ǃOXS(0)}ǃfi(){this.ǃOXS(2)}ǃSG(){this.ǃOXS(3)}ǃJqJ(Ae){let qe=this.ǃJcV[Ae];return!!(qe.ǃJbR||qe.ǃJbg)}ǃJqy(Ae){let qe=this.ǃJcV[Ae];return!!(qe.ǃJbR||qe.ǃJbg||qe.ǃJbz)}ǃJqf(Ae){return this.ǃJcV[Ae].ǃJbk}ǃJqS(Ae){let qe=this.ǃJcV[Ae];return 0!==qe.ǃJbB||0!==qe.ǃJbL}ǃJqn(Ae){return this.ǃJcV[Ae].ǃJbB}ǃJqX(Ae){return this.ǃJcV[Ae].ǃJbL}ǃJqR(Ae,qe){return this.ǃJcV[Ae].ǃWz[qe][2]}ǃJqg(Ae){return this.ǃJcV[Ae].ǃJbV}ǃOXM(Ae,qe,Te,Be,Ye,He,ze,je,Pe,Me,Ve){let We=this.ǃJcV[this.ǃJ$O];if(We.ǃJbM||Ve.length){let Ke=this.ǃJ$e(10);if(We.ǃJbM){let Qe=Ke.ǃJcc;Qe[0]=He,Qe[1]=ze,Qe.set(qe.ǃsT(),2),Qe[6]=je,Qe[7]=Pe,Qe.set(Te.ǃsT(),8),Qe.set(Be.ǃsT(),12);let Ge=Ke.ǃJcu;Ge.set(Ye.ǃsT(),0),Ke.ǃJc_=Me,We.ǃJbX?(Ae&&(Ae=Ae.ǃJcI()),assert(!Ae||!this.ǃJtr||Ae!==this.ǃJtr.ǃJcI(),"Warning: setting texture1 to current render texture"),Ke.ǃJcb=Ae):Ke.ǃJcb=null}Ve.length&&ǃJ.ǃmx(Ke.ǃJct,Ve),this.ǃJ$f=0}}ǃOXC(Ae,qe,Te,Be){let Ye=this.ǃJ$e(Ee);Ye.ǃJc_=0,Ye.ǃJcc||(Ye.ǃJcc=mat4.create());let He=Ye.ǃJcc;He[0]=Ae,He[1]=qe,He[2]=Te,He[3]=Be,this.ǃJ$f=0}ǃbi(Ae){let qe=this.ǃJ$e(Ee);qe.ǃJc_=0,qe.ǃJcc||(qe.ǃJcc=mat4.create());let Te=qe.ǃJcc,Be=Ae.ǃsT();Te[0]=Be[0],Te[1]=Be[1],Te[2]=Be[2],Te[3]=Be[3],this.ǃJ$f=0}ǃOXu(Ae,qe,Te,Be){if(!(0>Te||0>Be)){let Ye=this.ǃJ$e(Ee);Ye.ǃJc_=1,Ye.ǃJcc||(Ye.ǃJcc=mat4.create());let He=Ye.ǃJcc;He[0]=Ae,He[1]=qe,He[2]=Te,He[3]=Be,this.ǃJ$f=0}}ǃOfI(){this.ǃJtU(),this.ǃJmZ.flush()}ǃud(){return!this.ǃJmZ||this.ǃJmZ.isContextLost()}ǃuV(){ǃJ.ǃRN.ǃOCC.ǃuV(),ǃJ.ǃRN.ǃOnv.ǃuV()}ǃOXh(){this.ǃJ$M(),this.ǃRC(this.width,this.height,!0)}ǃ_n(Ae,qe){this.ǃJtU();let Te=ǃJ.ǃb(ǃJ.ǃRN.ǃOCC,this);return Te.ǃJtf(Ae,qe),this.ǃJ$n=null,Te}ǃOCH(Ae,qe){return qe=Object.assign({},qe),ǃJ.ǃOeG.ǃOea?(qe.ǃOep=!1,createImageBitmap(Ae,{premultiplyAlpha:"premultiply"}).then(Te=>this.ǃ_n(Te,qe))):ǃJ.ǃOeG.ImageBitmap?createImageBitmap(Ae).then(Te=>this.ǃ_n(Te,qe)):ǃJ.ǃgi(()=>this.ǃ_n(Ae,qe))}ǃJqH(Ae,qe){this.ǃJtU();let Te=ǃJ.ǃb(ǃJ.ǃRN.ǃOCC,this);return Te.ǃJtf(null,qe),Te.ǃJtg(Ae,262144)}ǃOfi(Ae,qe,Te){this.ǃJtU();let Be=ǃJ.ǃb(ǃJ.ǃRN.ǃOCC,this);return Be.ǃJtu(Ae,qe,Te),this.ǃJ$n=null,Be}ǃOfp(Ae,qe){this.ǃJtU(),qe.ǃJtm(Ae),this.ǃJ$n=null}ǃus(Ae){if(Ae&&(Ae.ǃJt$(),!(0=this.width||0>=this.height)throw new Error("invalid size");this.ǃJtU();let qe=ǃJ.ǃb(ǃJ.ǃRN.ǃOnv,this);return qe.ǃo(this.width,this.height,Ae),this.ǃJtr=null,this.ǃJcG=null,qe}ǃOfV(Ae){if(Ae!==this.ǃJtr){assert(!Ae||!this.ǃJ$n||Ae.ǃJcI()!==this.ǃJ$n,"Warning: set rendering to current texture 0");let qe=this.ǃJ$e(6);qe.ǃJcb=Ae,this.ǃJtr=Ae,this.ǃJ$f=0}}ǃOX_(){return this.ǃJtr}ǃOXm(Ae){assert(Ae!==this.ǃJtr,"drawing render target to itself");let qe=Ae.ǃfk();if(qe)this.ǃfK(qe),this.ǃJ$D(),this.ǃfK(null);else throw new Error("renderbuffer -> rendertarget not yet implemented")}ǃOXb(Ae){if(!(2>this.version)){let qe=this.ǃJ$e(12);qe.ǃJcb=Ae.ǃJcN(),this.ǃJ$f=0}}ǃJqU(){return this.width*this.height*(this.ǃJti.alpha?4:3)}ǃJqC(){let Ae=0;for(let qe of ǃJ.ǃRN.ǃOnv.ǃJtI())qe.ǃfk()||(Ae+=qe.ǃOnU());return Ae}ǃJqu(){let Ae=0;for(let qe of ǃJ.ǃRN.ǃOCC.ǃJtB())Ae+=qe.ǃOnU();return Ae}ǃJq_(){return this.ǃJqU()+this.ǃJqC()+this.ǃJqu()}ǃJqm(){return this.ǃJta}ǃJtn(){return this.version}ǃOfD(){return this.ǃJtp}ǃJtS(){return this.ǃJ$_}ǃRn(){return this.ǃJ$m}ǃRS(){return this.ǃJ$b}ǃJqb(){return this.ǃJ$c}ǃJqc(){return this.ǃJ$t}ǃJqt(){return this.extensions}ǃJq$(){return this.ǃJ$$}ǃEc(){return this.ǃJmZ}ǃOXL(Ae){let qe=this.ǃJmZ,Te=qe.ONE,Be=qe.ONE_MINUS_SRC_ALPHA;switch(Ae){case"normal":Te=qe.ONE,Be=qe.ONE_MINUS_SRC_ALPHA;break;case"additive":Te=qe.ONE,Be=qe.ONE;break;case"copy":Te=qe.ONE,Be=qe.ZERO;break;case"destination-over":Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.ONE;break;case"source-in":Te=qe.DST_ALPHA,Be=qe.ZERO;break;case"destination-in":Te=qe.ZERO,Be=qe.SRC_ALPHA;break;case"source-out":Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.ZERO;break;case"destination-out":Te=qe.ZERO,Be=qe.ONE_MINUS_SRC_ALPHA;break;case"source-atop":Te=qe.DST_ALPHA,Be=qe.ONE_MINUS_SRC_ALPHA;break;case"destination-atop":Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.SRC_ALPHA;break;default:throw new Error("invalid blend name");}return{ǃOXk:Te,ǃOXV:Be}}ǃJqq(Ae){let qe=this.ǃJmZ,Te=qe.ONE,Be=qe.ONE_MINUS_SRC_ALPHA;switch(Ae){case 0:Te=qe.ONE,Be=qe.ONE_MINUS_SRC_ALPHA;break;case 1:Te=qe.ONE,Be=qe.ONE;break;case 3:Te=qe.ONE,Be=qe.ZERO;break;case 4:Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.ONE;break;case 5:Te=qe.DST_ALPHA,Be=qe.ZERO;break;case 6:Te=qe.ZERO,Be=qe.SRC_ALPHA;break;case 7:Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.ZERO;break;case 8:Te=qe.ZERO,Be=qe.ONE_MINUS_SRC_ALPHA;break;case 9:Te=qe.DST_ALPHA,Be=qe.ONE_MINUS_SRC_ALPHA;break;case 10:Te=qe.ONE_MINUS_DST_ALPHA,Be=qe.SRC_ALPHA;break;default:throw new Error("invalid blend index");}return{ǃOXk:Te,ǃOXV:Be}}}}{function ee(Ue,Ee){ye||(ye=document.createElement("canvas"));let Le=!1;(le!==Ue||Je!==Ee)&&(le=Ue,Je=Ee,ye.width=Ue,ye.height=Ee,Le=!0),Oe||(Oe=ye.getContext("2d"),Le=!0),Le?(Oe.textBaseline="top",Oe.font=ue,Oe.fillStyle=pe.ǃONt()):Oe.clearRect(0,0,Ue,Ee),he.ǃHH()}function ne(Ue){return Oe.measureText(Ue).width}const _373="center";let ie=window.devicePixelRatio||1;let oe=new ǃJ.ǃSR(0,0,0,1),ye=null,Oe=null,le=-1,Je=-1,ue="",pe=new ǃJ.ǃSR(0,0,0,1),he=new ǃJ.ǃOJE(function(){ee(32,32)},5);const ge=new Set(["left",_373,"right"]),me=new Set(["top",_373,"bottom"]),ve=new Set(["word","character"]);let be=new Set;ǃJ.ǃOyv&&ǃJ.ǃOyv.addEventListener("fontload",Ue=>{let Ee=Ue.font.ǃyg();for(let Le of be)ǃJ.ǃO$X(Le.ǃJqM(),Ee)&&Le.ǃJqB()});ǃJ.ǃOrF(()=>{return ye?4*(ye.width*ye.height):0});ǃJ.ǃRN.ǃRI=class{constructor(Ee){ǃJ.ǃk(Ee,ǃJ.ǃRN.ǃ$X),this.ǃuA=Ee,this.ǃJqL="Arial",this.ǃJqz=16,this.ǃ$f=0,this.ǃJqk=!1,this.ǃJqV=!1,this.ǃOdT=new ǃJ.ǃSR(0,0,0,1),this.ǃts="left",this.ǃ$O="top",this.ǃtA="",this.ǃth=ǃJ.ǃb(ǃJ.ǃtv),this.ǃtP="word",this.ǃJqK=!1,this.ǃJqo=!1,this.ǃJqe=!0,this.ǃtl=0,this.ǃtx=0,this.ǃtu=0,this.ǃt_=0,this.ǃJqr=1,this.ǃOPY=!1,this.ǃuY=null,this.ǃJqI=0,this.ǃJqN=0,this.ǃJqG=new ǃJ.Rect,this.ǃJqE=1,this.ǃJqT=!1,this.ǃJqD=new ǃJ.ǃOJE(()=>this.ǃOXx(),60),this.ǃRG=null,this.ǃuP=!1,be.add(this)}ǃyY(){this.ǃJqD.ǃyY(),this.ǃRG=null,this.ǃOXx(),this.ǃth.ǃbi(),this.ǃth=null,this.ǃuA=null,this.ǃuP=!0,be.delete(this)}ǃJqi(){this.ǃOPY=!0}ǃJqB(){this.ǃJqi(),this.ǃth.ǃbi(),this.ǃJqK=!0}ǃJqa(Ee){this.ǃJqe=!!Ee}ǃJqp(){return this.ǃJqe}ǃJqw(Ee){ǃJ.ǃJO(Ee),Ee||(Ee="serif");this.ǃJqL===Ee||(this.ǃJqL=Ee,this.ǃJqB())}ǃJqM(){return this.ǃJqL}ǃRE(Ee){ǃJ.ǃXq(Ee),0.1>Ee&&(Ee=0.1);this.ǃJqz===Ee||(this.ǃJqz=Ee,this.ǃJqB())}ǃtX(Ee){ǃJ.ǃXq(Ee);this.ǃ$f===Ee||(this.ǃ$f=Ee,this.ǃJqi())}ǃJqY(Ee){Ee=!!Ee;this.ǃJqk===Ee||(this.ǃJqk=Ee,this.ǃJqB())}ǃJqQ(Ee){Ee=!!Ee;this.ǃJqV===Ee||(this.ǃJqV=Ee,this.ǃJqB())}ǃJqj(Ee){let Le="";return this.ǃJqk&&(Le+=" bold"),this.ǃJqV&&(Le+=" italic"),Le+=Ee?" "+this.ǃJqz+"pt":" "+this.ǃJqz*this.ǃJqE*this.ǃJqr*ie+"pt",this.ǃJqL&&(Le+=" \""+this.ǃJqL+"\""),Le.trim()}ǃfo(Ee){ǃJ.ǃk(Ee,ǃJ.ǃSR);this.ǃOdT.ǃON_(Ee)||(this.ǃOdT.ǃONC(Ee.r,Ee.ǃONo,Ee.b),this.ǃJqi())}ǃRp(Ee,Le,we){ǃJ.ǃXq(Ee),ǃJ.ǃXq(Le),ǃJ.ǃXq(we),oe.ǃONC(Ee,Le,we),this.ǃfo(oe)}ǃRT(Ee){if(ǃJ.ǃJO(Ee),!ge.has(Ee))throw new Error("invalid horizontal alignment");this.ǃts===Ee||(this.ǃts=Ee,this.ǃJqi())}ǃRD(Ee){if(ǃJ.ǃJO(Ee),!me.has(Ee))throw new Error("invalid vertical alignment");this.ǃ$O===Ee||(this.ǃ$O=Ee,this.ǃJqi())}ǃtJ(Ee){if(ǃJ.ǃJO(Ee),!ve.has(Ee))throw new Error("invalid word wrap mode");this.ǃtP===Ee||(this.ǃtP=Ee,this.ǃJqB())}ǃRa(Ee){ǃJ.ǃJO(Ee);this.ǃtA===Ee||(this.ǃtA=Ee,this.ǃJqB())}ǃRC(Ee,Le,we){if((ǃJ.ǃXq(Ee),ǃJ.ǃXq(Le),ǃJ.ǃaB(we),"undefined"==typeof we&&(we=1),!(0>=Ee||0>=Ee))&&(this.ǃtl!==Ee||this.ǃtx!==Le||this.ǃJqr!==we)){1===this.ǃJqr!=(1===we)&&(this.ǃJqT=!0);let xe=this.ǃtl,ke=this.ǃJqr;this.ǃtl=Ee,this.ǃtx=Le,this.ǃJqr=we,this.ǃtu=this.ǃtl*this.ǃJqr*ie,this.ǃt_=this.ǃtx*this.ǃJqr*ie;let Se=Math.max(this.ǃtu,this.ǃt_),Xe=1,Ne=Math.min(this.ǃuA.ǃJtS(),2048);Se>Ne&&(Xe=Ne/Se,this.ǃtu=Math.min(this.ǃtu*Xe,Ne),this.ǃt_=Math.min(this.ǃt_*Xe,Ne)),this.ǃJqE=Xe,0=this.ǃtu||0>=this.ǃt_||(this.ǃOPY=!1,this.ǃJqo=!0,this.ǃJqe?ǃJ.ǃgi(()=>this.ǃJqW()):this.ǃJqW())}ǃJqW(){this.ǃuP||(ee(Math.ceil(this.ǃtu),Math.ceil(this.ǃt_)),this.ǃ$n(),this.ǃJqZ(),this.ǃJql(),this.ǃJqD.ǃHH(),this.ǃJqo=!1)}ǃ$n(){if(this.ǃJqK){let Ee=this.ǃJqj(!0);ue!==Ee&&(ue=Ee,Oe.font=Ee),this.ǃth.ǃtv(this.ǃtA,ne,this.ǃtl,this.ǃtP),this.ǃJqK=!1}}ǃJqZ(){let Ee=this.ǃJqj(!1);ue!==Ee&&(ue=Ee,Oe.font=Ee),pe.ǃON_(this.ǃOdT)||(pe.ǃONC(this.ǃOdT.r,this.ǃOdT.ǃONo,this.ǃOdT.b),Oe.fillStyle=this.ǃOdT.ǃONt());let Le=0,we=96*(this.ǃJqz/72)*this.ǃJqE*this.ǃJqr*ie,xe=(96*(this.ǃJqz/72)+4+this.ǃ$f)*this.ǃJqE*this.ǃJqr*ie,ke=this.ǃth.ǃ$R();this.ǃ$O===_373?Le=Math.max(this.ǃt_/2-ke.length*xe/2,0):"bottom"===this.ǃ$O&&(Le=Math.max(this.ǃt_-ke.length*xe-2,0));for(let Se of ke){let Xe=0;if(this.ǃts===_373?Xe=(this.ǃtu-Se.width*this.ǃJqE*this.ǃJqr*ie)/2:"right"===this.ǃts&&(Xe=this.ǃtu-Se.width*this.ǃJqE*this.ǃJqr*ie),Oe.fillText(Se.text,Xe,Le),Le+=xe,Le>this.ǃt_-we)break}}ǃJql(){this.ǃuA.ǃud()||(this.ǃJqI=Math.ceil(this.ǃtu),this.ǃJqN=Math.ceil(this.ǃt_),this.ǃJqG.set(0,0,this.ǃtu/this.ǃJqI,this.ǃt_/this.ǃJqN),this.ǃJqT&&(this.ǃOXx(),this.ǃJqT=!1),!this.ǃuY&&(this.ǃuY=this.ǃuA.ǃOfi(this.ǃJqI,this.ǃJqN,{ǃOfa:1===this.ǃJqr,ǃJcx:"high"})),this.ǃuA.ǃOfp(ye,this.ǃuY),this.ǃRG&&this.ǃRG())}ǃSM(){return this.ǃJqG}ǃOXx(){this.ǃuY&&(!this.ǃuA.ǃud()&&this.ǃuA.ǃus(this.ǃuY),this.ǃuY=null)}static ǃOXl(){return be.values()}}}"use strict",ǃJ.ǃOY={},ǃJ.ǃOY.ǃJqx=3e3,ǃJ.ǃOY.ǃJqA=!0,ǃJ.ǃOY.URL={ǃ$i:"https://www.construct.net/register",ǃOw:"https://www.scirra.com/store",ǃOuL:"https://www.scirra.com/manual",ǃJqh:"https://www.construct.net/make-games/releases/",ǃJqv:"https://www.construct.net/profile/edit"},ǃJ.ǃJqP=function(te){ǃJ.ǃXq(te);let ne=Math.floor(te/100),ie=te%100,ae="r"+ne;return 0!=ie&&(ae+="."+ie),ae},ǃJ.ǃOY.ǃJqd=ǃJ.ǃJqP(ǃJ.ǃOY.ǃJqx),ǃJ.ǃOY.ǃJqs=ǃJ.ǃOcf(ǃJ.ǃOY.ǃJqd,".","-"),ǃJ.ǃU.ǃJs.ǃJMO=[{id:"main",size:"1fr",name:"Main area",popup:!1,type:"Pane",layout:{tabSide:!1,id:"middle",isHorizontal:!0,children:[{id:"propertiesBar",size:"300px",name:"\u1E56\u1E5B\xF6\u1E57\xEB\u1E5B\u1E97\xEF\xEB\u1E61",popup:!1,docked:!0,type:"CaptionPane",caption:"\u1E56\u1E5B\xF6\u1E57\xEB\u1E5B\u1E97\xEF\xEB\u1E61",side:"left"},{id:"midPane",size:"1fr",name:"Mid pane",popup:!1,docked:!0,type:"TabPane",side:"",layout:{tabSide:"top",children:[]}},{size:"300px",name:"middle2",popup:!1,docked:!0,type:"DockingPane",side:"right",layout:{tabSide:!1,id:"middle3",isHorizontal:!1,children:[{id:"projectBar",size:"477.5px",name:"\u1E56\u1E5B\xF6j\xEB\u010B\u1E97",popup:!1,docked:!0,type:"CaptionPane",caption:"\u1E56\u1E5B\xF6j\xEB\u010B\u1E97",side:"top"},{size:"300px",name:"middle4",popup:!1,docked:!0,type:"TabPane",side:"bottom",layout:{tabSide:"bottom",children:[{id:"layersBar",size:"300px",name:"\u1E36\xE4\xFF\xEB\u1E5B\u1E61",popup:!1,docked:!0,type:"CaptionPane",caption:"\u1E36\xE4\xFF\xEB\u1E5B\u1E61",side:""},{id:"tilemapBar",size:"300px",name:"\u1E6A\xEF\u1E37\xEB\u1E41\xE4\u1E57: \u1E44\xF6 \u1E60\xEB\u1E37\xEB\u010B\u1E97\xEF\xF6\u1E45",popup:!1,docked:!0,type:"CaptionPane",caption:"\u1E6A\xEF\u1E37\xEB\u1E41\xE4\u1E57: \u1E44\xF6 \u1E60\xEB\u1E37\xEB\u010B\u1E97\xEF\xF6\u1E45",side:""}]}}]}}]}}],"use strict";{const _375="invalid job ID",ee=ǃJ.ǃO(),te="workers/";class ae extends ǃJ.ǃq{constructor(){super(),this.ǃJMJ=ǃJ.ǃYG.ǃYN("oneworker")?1:ǃJ.hardwareConcurrency,this.ǃJMy=null,this.ǃJMf=[],this.ǃJMS=new Map,this.ǃJMn=0,this.ǃJMX=!1,this.ǃgb=null,this.ǃgm=null}ǃXC(){if(this.ǃJMX)throw new Error("already initialised");return this.ǃJMy=new Worker(te+"dispatchWorker.js"),this.ǃJMy.addEventListener("message",de=>this.ǃJMR(de)),this.ǃJMg(),this.ǃJMX=!0,this.ǃgb=new Promise(de=>{this.ǃgm=de}),this.ǃgb}ǃJMg(){const de=new Worker(te+"jobWorker.js");de.addEventListener("message",oe=>this.ǃJMH(oe));const re=new MessageChannel;this.ǃJMy.postMessage({type:"_addJobWorker",port:re.port1},[re.port1]),de.postMessage({type:"init",number:this.ǃJMf.length,port:re.port2},[re.port2]),this.ǃJMf.push(de)}ǃJMU(de,re,oe,ye,Oe){if(ǃJ.ǃJO(de),ǃJ.ǃUg(ye),ǃJ.ǃq$(Oe,ǃJ.ǃOay),ǃJ.ǃiE(re),ǃJ.ǃQv(oe),!this.ǃJMX)throw new Error("not yet initialised");oe||(oe=[]);let le=this.ǃJMn++,Je={type:de,jobId:le,params:re,transferables:oe},ue=new Promise((pe,he)=>{this.ǃJMS.set(le,{resolve:pe,ǃOpK:ye,reject:he,ǃJMC:!1})});return Oe&&Oe.ǃOaf(()=>this.ǃJMu(le)),this.ǃJMy.postMessage(Je,oe),ue}ǃJMu(de){ǃJ.ǃXq(de);let re=this.ǃJMS.get(de);re&&(re.ǃJMC=!0,re.resolve=null,re.ǃOpK=null,re.reject=null,this.ǃJMy.postMessage({type:"_cancel",jobId:de}))}ǃJMR(de){let re=de.data,oe=re.type;switch(oe){case"error":console.error("[Dispatch worker] Error: "+re.error);break;default:throw new Error(`unknown message from dispatch worker '${oe}'`);}}ǃJMH(de){let re=de.data,oe=re.type,ye=re.jobId;switch(oe){case"result":this.ǃJM_(ye,re.result);break;case"progress":this.ǃJMm(ye,re.progress);break;case"error":this.ǃJMb(ye,re.error);break;case"ready":this.ǃJMc();break;default:throw new Error(`unknown message from worker '${oe}'`);}}ǃJM_(de,re){let oe=this.ǃJMS.get(de);if(!oe)throw new Error(_375);oe.ǃJMC||oe.resolve(re),this.ǃJMS.delete(de)}ǃJMm(de,re){let oe=this.ǃJMS.get(de);if(!oe)throw new Error(_375);!oe.ǃJMC&&oe.ǃOpK&&oe.ǃOpK(re)}ǃJMb(de,re){let oe=this.ǃJMS.get(de);if(!oe)throw new Error(_375);oe.ǃJMC||oe.reject(re),this.ǃJMS.delete(de)}ǃJMc(){this.ǃgm&&(this.ǃgm(),this.ǃgm=null,this.ǃgb=null),this.ǃJMf.lengththis.ǃJMw(),this.ǃJMY=()=>this.ǃJMw(),app.addEventListener("projectclose",this.ǃvB),app.addEventListener(_377,this.ǃJMY)}ǃyY(){app.removeEventListener("projectclose",this.ǃvB),this.ǃvB=null,app.removeEventListener(_377,this.ǃJMY),this.ǃJMY=null,this.ǃUl=null,this.ǃJMo=null,this.ǃJMr=null,this.ǃJMI=null,this.ǃJMN=null}ǃng(){return this.ǃUl}ǃNQ(){return this.ǃJMD}ǃNw(){return-1!==this.ǃJMD}ǃJMQ(oe){oe=!!oe;this.ǃJMa===oe||(this.ǃJMa=oe,this.ǃYQ(!0))}ǃJMj(){return this.ǃJMa}ǃJMF(oe){if(ǃJ.ǃJO(oe),!de.has(oe))throw new Error(`invalid preview browser '${oe}'`);this.ǃJMp===oe||(this.ǃJMp=oe,this.ǃYQ(!0))}ǃJMW(){return this.ǃJMp}ǃJMZ(oe){oe=!!oe;this.ǃJMi===oe||(this.ǃJMi=oe,this.ǃYQ(!0))}ǃJMl(){return this.ǃJMi}ǃBs(oe,ye){if(ǃJ.ǃJO(oe),!ae.includes(oe))throw new Error(_378);if(oe===re.ǃOJB){if(this.ǃJMT)return;this.ǃJMT=!0,this.ǃJMx(ye),this.ǃJMT=!1}if(oe===re.ǃNp){if(this.ǃJMG)return;this.ǃJMG=!0,this.ǃJMA(ye),this.ǃJMG=!1}if(oe===re.ǃLO){if(this.ǃJME)return;this.ǃJME=!0,this.ǃJMh(ye),this.ǃJME=!1}}ǃLf(oe){if(ǃJ.ǃJO(oe),!ae.includes(oe))throw new Error(_378);return oe===re.ǃOJB?this.ǃJMo:oe===re.ǃNp?this.ǃJMr:oe===re.ǃLO?this.ǃJMI:oe===re.ǃOJN?this.ǃJMN:void 0}ǃJMk(){this.ǃJMB()&&app.ǃCs(this.ǃUl,_376)}ǃIh(){let oe={propertiesBar:this.ǃJMo,openTabs:this.ǃJMI,previewEffects:this.ǃJMa,previewBrowser:this.ǃJMp,pauseOnUnfocus:this.ǃJMi};if(app.ǃJMv()){let ye=app.ǃO$(),Oe=ye.ǃeN(this.ǃUl),le=ye.ǃNa();le.children=le.children.filter((Je,ue)=>{return Oe===ue}),oe.projectBar=le}if(app.ǃSs()){let ye=app.ǃOt().ǃPy();oe.propertiesBarActiveObject={},ye instanceof ǃHD?(oe.propertiesBarActiveObject.name=ye.ǃyg(),oe.propertiesBarActiveObject.type="project"):ye instanceof ǃJs?(oe.propertiesBarActiveObject.name=ye.ǃyg(),oe.propertiesBarActiveObject.type="layout"):ye instanceof ǃkL?(oe.propertiesBarActiveObject.name=ye.ǃyg(),oe.propertiesBarActiveObject.type="layer"):ye instanceof Array&&(oe.propertiesBarActiveObject.name="instances",oe.propertiesBarActiveObject.type="array")}return oe}ǃIP(oe){if(this.ǃJMK(oe)){if(this.ǃJMo=oe.propertiesBar,this.ǃJMI=oe.openTabs,this.ǃJMa=!!oe.previewEffects,this.ǃJMi=!!oe.pauseOnUnfocus,this.ǃJMp=oe.previewBrowser||"default",this.ǃJMN=oe.propertiesBarActiveObject,oe.projectBar)if(app.ǃHn()){let ye=app.ǃG(),Oe=ye.ǃLf(te);Oe?1===oe.projectBar.children.length?(Oe.children.push(oe.projectBar.children[0]),this.ǃJMr=Oe,this.ǃJMD=this.ǃJMr.children.length-1):this.ǃJMD=-1:(this.ǃJMr=oe.projectBar,this.ǃJMD=1===this.ǃJMr.children.length?0:-1)}else this.ǃJMr=oe.projectBar,this.ǃJMD=1===this.ǃJMr.children.length?0:-1;this.ǃUl.ǃBZ()||this.ǃJMB()&&app.ǃCs(this.ǃUl,_376)}}ǃJMx(oe){!this.ǃJMK(oe)||this.ǃJMV(this.ǃJMo,oe)||(this.ǃJMo=oe,this.ǃYQ(!0))}ǃJMA(oe){if(this.ǃJMK(oe)&&!this.ǃJMV(this.ǃJMr,oe)){this.ǃJMr=oe,app.ǃJMv()&&(this.ǃJMD=app.ǃO$().ǃeN(this.ǃUl));for(let ye of app.ǃy_())ye.ǃBs(re.ǃNp,oe);this.ǃYQ(!0)}}ǃJMh(oe){!this.ǃJMK(oe)||this.ǃJMV(this.ǃJMI,oe)||(this.ǃJMI=oe,this.ǃYQ(!0))}ǃJMw(){app.ǃJMv()&&(this.ǃJMr=app.ǃO$().ǃNa())}},window.ǃLJ.ǃOJB=ee,window.ǃLJ.ǃNp=te,window.ǃLJ.ǃLO=ne,window.ǃLJ.ǃOJN=ie}{const _379="layeractive",_380="layoutuichange",_381="invalid ui state key",ee="propertiesBar",te="instanceCollectionProperties",ne="layoutView",ie="layoutViewInstanceCollection",ae=[ee,te,ne,ie];window.ǃOJk=class de extends ǃJM${constructor(re){ǃJ.ǃk(re,ǃJs),super(),this.ǃOJD=re,this.ǃJMP=null,this.ǃJMd=!1,this.ǃJMs=!1,this.ǃJBO=32,this.ǃJBJ=32,this.ǃJBy=1e3,this.ǃJBf=1e3,this.ǃJBS=!1,this.ǃJBn=!1,this.ǃJBX=null,this.ǃOxZ=this.ǃOJD.ǃng().ǃJBR(),this.ǃJMo=null,this.ǃJBg=new Map,this.ǃJBH=null,this.ǃJBU=null,this.ǃJBC=oe=>this.ǃJBu(oe.ǃkg),app.addEventListener(_379,this.ǃJBC)}ǃyY(){app.removeEventListener(_379,this.ǃJBC),this.ǃJBC=null,this.ǃJBg&&this.ǃJBg.clear(),ǃJ.ǃXX(this.ǃJBU),this.ǃOJD=null,this.ǃJMP=null,this.ǃJMo=null,this.ǃJBg=null,this.ǃJBH=null,this.ǃJBU=null,this.ǃOxZ=null}ǃng(){return this.ǃOJD.ǃng()}ǃTk(){return app.ǃRB().ǃkx(this.ǃOJD)}ǃka(){return this.ǃJMP||(this.ǃJMP=this.ǃOJD.ǃJB_()),this.ǃJMP.ǃXb()||(this.ǃJMP=this.ǃOJD.ǃJB_()),this.ǃJMP}ǃkA(re){if(ǃJ.ǃk(re,ǃkL),re!==this.ǃJMP){this.ǃJMP=re;let oe=this.ǃTk();oe&&oe.ǃOyd(),app.ǃJBm(re,_379),this.ǃYQ(!0)}}ǃdP(){return this.ǃJBy}ǃdd(re){if(ǃJ.ǃXq(re),re=Math.floor(re),0>re)throw new Error("invalid margin width");this.ǃJBy===re||(this.ǃJBy=re,this.ǃYQ(!0))}ǃds(){return this.ǃJBf}ǃsO(re){if(ǃJ.ǃXq(re),re=Math.floor(re),0>re)throw new Error("invalid margin height");this.ǃJBf===re||(this.ǃJBf=re,this.ǃYQ(!0))}ǃJBb(){return this.ǃJMd}ǃsy(re){this.ǃJBb()===re||(this.ǃJMd=re,this.ǃYQ(!0))}ǃJBc(){return this.ǃJMs}ǃsS(re){this.ǃJBc()===re||(this.ǃJMs=re,this.ǃYQ(!0))}ǃsn(){return this.ǃJBO}ǃsX(re){ǃJ.ǃXq(re),re=ǃJ.ǃRf(re,1,1e3);this.ǃsn()===re||(this.ǃJBO=re,this.ǃYQ(!0))}ǃsR(){return this.ǃJBJ}ǃsg(re){ǃJ.ǃXq(re),re=ǃJ.ǃRf(re,1,1e3);this.ǃsR()===re||(this.ǃJBJ=re,this.ǃYQ(!0))}ǃsU(re){re=!!re;this.ǃJBS===re||(this.ǃJBS=re,this.ǃJBt(),this.ǃYQ(!0))}ǃsH(){return this.ǃJBS}ǃJBt(){if(this.ǃJBS){let re=this.ǃTk();re&&re.ǃEw()}}ǃsu(re){re=!!re;this.ǃJBn===re||(this.ǃJBn=re,this.ǃJB$(),this.ǃYQ(!0))}ǃsC(){return this.ǃJBn}ǃwR(){return this.ǃOxZ?this.ǃOxZ.clone():null}ǃJB$(){let re=this.ǃTk();if(re)for(let oe of this.ǃOJD.ǃkp())this.ǃJBn?re.ǃka()===oe?(oe.ǃJBq(1),oe.ǃkv(!1)):(oe.ǃJBq(0.33),oe.ǃkv(!0)):(oe.ǃJBq(1),oe.ǃkv(!1))}ǃBs(re,oe,ye){if(ǃJ.ǃJO(re),!!this.ǃEy()){if(!ae.includes(re))throw new Error(_381);re===de.ǃOJB&&this.ǃJMx(oe),re===de.ǃOJI&&this.ǃJBM(oe,ye),re===de.ǃOnH&&this.ǃJBB()}}ǃLf(re,oe){if(ǃJ.ǃJO(re),ǃJ.ǃQv(oe),!ae.includes(re))throw new Error(_381);return re===de.ǃOJB?this.ǃJMo:re===de.ǃOJI?oe?this.ǃJBL(oe):this.ǃJBg:re===de.ǃOnH?this.ǃJBH:re===de.ǃOJG?this.ǃJBU:void 0}ǃcN(){this.ǃJBz(),this.ǃsC()&&this.ǃJB$()}ǃJMk(){this.ǃJMB()&&app.ǃJBk(this.ǃOJD,_380)}ǃIh(){let re={propertiesBar:this.ǃJMo,grid:{show:this.ǃJMd,snap:this.ǃJMs,width:this.ǃJBO,height:this.ǃJBJ},marginWidth:this.ǃJBy,marginHeight:this.ǃJBf,showCollisionPolygons:this.ǃJBS,showTranslucentInactiveLayers:this.ǃJBn,tabColor:this.ǃOxZ?this.ǃOxZ.toJSON():null,layers:[...this.ǃOJD.ǃkp()].map(ye=>ye.ǃNa())},oe=this.ǃTk();if(oe&&(re.view={},re.view.x=oe.ǃOSp(),re.view.y=oe.ǃOSw(),re.view.z=oe.ǃOSA(),re.view.activeLayer=this.ǃka().ǃyg(),re.selectedInstances=[...oe.ǃKo().ǃOnL()].map(ye=>ye.ǃoW())),this.ǃJBg){re.instanceCollections=[];for(let[ye,Oe]of this.ǃJBg)re.instanceCollections.push({uids:ye.map(le=>le.ǃoW()),properties:Oe})}return re}ǃIP(re){if(this.ǃJMK(re)){this.ǃJMo=re.propertiesBar,this.ǃJBU=re.selectedInstances,this.ǃJBX=re.instanceCollections,this.ǃJMd=!!re.grid.show,this.ǃJMs=!!re.grid.snap,this.ǃJBO=re.grid.width,this.ǃJBJ=re.grid.height,this.ǃJBy=re.marginWidth,this.ǃJBf=re.marginHeight,this.ǃJBS=!!re.showCollisionPolygons,this.ǃJBn=!!re.showTranslucentInactiveLayers,re.tabColor?this.ǃOxZ.ǃONI(re.tabColor):this.ǃOxZ=null,this.ǃJBH=re.view;for(let oe of re.layers){let ye=this.ǃOJD.ǃOOq(oe.name);ye&&ye.ǃNF(oe)}this.ǃJMB()&&app.ǃJBk(this.ǃOJD,_380)}}ǃJMx(re){!this.ǃJMK(re)||this.ǃJMV(this.ǃJMo,re)||(this.ǃJMo=re,this.ǃYQ(!0))}ǃJBM(re,oe){let ye=[...oe],Oe=null;if(0!==ye.length){if(ǃJ.ǃLR(ye[0])){Oe=[];for(let le of ye){let Je=this.ǃOJD.ǃJBV(le);Je&&Oe.push(Je)}}else if(ye[0]instanceof ǃoD)Oe=ye;else throw new Error("unexpected instance collection ui state arguments");this.ǃJBK(Oe),ǃJ.ǃiu(re)?(this.ǃJBU=null,this.ǃJBg.set(Oe,null)):(this.ǃJBU=Oe,this.ǃJBg.set(Oe,re)),this.ǃYQ(!0)}}ǃJBB(){let re=this.ǃTk();if(re){let oe=!1;if(this.ǃJBU){let ye=re.ǃKo();ye.ǃQV(this.ǃJBU.filter(Oe=>Oe.ǃXb())),app.ǃSs()&&!ǃJ.ǃl.ǃO_&&app.ǃOt().ǃkh(this.ǃJBU,null,{ǃvP:!1}),this.ǃJBU=null,oe=!0}if(this.ǃJBH){re.ǃOSW(this.ǃJBH.x,this.ǃJBH.y),re.ǃOSx(this.ǃJBH.z);let ye=this.ǃJBH.activeLayer;if(ye){let Oe=this.ǃOJD.ǃOOq(ye);Oe&&re.ǃkA(Oe)}this.ǃJBH=null,oe=!0}oe&&this.ǃYQ(!0)}}ǃJBK(re){for(let oe of this.ǃJBg.keys())ǃJ.ǃsF(re,oe)&&this.ǃJBg.delete(oe)}ǃJBL(re){if(this.ǃJBg)for(let[oe,ye]of this.ǃJBg)if(ǃJ.ǃsF(oe,re))return ye}ǃJBz(){if(this.ǃJBX){this.ǃJBg.clear();for(let re of this.ǃJBX){let oe=[];for(let ye of re.uids){let Oe=this.ǃOJD.ǃJBV(ye);Oe&&oe.push(Oe)}this.ǃJBg.set(oe,re.properties)}}if(this.ǃJBU&&ǃJ.ǃLR(this.ǃJBU[0])){let re=[];for(let oe of this.ǃJBU){let ye=this.ǃOJD.ǃJBV(oe);ye&&re.push(ye)}this.ǃJBU=re}}ǃJBu(re){ǃJ.ǃk(re,ǃkL);this.ǃng().ǃBZ()||!this.ǃsC()||this.ǃOJD.ǃJBo(re)&&this.ǃJB$()}},window.ǃOJk.ǃOJB=ee,window.ǃOJk.ǃOJI=te,window.ǃOJk.ǃOnH=ne,window.ǃOJk.ǃOJG=ie}{const _382="layeruichange",_383="invalid ui state key",ee="propertiesBar",te=[ee];window.ǃOJo=class ne extends ǃJM${constructor(ie){ǃJ.ǃk(ie,ǃkL),super(),this.ǃJBe=ie,this.ǃJBr=!0,this.ǃJBI=!1,this.ǃJBN=!1,this.ǃJBG=!1,this.ǃXP=1,this.ǃJBE=new ǃJ.ǃSR,this.ǃJMo=null}ǃyY(){this.ǃJBe=null,this.ǃJMo=null}ǃng(){return this.ǃJBe.ǃng()}ǃJBT(){return this.ǃJBr}ǃkd(ie){ie=!!ie;this.ǃJBT()===ie||(this.ǃJBr=ie,this.ǃYQ(!0))}ǃJBD(){return this.ǃJBI}ǃkv(ie){ie=!!ie;this.ǃJBD()===ie||(this.ǃJBI=ie,this.ǃYQ(!0))}ǃJBi(){return this.ǃJBN}ǃsG(ie){ie=!!ie;this.ǃJBi()===ie||(this.ǃJBN=ie,this.ǃYQ(!0))}ǃJBa(){return this.ǃJBG}ǃJBp(ie){if(ie=!!ie,this.ǃJBe.ǃog())throw new Error("can not set global property of overriden layer");this.ǃJBa()===ie||(this.ǃJBG=ie,this.ǃYQ(!0),this.ǃng().ǃJBw())}ǃsk(ie){ǃJ.ǃXq(ie),this.ǃXP=ǃJ.ǃRf(ie,0,1),this.ǃJBE.set(this.ǃJBe.ǃfe()),this.ǃJBE.a*=this.ǃXP,this.ǃJBE.ǃSX()}ǃny(){return this.ǃXP}ǃfe(){return this.ǃJBE}ǃBs(ie,ae){if(ǃJ.ǃJO(ie),!te.includes(ie))throw new Error(_383);ie===ne.ǃOJB&&this.ǃJMx(ae)}ǃLf(ie){if(ǃJ.ǃJO(ie),!te.includes(ie))throw new Error(_383);return ie===ne.ǃOJB?this.ǃJMo:void 0}ǃJMk(){this.ǃJMB()&&app.ǃJBm(this.ǃJBe,_382),app.ǃRB().ǃ_h(this.ǃJBe.ǃ_w())}ǃIh(){return{name:this.ǃJBe.ǃyg(),propertiesBar:this.ǃJMo,visibleInEditor:this.ǃJBr,locked:this.ǃJBI,parallaxInEditor:this.ǃJBN,isGlobal:this.ǃJBG,opacity:this.ǃXP,color:this.ǃJBE.toJSON()}}ǃIP(ie){this.ǃJMK(ie)&&(this.ǃJMo=ie.propertiesBar,this.ǃJBr=!!ie.visibleInEditor,this.ǃJBI=!!ie.locked,this.ǃJBN=!!ie.parallaxInEditor,this.ǃJBG=!!ie.isGlobal,this.ǃXP=ie.opacity,this.ǃJBE.ǃONI(ie.color),app.ǃJBm(this.ǃJBe,_382))}ǃJMx(ie){!this.ǃJMK(ie)||this.ǃJMV(this.ǃJMo,ie)||(this.ǃJMo=ie,this.ǃYQ(!0))}},window.ǃOJo.ǃOJB=ee}{const ee="eventObjectViews",te=[ee];window.ǃJBY=class ne extends ǃJM${constructor(ie){super(),this.ǃZK=ie,this.ǃJBQ=[],this.ǃJBj=!1}ǃyY(){ǃJ.ǃXX(this.ǃJBQ),this.ǃZK=null,this.ǃJBQ=null}ǃng(){return this.ǃZK.ǃng()}ǃJBF(){return this.ǃJBj}ǃqt(ie){ie=!!ie;this.ǃJBj===ie||(this.ǃJBj=!!ie,this.ǃZK.ǃcX().ǃJBW(),this.ǃYQ(!0))}ǃLf(ie,ae){if(ǃJ.ǃJO(ie),ǃJ.ǃk(ae,ǃQz),!te.includes(ie))throw new Error("invalid ui state key");return ie===ne.ǃJBZ?this.ǃJBl(ae):void 0}ǃJMk(){this.ǃZK.ǃJBx(),this.ǃJMB()&&app.ǃJBA(this.ǃZK.ǃcX(),"eventsheetuichange")}ǃIh(){return{viewsUIState:[...this.ǃZK.ǃWZ()].map(ie=>ie.ǃNa()),bookmark:this.ǃJBj}}ǃIP(ie){this.ǃJMK(ie)&&(this.ǃJBh(ie.viewsUIState),this.ǃqt(ie.bookmark))}ǃJBl(ie){ǃJ.ǃk(ie,ǃQz);let ae=[...this.ǃZK.ǃWZ()],de=ae.indexOf(ie);if(-1!==de)return this.ǃJBQ[de]}ǃJBh(ie){ǃJ.ǃCl(ie);this.ǃJMV(ie,this.ǃJBQ)||(this.ǃJBQ=ǃJ.ǃyJ(ie),this.ǃYQ(!0))}},window.ǃJBY.ǃJBZ=ee}"use strict",window.ǃZr=class extends ǃJM${constructor(te){super(),this.ǃJBv=te,this.ǃJBP=!0,this.ǃJm$=new Map}ǃlK(te,ne){ne.ǃAM(this),this.ǃJm$.set(te,ne)}ǃlE(te,ne){if(!this.ǃJm$.has(te))throw new Error("missing id");this.ǃJm$.get(te).Set(ne)}ǃlI(te){if(!this.ǃJm$.has(te))throw new Error("missing id");return this.ǃJm$.get(te).ǃOX()}ǃyY(){this.ǃJBv=null}ǃcX(){return this.ǃbx().ǃcX()}ǃbx(){return this.ǃJBv.ǃbx()}ǃng(){return this.ǃbx().ǃng()}ǃLf(){return this.ǃJBP?(this.ǃJBP=!1,this.ǃbx().ǃLf(this.ǃJBv)):this.ǃIh()}ǃJMk(){this.ǃJMB()&&app.ǃJBA(this.ǃcX(),"eventsheetuichange")}ǃIh(){let te={};for(let ne of this.ǃJm$.values())ne.ǃIh(te);return te}ǃIP(te){if(this.ǃJMK(te))for(let ne of this.ǃJm$.values())ne.ǃIP(te)}},"use strict",window.ǃlo=class{constructor(te){this.ǃJBd=te,this.ǃOFZ=null,this.ǃJJz=!0}ǃAM(te){ǃJ.ǃk(te,ǃZr),this.ǃOFZ=te}ǃOX(){return this.ǃJJz}Set(te){te=!!te;this.ǃJJz===te||(te&&!this.ǃJJz?(this.ǃJJz=!0,this.ǃJBs(),this.ǃOFZ.ǃYQ(!0)):!te&&this.ǃJJz&&(this.ǃJJz=!1,this.ǃJBs(),this.ǃOFZ.ǃYQ(!0)))}ǃJBs(){let te=this.ǃOFZ.ǃbx(),ne=te.ǃLf(this.ǃJBd);if(ne)ne.expanded=this.ǃJJz;else{let ie=te.ǃNa();te.ǃNF(ie)}}ǃIh(te){te.expanded=this.ǃJJz}ǃIP(te){!this.ǃOFZ.ǃJMK(te)||te.hasOwnProperty("expanded")&&(assert(ǃJ.ǃOes(this.ǃJBd.ǃoY),"missing 'SetExpanded' method"),this.ǃJBd.ǃoY(te.expanded,!1),this.ǃJJz=te.expanded)}},"use strict",ǃJ.ǃJLO=class extends ǃJ.ǃq{constructor(){super()}ǃyY(){}ǃJLJ(){ǃJ.ǃZZ()}ǃOpV(){ǃJ.ǃZZ()}ǃOpo(){ǃJ.ǃZZ()}ǃOcR(){ǃJ.ǃZZ()}},"use strict",ǃJ.ǃJLy=class extends ǃJ.ǃJLO{constructor(te){super(),ǃJ.ǃk(te,ǃJ.ǃOcO),this.ǃJLf=te}ǃyY(){this.ǃJLf=null,super.ǃyY()}ǃJLJ(te){return ǃJ.ǃJO(te),Promise.resolve(this.ǃJLf.ǃOpL(te))}ǃOpV(te){ǃJ.ǃJO(te);const ne=this.ǃJLf.ǃOpz(te);if(!ne)throw new Error(`missing file path '${te}'`);return this.ǃJLf.ǃOpV(ne)}ǃOpo(te){ǃJ.ǃJO(te);const ne=this.ǃJLf.ǃOpz(te);if(!ne)throw new Error(`missing file path '${te}'`);return this.ǃJLf.ǃOpo(ne)}ǃOcR(te,ne){ǃJ.ǃJO(te),ǃJ.ǃUV(ne);const ie=this.ǃJLf.ǃOpz(te);if(!ie)throw new Error(`missing file path '${te}'`);return this.ǃJLf.ǃOcR(ie,ne)}},"use strict",ǃJ.ǃJLS=class extends ǃJ.ǃJLO{constructor(te){if(super(),ǃJ.ǃJO(te),"nwjs"!==ǃJ.ǃl.ǃZ)throw new Error("only supported in NW.js mode");this.ǃJLn=te}ǃyY(){super.ǃyY()}ǃJLJ(te){const ne=ǃJ.ǃOF.ǃOGk(this.ǃJLn,te);return ǃJ.ǃOF.ǃOGV(ne)}ǃOpV(te){const ne=ǃJ.ǃOF.ǃOGk(this.ǃJLn,te);return ǃJ.ǃOF.ǃOGi(ne,{encoding:"utf8"})}ǃOpo(te){const ne=ǃJ.ǃOF.ǃOGk(this.ǃJLn,te);return ǃJ.ǃOF.ǃOGi(ne,{encoding:"utf8"}).then(ie=>ǃJ.ǃzp(ie))}ǃOcR(te,ne){const ie=ǃJ.ǃOF.ǃOGk(this.ǃJLn,te);return ǃJ.ǃOF.ǃOGi(ie).then(ae=>new Blob([Uint8Array.from(ae)],{type:ne}))}},"use strict",window.ǃco=class ee extends ǃJ.Event.ǃU_{constructor(te){super(),ǃJ.ǃk(te,ǃHD),this.ǃUl=te,this.ǃJLX=this.ǃUl.ǃJLR(),this.ǃJLg=0}ǃyY(){this.ǃUl=null,super.ǃyY()}ǃOCo(){return"project-object"}ǃng(){return this.ǃUl}ǃXb(){return 0===this.ǃJLg}ǃJLH(){return this.ǃJLX}static ǃJLU(te){return"number"==typeof te&&Math.floor(te)===te&&0<=te&&1e16>=te}ǃJLC(te){if(ǃJ.ǃXq(te),!ee.ǃJLU(te))throw new Error("invalid SID");this.ǃJLX=te}ǃVS(){this.ǃJLu()}ǃFq(){this.ǃJL_()}ǃJLu(){let te=this.ǃXb();++this.ǃJLg,te&&!this.ǃXb()&&this.ǃJLm()}ǃJL_(){if(0===this.ǃJLg)throw new Error("cannot undelete active project object");--this.ǃJLg,this.ǃXb()&&this.ǃJLb()}ǃJLb(){}ǃJLm(){}ǃcN(){}static ǃIo(te,ne){let ie=te.ǃyg().toLowerCase(),ae=ne.ǃyg().toLowerCase();return ie>ae?1:iede)throw new Error("item not in this folder");if(this.ǃJSa.splice(de,1),assert(!ne.ǃJSa.includes(te),"item should not already be in destination folder"),ie){if(!ne.ǃJSa.includes(ie))throw new Error("relative item not in destination folder");if(!ie.ǃXb())throw new Error("relative item is deleted");if(de=ne.ǃJSa.indexOf(ie),"after"===ae)++de;else if("before"!==ae)throw new Error(_386);ne.ǃJSa.splice(de,0,te)}else ne.ǃJSa.push(te);te.ǃJLG(ne),this.ǃYQ()}ǃIu(te,ne,ie,ae){if(ǃJ.ǃk(te,ee),ǃJ.ǃk(ne,ee),ǃJ.ǃq$(ie,ee),ǃJ.ǃUV(ae),ne.ǃdj()!==this.ǃOiD)throw new Error(_388);if(!te.ǃXb())throw new Error("cannot move deleted subfolder");let de=this.ǃJLc.indexOf(te);if(0>de)throw new Error("subfolder not in this folder");if(this.ǃJLc.splice(de,1),assert(!ne.ǃJLc.includes(te),"subfolder should not already be in destination folder"),ie){if(!ne.ǃJLc.includes(ie))throw new Error("relative subfolder not in destination folder");if(!ie.ǃXb())throw new Error("relative subfolder is deleted");if(de=ne.ǃJLc.indexOf(ie),"after"===ae)++de;else if("before"!==ae)throw new Error(_386);ne.ǃJLc.splice(de,0,te)}else ne.ǃJLc.push(te);te.ǃOFZ=ne,this.ǃYQ()}ǃJLD(te,ne){return te.ǃIh(ne)}ǃIh(te){ǃJ.ǃBA(te);let ne=[];for(let de of this.ǃfu())ne.push(this.ǃJLD(de,te));let ie=[];for(let de of this.ǃIK())ie.push(de.ǃIh(te));let ae={items:ne,subfolders:ie};return this.ǃex()||(ae.name=this.ǃOYj),ae}}}{function ee(){const be=ue.length;let Ue="";for(let Ee=0;11>Ee;++Ee)Ue+=ue.charAt(Math.floor(Math.random()*be));return Ue}const _389="author",_390="splash",_391="plugin",_392="effect",_393="project",_394="behavior",_395="invalid uid",_396="progress-logo",_397="project.c3proj",_398="missing-addons",_399="letterbox-scale",_400="projectundopointset",_401="project.uistate.json",_402="audio/webm; codecs=opus",_403="letterbox-integer-scale",_404="object class name already in use",_405="expected object class name to exist",te=ǃJ.ǃO(),ne=ǃJ.ǃy(te.URL);ǃJ.ǃS.ǃf(ne+"lang");const ie=1,ae=new Set(["default","cloud","local-single-file","local-folder"]),de=new Set(["off","scale-inner","scale-outer",_399,_403]),re=new Set(["low","high"]),oe=new Set(["any","portrait","landscape"]),ye=new Set(["linear","point"]),Oe=new Set(["low","medium","high"]),le=new Set([_390,_396,"progress","percent","none"]),Je=new Set(["c2","c3"]),ue="abcdefghijklmnopqrstuvwxyz0123456789";const pe=["loading-logo.png","icon-16.png","icon-32.png","icon-64.png","icon-128.png","icon-256.png","icon-512.png"],ge=new Map([[_402,1],["audio/ogg; codecs=opus",2],["audio/webm; codecs=vorbis",3],["audio/ogg; codecs=vorbis",4],["audio/mp4",5],["audio/wav",6]]),me={ǃJLi:!1};window.ǃHD=class be extends ǃJ.ǃq{constructor(){super(),this.ǃOYj=lang("model.project.new-project-name"),this.ǃJJI=ǃJ.ǃOIx({description:"",version:"1.0.0.0",ǃJLa:"",ǃJLp:"",ǃJLw:"",ǃJLY:"",ǃJLQ:!1,ǃJLj:!1,ǃJLF:_399,ǃJLW:"high",backgroundColor:ǃJ.ǃb(ǃJ.ǃSR,0,0,0),ǃJLZ:ǃJ.ǃb(ǃJ.ǃSR,1,1,1),ǃJLl:!1,ǃJLx:ǃJ.ǃb(ǃJ.ǃSR,1,1,1),ǃJLA:!0,ǃJLh:"any",ǃJLv:!0,ǃJLP:"linear",ǃJLd:"medium",ǃJLs:_390,ǃJzO:!0,ǃJzJ:!0,ǃJzy:!0}),this.ǃJzf=ee(),this.ǃJzS="",this.ǃJzn="default",this.ǃJzX=null,this.ǃJzR=null,this.ǃJzg="user",this.ǃJzH=854,this.ǃJzU=480,this.ǃJzC=!1,this.ǃJzu=!1,this.ǃuv=!0,this.ǃJz_=!1,this.ǃJzm=ǃJ.ǃYG.ǃYN("forcec3")?"c3":"c2",this.ǃJzb=null,this.ǃJzc=!1,this.ǃJzt={plugin:new Set,behavior:new Set,effect:new Set},this.ǃJz$=ǃJ.ǃb(ǃeQ,this,null),this.ǃJzq=new Map,this.ǃJzM=new Map,this.ǃJzB=new Set,this.ǃJzL=ǃJ.ǃb(ǃeF,this,null),this.ǃJzz=[],this.ǃJzk=new Map,this.ǃJzV=[],this.ǃJzK=0,this.ǃJzo=new Set,this.ǃJze=0,this.ǃJzr=!1,this.ǃJzI=ǃJ.ǃb(ǃew,this,null),this.ǃJzN=null,this.ǃJzG="",this.ǃJzE=ǃJ.ǃb(ǃeY,this,null),this.ǃJzT=[],this.ǃJzD=null,this.ǃJzi=ǃJ.ǃb(ǃUi,this,null,"sound"),this.ǃJza=ǃJ.ǃb(ǃUi,this,null,"music"),this.ǃJzp=ǃJ.ǃb(ǃUi,this,null,"video"),this.ǃJzw=ǃJ.ǃb(ǃUi,this,null,"font"),this.ǃJzY=ǃJ.ǃb(ǃUi,this,null,"icon"),this.ǃJzQ=ǃJ.ǃb(ǃUi,this,null,"general"),this.ǃJzj=0,this.ǃJzF=0,this.ǃJzY.ǃrV(!1),this.ǃJzW=new ǃJzZ(this),this.ǃJzb=ǃJ.ǃyD.ǃJzl().ǃIv(this,"System"),this.ǃJzx=0,this.ǃJzA=ǃJ.ǃb(ǃJ.ǃgX,()=>this.ǃJzh(),1e3),this.ǃJzv=ǃJ.ǃb(ǃLJ,this)}ǃyY(){this.ǃJzP(),this.ǃJzA.ǃyY(),this.ǃJzA=null,this.ǃJzb.ǃyY(),this.ǃJzb=null,this.ǃJzW.ǃyY(),this.ǃJzW=null,this.ǃJzv.ǃyY(),this.ǃJzv=null,this.ǃJzn=null,this.ǃJzX=null,this.ǃJzq.clear(),this.ǃJzM.clear(),this.ǃJzB.clear(),this.ǃJzD=null;for(let Ue of this.ǃJzd())Ue.ǃyY();for(let Ue of this.ǃJzs())Ue.ǃyY();for(let Ue of this.ǃJkO())Ue.ǃyY();for(let Ue of this.ǃJkJ())Ue.ǃyY();for(let Ue of this.ǃJzz)Ue.ǃyY(!0);ǃJ.ǃXX(this.ǃJzz),ǃJ.ǃXX(this.ǃJzT),ǃJ.ǃyY(this)}ǃJky(Ue,Ee){if(ǃJ.ǃJO(Ue),!ae.has(Ue))throw new Error("invalid origin filesystem mode");this.ǃJzn=Ue,this.ǃJzX=Ee,ǃOf.ǃ$D(this,this.ǃJzR||this.ǃOYj)}ǃJkf(){return this.ǃJzn}ǃJkS(){return this.ǃJzX}ǃJkn(Ue){ǃJ.ǃJO(Ue),this.ǃJzR=Ue}ǃJkX(){return this.ǃJzR||null}ǃOCo(){return _393}ǃIr(){return this.ǃJzC}ǃYQ(){this.ǃBZ()||this.ǃJzC||(this.ǃJzC=!0,this.ǃJkR(!0),app.ǃCs(this,"projectmarkchanged"))}ǃJkg(){this.ǃJzC=!1,app.ǃCs(this,"projectunmarkchanged")}ǃJkH(){this.ǃJkg();for(let Ue of this.ǃWQ())Ue.ǃJkU();for(let Ue of this.ǃQS())Ue.ǃJkU();for(let Ue of this.ǃjy())Ue.ǃJkU();for(let Ue of this.ǃJkC()){Ue.ǃJkU();for(let Ee of Ue.ǃUr())Ee.ǃJkU()}this.ǃJkR(!1)}ǃJku(){this.ǃBZ()||(this.ǃYQ(),this.ǃJk_(),this.ǃJkm(),this.ǃJkb())}ǃJk_(){if(!this.ǃBZ())for(let Ue of this.ǃWQ())Ue.ǃYQ()}ǃJkm(){if(!this.ǃBZ())for(let Ue of this.ǃQS())Ue.ǃYQ()}ǃJkb(){if(!this.ǃBZ())for(let Ue of this.ǃjy())Ue.ǃYQ()}ǃJkR(Ue){Ue=!!Ue;this.ǃJzu===Ue||(this.ǃJzu=Ue,app.ǃCs(this,"projectanychange"))}ǃyC(){return this.ǃJzu}ǃBZ(){return this.ǃuv}ǃHM(){return this.ǃJz_}ǃJzP(){this.ǃJz_=!0}ǃJkc(){this.ǃJzG&&(this.ǃJzN=this.ǃMQ(this.ǃJzG)),this.ǃJzG="",this.ǃJkt();for(let we of this.ǃJk$())we.ǃcN();for(let we of this.ǃQS())we.ǃcN();for(let we of this.ǃJkC())we.ǃcN();this.ǃJzv.ǃcN(),this.ǃuv=!1,this.ǃJkq(),this.ǃJzT=this.ǃJkM();let Ue=this.ǃJzT.length,Ee=performance.now(),Le=ǃJ.ǃYG.ǃYN("perf");this.ǃJkB().then(()=>{if(Le&&console.log(`[Project] Finished background parsing ${Ue} expressions over duration of ${performance.now()-Ee} ms`),!ǃJ.ǃOoi())return app.ǃJkL()})}ǃJkB(){return ǃJ.ǃgi(()=>{if(this.ǃJkz(),this.ǃJzT.length)return this.ǃJkB()})}ǃJkz(){let Ue=this.ǃJzT;for(let Ee=0,Le=Math.min(50,Ue.length);Ee{this.ǃJzD=null,app.ǃOO(this,!0)})),this.ǃJzD.ǃCK(Ue))}ǃJkK(){this.ǃJzM.clear()}ǃeu(Ue){let Ee=Ue.ǃyg().toLowerCase();if(this.ǃJzq.has(Ee))throw new Error(_404);this.ǃJzq.set(Ee,Ue)}ǃe_(Ue){let Ee=Ue.ǃyg().toLowerCase();if(!this.ǃJzq.has(Ee))throw new Error(_405);this.ǃJzq.delete(Ee)}ǃVs(Ue,Ee){let Le=Ee.toLowerCase(),we=Ue.ǃyg().toLowerCase();if(!this.ǃJzq.has(Le))throw new Error(_405);if(Le!==we&&this.ǃJzq.has(we))throw new Error(_404);this.ǃJzq.delete(Le),this.ǃJzq.set(we,Ue),this.ǃWW()}ǃJko(Ue){if(ǃJ.ǃk(Ue,ǃoD),this.ǃJzKEe)throw new Error(_395);assert(Ee>=this.ǃJzV.length||null===this.ǃJzV[Ee],"reserving UID that is already in use");for(let Le=this.ǃJzV.length-1;LeUe)throw new Error(_395);assert(UeUe)throw new Error(_395);return!!this.ǃJBV(Ue)}ǃJBV(Ue){if(ǃJ.ǃXq(Ue),Ue=Math.floor(Ue),0>Ue)throw new Error(_395);return Ue>=this.ǃJzV.length?null:this.ǃJzV[Ue]}ǃJkG(){return this.ǃJzV.length}ǃJLR(){let Ue=0;for(let Ee=0,Le;15>Ee;++Ee){if(Le=Math.floor(10*Math.random()),0===Ee)for(;0===Le;)Le=Math.floor(10*Math.random());Ue*=10,Ue+=Le}return Ue}ǃJMz(){return this.ǃJzf}ǃJkE(Ue){ǃJ.ǃJO(Ue);this.ǃJzS===Ue||(this.ǃJzS=Ue,this.ǃYQ())}ǃJkT(){return this.ǃJzS}ǃJkD(){return this.ǃJzg}ǃHi(Ue){ǃJ.ǃJO(Ue),this.ǃJzg=Ue}ǃjm(){return ǃJ.ǃObQ.ǃJki()?ǃJ.ǃObQ.ǃJkw().ǃJkp().ǃJka(this,!1):null}ǃyo(Ue){if((ǃJ.ǃJO(Ue),Ue=ǃJ.ǃOrV(Ue),!!Ue.length)&&this.ǃOYj!==Ue){if(!ǃJ.ǃOrz(Ue))throw new Error("name has invalid characters");this.ǃOYj=Ue,this.ǃYQ(),app.ǃJkY(),app.ǃCs(this,"projectnamechange")}}ǃVy(Ue,Ee){if(ǃJ.ǃJO(Ue),ǃJ.ǃLA(Ee),ǃJ.ǃS.ǃT("model.project.errors"),Ue=ǃJ.ǃOrV(Ue),!ǃJ.ǃOrz(Ue)){let Le=lang(".name-invalid.title"),we=lang(".name-invalid.message");return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(Ee,"warning",Le,we,{align:"bottom"}),void ǃJ.ǃS.ǃOu()}ǃJ.ǃS.ǃOu(),this.ǃyo(Ue)}ǃyg(){return this.ǃOYj}ǃye(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.description===Ue||(this.ǃJJI.description=Ue,this.ǃYQ())}ǃcU(){return this.ǃJJI.description}ǃyr(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.version===Ue||(this.ǃJJI.version=Ue,this.ǃYQ())}ǃPk(){return this.ǃJJI.version}ǃyN(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.ǃJLa===Ue||(this.ǃJJI.ǃJLa=Ue,this.ǃYQ())}ǃPe(){return this.ǃJJI.ǃJLa}ǃPI(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.ǃJLp===Ue||(this.ǃJJI.ǃJLp=Ue,this.ǃYQ())}ǃPr(){return this.ǃJJI.ǃJLp}ǃPG(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.ǃJLw===Ue||(this.ǃJJI.ǃJLw=Ue,this.ǃYQ())}ǃPN(){return this.ǃJJI.ǃJLw}ǃPo(Ue){ǃJ.ǃJO(Ue);this.ǃJJI.ǃJLY===Ue||(this.ǃJJI.ǃJLY=Ue,this.ǃYQ())}ǃPK(){return this.ǃJJI.ǃJLY}ǃdJ(Ue){if(ǃJ.ǃXq(Ue),Ue=Math.floor(Ue),2>Ue)throw new Error("invalid viewport width");this.ǃJzH===Ue||(this.ǃJzH=Ue,this.ǃYQ())}ǃdO(){return this.ǃJzH}ǃdf(Ue){if(ǃJ.ǃXq(Ue),Ue=Math.floor(Ue),2>Ue)throw new Error("invalid viewport height");this.ǃJzU===Ue||(this.ǃJzU=Ue,this.ǃYQ())}ǃdy(){return this.ǃJzU}ǃd_(Ue){Ue=!!Ue;this.ǃJJI.ǃJLQ===Ue||(this.ǃJJI.ǃJLQ=Ue,this.ǃYQ())}ǃnR(){return this.ǃJJI.ǃJLQ}ǃPW(Ue){if(ǃJ.ǃq$(Ue,ǃJs),Ue&&Ue.ǃng()!==this)throw new Error("layout from wrong project");this.ǃJzN===Ue||(this.ǃJzN=Ue||null,this.ǃYQ())}ǃPF(){return this.ǃJzN&&this.ǃJzN.ǃXb()?this.ǃJzN:null}ǃPl(Ue){Ue=!!Ue;this.ǃJJI.ǃJLj===Ue||(this.ǃJJI.ǃJLj=Ue,this.ǃYQ())}ǃPZ(){return this.ǃJJI.ǃJLj}ǃdR(Ue){if(ǃJ.ǃJO(Ue),!de.has(Ue))throw new Error(`invalid fullscreen mode '${Ue}'`);this.ǃJJI.ǃJLF===Ue||(this.ǃJJI.ǃJLF=Ue,this.ǃYQ())}ǃdX(){return this.ǃJJI.ǃJLF}ǃJkQ(){return"off"!==this.ǃdX()}ǃJkj(){switch(this.ǃdX()){case"off":return 0;case"scale-inner":return 2;case"scale-outer":return 3;case _399:return 4;case _403:return 5;default:throw new Error("invalid fullscreen mode");}}ǃdH(Ue){if(ǃJ.ǃJO(Ue),!re.has(Ue))throw new Error(`invalid fullscreen quality '${Ue}'`);this.ǃJJI.ǃJLW===Ue||(this.ǃJJI.ǃJLW=Ue,this.ǃYQ())}ǃdg(){return this.ǃJJI.ǃJLW}ǃxb(Ue){ǃJ.ǃk(Ue,ǃJ.ǃSR);this.ǃJJI.backgroundColor.ǃON_(Ue)||(this.ǃJJI.backgroundColor.ǃ_d(Ue),this.ǃYQ())}ǃPT(){return this.ǃJJI.backgroundColor.clone()}ǃPi(Ue){ǃJ.ǃk(Ue,ǃJ.ǃSR);this.ǃJJI.ǃJLZ.ǃON_(Ue)||(this.ǃJJI.ǃJLZ.ǃ_d(Ue),this.ǃYQ())}ǃPD(){return this.ǃJJI.ǃJLZ.clone()}ǃPw(Ue){Ue=!!Ue;this.ǃJJI.ǃJLl===Ue||(this.ǃJJI.ǃJLl=Ue,this.ǃYQ())}ǃPp(){return this.ǃJJI.ǃJLl}ǃPQ(Ue){ǃJ.ǃk(Ue,ǃJ.ǃSR);this.ǃJJI.ǃJLx.ǃON_(Ue)||(this.ǃJJI.ǃJLx.ǃ_d(Ue),this.ǃYQ())}ǃPY(){return this.ǃJJI.ǃJLx.clone()}ǃdq(Ue){if(Ue=!!Ue,this.ǃJJI.ǃJLA!==Ue){if(!Ue&&"c3"===this.ǃdm())throw new Error("cannot disable high-DPI in C3 runtime");this.ǃJJI.ǃJLA=Ue,this.ǃYQ()}}ǃd$(){return this.ǃJJI.ǃJLA||"c3"===this.ǃdm()}ǃdC(Ue){if(ǃJ.ǃJO(Ue),!oe.has(Ue))throw new Error(`invalid orientation '${Ue}'`);this.ǃJJI.ǃJLh===Ue||(this.ǃJJI.ǃJLh=Ue,this.ǃYQ())}ǃdU(){return this.ǃJJI.ǃJLh}ǃJkF(){switch(this.ǃdU()){case"any":return 0;case"portrait":return 1;case"landscape":return 2;default:throw new Error("invalid orientation");}}ǃdt(Ue){if(Ue=!!Ue,this.ǃJJI.ǃJLv!==Ue){if(!Ue&&"c3"===this.ǃdm()){if(this.ǃBZ())return;throw new Error("cannot disable WebGL in C3 runtime")}this.ǃJJI.ǃJLv=Ue,this.ǃYQ()}}ǃdc(){return this.ǃJJI.ǃJLv||"c3"===this.ǃdm()}ǃdu(Ue){if(ǃJ.ǃJO(Ue),!ye.has(Ue))throw new Error(`invalid sampling mode '${Ue}'`);this.ǃJJI.ǃJLP===Ue||(this.ǃJJI.ǃJLP=Ue,this.ǃYQ(),this.ǃJkW(),app.ǃRB().ǃRM())}ǃ_S(){return this.ǃJJI.ǃJLP}ǃdz(Ue){if(ǃJ.ǃJO(Ue),!Oe.has(Ue))throw new Error(`invalid downscaling quality '${Ue}'`);this.ǃJJI.ǃJLd===Ue||(this.ǃJJI.ǃJLd=Ue,this.ǃYQ(),this.ǃJkZ(),app.ǃRB().ǃRM())}ǃdL(){return this.ǃJJI.ǃJLd}ǃJkl(){switch(this.ǃdL()){case"low":return 0;case"medium":return 1;case"high":return 2;default:throw new Error("invalid downscaling quality");}}ǃPA(Ue){if(ǃJ.ǃJO(Ue),!le.has(Ue))throw new Error(`invalid loader style '${Ue}'`);return this.ǃJJI.ǃJLs===Ue?void 0:app.ǃJS()&&Ue!==_390?void(this.ǃBZ()||app.ǃJn(5)):void(this.ǃJJI.ǃJLs=Ue,this.ǃYQ())}ǃPx(){return app.ǃJS()?_390:this.ǃJJI.ǃJLs}ǃJkx(){switch(this.ǃPx()){case _396:return 0;case"progress":return 1;case"percent":return 2;case"none":return 3;case _390:return 4;default:throw new Error("invalid loader style");}}ǃPv(Ue){Ue=!!Ue;this.ǃJJI.ǃJzO===Ue||(this.ǃJJI.ǃJzO=Ue,this.ǃYQ())}ǃPh(){return this.ǃJJI.ǃJzO}ǃdV(Ue){Ue=!!Ue;this.ǃJJI.ǃJzJ===Ue||(this.ǃJJI.ǃJzJ=Ue,this.ǃYQ())}ǃdk(){return this.ǃJJI.ǃJzJ}ǃdb(Ue){if(ǃJ.ǃJO(Ue),!Je.has(Ue))throw new Error("invalid runtime");this.ǃJzm===Ue||(this.ǃJzm=Ue,this.ǃYQ())}ǃdm(){return this.ǃJzm}ǃJkA(Ue){return Ue=!!Ue,this.ǃJzc===Ue?void 0:app.ǃJS()&&Ue?void(this.ǃBZ()||app.ǃJn(19)):void(this.ǃJzc=Ue,this.ǃYQ())}ǃdI(){return!app.ǃJS()&&this.ǃJzc}ǃdB(Ue){Ue=!!Ue;this.ǃJJI.ǃJzy===Ue||(this.ǃJJI.ǃJzy=Ue,this.ǃYQ())}ǃdM(){return this.ǃJJI.ǃJzy}*ǃkp(){for(let Ue of this.ǃQS())for(let Ee of Ue.ǃkp())yield Ee}*ǃJkh(){for(let Ue of this.ǃkp())Ue.ǃqk()||(yield Ue)}*ǃJkv(){for(let Ue of this.ǃkp())Ue.ǃqk()&&(yield Ue)}ǃIH(){return this.ǃJzI}ǃQS(){return this.ǃJzI.ǃJfr()}ǃJzd(){return this.ǃJzI.ǃJLo()}ǃMQ(Ue){ǃJ.ǃJO(Ue),Ue=Ue.toLowerCase();for(let Ee of this.ǃQS())if(ǃJ.ǃO$X(Ue,Ee.ǃyg()))return Ee;return null}ǃJkP(Ue){return ǃJ.ǃJO(Ue),!!this.ǃMQ(Ue)}ǃJkd(){let Ue=1,Ee="",Le=lang("model.project.new-layout-name");do Ee=Le.replace("{0}",Ue),++Ue;while(this.ǃJkP(Ee));return Ee}ǃJks(){return ǃJ.ǃUe(this.ǃQS())}ǃJVO(){return ǃJ.ǃUe(this.ǃjy())}ǃqM(){return this.ǃJzE}ǃjy(){return this.ǃJzE.ǃJfr()}ǃJVJ(){return this.ǃJzE.ǃJLo()}ǃMj(Ue){ǃJ.ǃJO(Ue),Ue=Ue.toLowerCase();for(let Ee of this.ǃjy())if(ǃJ.ǃO$X(Ue,Ee.ǃyg()))return Ee;return null}ǃJVy(Ue){return ǃJ.ǃJO(Ue),!!this.ǃMj(Ue)}ǃJVf(){let Ue=1,Ee="",Le=lang("model.project.new-event-sheet-name");do Ee=Le.replace("{0}",Ue),++Ue;while(this.ǃJVy(Ee));return Ee}ǃJkt(){this.ǃJVS(ǃJ.ǃb(ǃZ_))}ǃJVn(Ue){let Ee=ǃJ.ǃb(ǃJVX,Ue);return this.ǃJVS(Ee),Ee.ǃbW()}ǃWW(){this.ǃBZ()||this.ǃJVS(ǃJ.ǃb(ǃJVR))}ǃFV(){this.ǃBZ()||this.ǃJVS(ǃJ.ǃb(ǃJVg))}ǃJVS(Ue){ǃJ.ǃk(Ue,ǃJVH);for(let Ee of this.ǃjy())Ee.ǃbj().accept(Ue)}ǃrQ(Ue){let Ee=null;if(Ue instanceof ǃPu)Ee=ǃJ.ǃb(ǃJVU,Ue);else if(Ue instanceof ǃPC)Ee=ǃJ.ǃb(ǃJVC,Ue);else if(Ue instanceof ǃbo)Ee=ǃJ.ǃb(ǃJVu,Ue);else if(Ue instanceof ǃP_)Ee=ǃJ.ǃb(ǃJV_,Ue);else if(Ue instanceof ǃoa)Ee=ǃJ.ǃb(ǃJVm,Ue);else if(Ue instanceof Plugin)Ee=ǃJ.ǃb(ǃJVb,Ue,this);else if(Ue instanceof ǃJVc)Ee=ǃJ.ǃb(ǃJVt,Ue,this);else if(Ue instanceof ǃJV$)Ee=ǃJ.ǃb(ǃJVq,Ue,this);else throw new Error("cannot find all references for given type");return this.ǃJVS(Ee),Ee.ǃbW()}ǃJVM(Ue,Ee,Le=!0){return ǃJ.ǃJO(Ue),ǃJ.ǃq$(Ee,ǃFo),Le=!!Le,!!this.ǃJVB(Ue,Ee,Le)}ǃJVB(Ue,Ee,Le=!0){ǃJ.ǃJO(Ue),ǃJ.ǃq$(Ee,ǃFo),Le=!!Le;for(let we of this.ǃJVL(Ee,Le))if(ǃJ.ǃO$X(Ue,we.ǃqz()))return we;return null}ǃJVz(Ue){ǃJ.ǃq$(Ue,ǃFo);let Ee=1,Le="",we=lang("model.event-sheet.event-variable.new-variable-name");do Le=we.replace("{0}",Ee),++Ee;while(this.ǃJVM(Le,Ue,!1));return Le}*ǃJVL(Ue,Ee=!0){ǃJ.ǃq$(Ue,ǃFo),Ee=!!Ee,Ee||(Ue?yield*Ue.ǃJVk():yield*this.ǃJVV()),Ue&&(yield*Ue.ǃJVK()),yield*this.ǃJVo()}*ǃJVe(Ue,Ee){ǃJ.ǃq$(Ue,ǃFo);for(let Le of this.ǃJVL(Ue))"boolean"===Le.ǃqL()?Ee&&(yield Le):Ee||(yield Le)}*ǃJVo(){for(let Ue of this.ǃjy())yield*Ue.ǃJVo()}*ǃJVV(){for(let Ue of this.ǃjy())yield*Ue.ǃbj().ǃJVk()}ǃJVr(Ue){ǃJ.ǃJO(Ue);let Ee=ǃJ.ǃb(ǃJVI,Ue);return this.ǃJVS(Ee),Ee.ǃJVN()}ǃJVG(Ue){return ǃJ.ǃJO(Ue),!!this.ǃJVr(Ue)}ǃJVE(){let Ue=1,Ee="",Le=lang("model.event-sheet.event-group.new-group-name");do Ee=Le.replace("{0}",Ue),++Ue;while(this.ǃJVG(Ee));return Ee}ǃJVT(){const Ue=ǃJ.ǃb(ǃJVD);return this.ǃJVS(Ue),Ue.ǃJVi()}ǃJVa(){const Ue=ǃJ.ǃb(ǃJVp);return this.ǃJVS(Ue),Ue.ǃJVi()}ǃJVw(){let Ue=ǃJ.ǃb(ǃJVY);this.ǃJVS(Ue);let Ee=Ue.ǃJVQ();return Ee?{ok:!1,ǃJVj:Ee}:{ok:!0}}ǃJkM(){let Ue=ǃJ.ǃb(ǃJVF);return this.ǃJVS(Ue),Ue.ǃJVW()}ǃyy(){return this.ǃJzW.ǃJVZ()}ǃyS(){return this.ǃJzW.ǃJVl()}ǃuS(Ue){ǃJ.ǃk(Ue,ǃuf),this.ǃJzW.ǃCK(Ue),this.ǃJzW.ǃJVx(!1),app.ǃCs(this,_400),this.ǃJzW.ǃJVx(!0)}ǃLD(Ue){ǃJ.ǃk(Ue,ǃuf),this.ǃJzW.ǃOn(Ue),app.ǃCs(this,_400)}ǃJo(){return this.ǃJzW.ǃyB()?this.ǃJzW.ǃJo().then(Ue=>Ue):Promise.resolve(!1)}ǃJr(){return this.ǃJzW.ǃyL()?this.ǃJzW.ǃJr().then(Ue=>Ue):Promise.resolve(!1)}ǃyB(){return this.ǃJzW.ǃyB()}ǃyL(){return this.ǃJzW.ǃyL()}ǃPU(){let Ue=this.ǃJzW.ǃPU();Ue&&app.ǃCs(this,"projectundopointsremoved")}ǃOgh(){return this.ǃJzW.ǃOgh()}ǃJVA(Ue){this.ǃJzW.ǃzr(!!Ue)}ǃAV(){return this.ǃJzb}ǃOOL(){let Ue=0;for(let Ee of this.ǃJk$())for(let Le of Ee.ǃur())Ue++;return Ue}ǃIR(){return this.ǃJz$}ǃJk$(){return this.ǃJz$.ǃJfr()}ǃJkO(){return this.ǃJz$.ǃJLo()}*ǃWQ(){yield*this.ǃJk$(),yield*this.ǃJVh()}ǃJVv(Ue){return ǃJ.ǃJO(Ue),this.ǃJzq.get(Ue.toLowerCase())||null}ǃOnD(Ue){ǃJ.ǃJO(Ue);let Ee=this.ǃJzq.get(Ue.toLowerCase())||null;return Ee instanceof ǃej||(Ee=null),Ee}ǃJVP(Ue){return ǃJ.ǃJO(Ue),!!this.ǃOnD(Ue)}ǃJVd(Ue){return ǃJ.ǃJO(Ue),this.ǃJzq.has(Ue.toLowerCase())}ǃIW(Ue){if(ǃJ.ǃJO(Ue),Ue=ǃoa.ǃOnw(Ue,!0),!this.ǃJVd(Ue))return Ue;let Ee=2,Le="";do Le=Ue+Ee,++Ee;while(this.ǃJVd(Le));return Le}ǃJVs(Ue){ǃJ.ǃk(Ue,ǃej);for(let Le of this.ǃJzz)if(Le.ǃPn(Ue))throw new Error("object type already in shared collection");for(let Le of this.ǃJzz)if(!Le.ǃOdJ())return Le.ǃJKO(Ue),Le.ǃJKJ();let Ee=ǃJ.ǃb(ǃJKy,this,this.ǃJKf());return Ee.ǃJKO(Ue),this.ǃJzz.push(Ee),Ee.ǃJKJ()}ǃJKS(Ue){ǃJ.ǃk(Ue,ǃej);for(let Ee of this.ǃJzz)if(Ee.ǃIp(Ue))return void(Ee.ǃIU()&&(Ee.ǃyY(),ǃJ.ǃOrE(this.ǃJzz,Ee)));throw new Error("could not find collection to remove from")}*ǃJKn(){for(let Ue of this.ǃJzz)yield Ue}*ǃJKX(){for(let Ue of this.ǃJKn())yield Ue.ǃJKJ();for(let Ue of this.ǃJk$())(Ue.ǃox()||Ue.ǃoZ())&&(Ue.ǃJKR()||(yield Ue.ǃJKg()))}*ǃJKH(){for(let Ue of this.ǃJKX())for(let Ee of Ue.ǃJKU())yield Ee}ǃJKC(Ue){return ǃJ.ǃJO(Ue),this.ǃJzk.has(Ue)}ǃJKu(Ue){if(ǃJ.ǃk(Ue,ǃJK_),this.ǃJKC(Ue.ǃyg()))throw new Error(`sprite sheet collection name '${Ue.ǃyg()}' already in use`);this.ǃJzk.set(Ue.ǃyg(),Ue)}ǃJKm(Ue){if(ǃJ.ǃk(Ue,ǃJK_),!this.ǃJKC(Ue.ǃyg())){if(this.ǃHM())return;throw new Error("expected name to be in use")}this.ǃJzk.delete(Ue.ǃyg())}ǃJKf(){let Ue=0,Ee="";do Ee="shared-"+Ue,++Ue;while(this.ǃJKC(Ee));return Ee}ǃJKb(){let Ue=this.ǃJze;for(;this.ǃJzo.has(Ue);)Ue++;return this.ǃJzo.add(Ue),this.ǃJze=Ue+1,Ue}ǃJKc(Ue){if(ǃJ.ǃXq(Ue),0>Ue)throw new Error("invalid id");if(this.ǃJzo.has(Ue))throw new Error("id already in use");this.ǃJzo.add(Ue)}ǃJKt(Ue){if(ǃJ.ǃXq(Ue),0>Ue)throw new Error("invalid id");if(!this.ǃJzo.has(Ue))throw new Error("id not in use");this.ǃJzo.delete(Ue)}ǃJK$(){return"c2"===this.ǃdm()?2048:4096}ǃJKq(){let Ue=new Set;for(let Ee of this.ǃJk$())Ue.add(Ee.ǃtH());return Ue}ǃJKM(){let Ue=new Set,Ee=new Set,Le=new Set;for(let we of this.ǃWQ()){if(Ue.add(we.ǃtH()),we.ǃtH().ǃIE())for(let xe of we.ǃJKB())Ee.add(xe.ǃAh());if(we.ǃtH().ǃIT())for(let xe of we.ǃJKL())Le.add(xe.ǃdw())}for(let we of this.ǃQS()){for(let xe of we.ǃJKL())Le.add(xe.ǃdw());for(let xe of we.ǃkp())for(let ke of xe.ǃJKL())Le.add(ke.ǃdw())}return{ǃJKz:Ue,ǃJKk:Ee,ǃJKV:Le}}ǃJKK(){const Ue=this.ǃJKM(),Ee=[];for(const Le of Ue.ǃJKz)"built-in"===Le.ǃJKo()||Le.ǃJKe()||Ee.push({type:_391,name:Le.ǃyg(),id:Le.ǃdQ(),ǃJLa:Le.ǃPe()});for(const Le of Ue.ǃJKk)"built-in"===Le.ǃJKo()||Le.ǃJKe()||Ee.push({type:_394,name:Le.ǃyg(),id:Le.ǃdQ(),ǃJLa:Le.ǃPe()});return Ee}ǃdN(Ue){if(Ue=!!Ue,!this.ǃdI()&&Ue){const Ee=this.ǃJKK();if(Ee.length){ǃJ.ǃS.ǃT("model.project.errors.unbundlable-addons-warning");const Le={ǃJKr:Ee,caption:lang(".title"),ǃJKI:lang(".message")};ǃJ.ǃS.ǃOu();const we=ǃJ.ǃU.ǃOR.ǃOX("MissingAddons");we.ǃOg(Le)}}this.ǃJkA(Ue)}ǃJKN(){this.ǃJzr=!0}ǃJKG(){return this.ǃJzr}ǃJkW(){for(let Ue of this.ǃJzk.values())for(let Ee of Ue.ǃJKE())Ee.ǃOXx()}ǃJkZ(){for(let Ue of this.ǃJzk.values())for(let Ee of Ue.ǃJKE())Ee.ǃOXx(),Ee.ǃJKT();for(let Ue of this.ǃJk$())Ue.ǃJkZ()}*ǃ_Q(Ue){ǃJ.ǃk(Ue,ǃJVc);for(let Ee of this.ǃJk$())if(Ee.ǃtH().ǃIE())for(let Dt of Ee.ǃJKB())Dt.ǃAh()===Ue&&(yield*Dt.ǃOSH())}ǃJKD(Ue){this.ǃJzt[Ue.ǃdj()].add(Ue.ǃdQ()),this.ǃYQ()}ǃJKi(Ue){return!!this.ǃJKa(Ue)}ǃJKa(Ue){ǃJ.ǃJO(Ue);let Ee=this.ǃJzq.get(Ue.toLowerCase())||null;return Ee instanceof ǃeW||(Ee=null),Ee}ǃNn(){let Ue=1,Ee="";do Ee=ǃCM("model.object-class.new-family-name",Ue),++Ue;while(this.ǃJVd(Ee));return Ee}ǃNR(Ue){if(ǃJ.ǃk(Ue,ǃeW),0===Ue.ǃIi())throw new Error("cannot add empty family");this.ǃJzL.ǃCK(Ue),this.ǃYQ()}ǃrl(){return this.ǃJzL}ǃJVh(){return this.ǃJzL.ǃJfr()}ǃJzs(){return this.ǃJzL.ǃJLo()}*ǃrr(Ue){ǃJ.ǃk(Ue,ǃej);let Ee=this.ǃJzM.get(Ue);Ee||(Ee=this.ǃJKp(Ue));for(let Le of Ee)Le.ǃXb()&&(yield Le)}*ǃJKw(Ue){ǃJ.ǃk(Ue,ǃej);let Ee=this.ǃJzM.get(Ue);Ee||(Ee=this.ǃJKp(Ue));for(let Le of Ee)yield Le}ǃJKp(Ue){ǃJ.ǃk(Ue,ǃej);let Ee=[];for(let Le of this.ǃJzs())Le.ǃPn(Ue)&&Ee.push(Le);return assert(!this.ǃJzM.has(Ue),"overwriting families for type cache entry"),this.ǃJzM.set(Ue,Ee),Ee}ǃIq(){return this.ǃJzi}ǃIM(){return this.ǃJza}ǃIB(){return this.ǃJzp}ǃIL(){return this.ǃJzw}ǃIz(){return this.ǃJzY}ǃIk(){return this.ǃJzQ}*ǃJKY(){yield this.ǃJzi,yield this.ǃJza,yield this.ǃJzp,yield this.ǃJzw,yield this.ǃJzY,yield this.ǃJzQ}*ǃJKQ(){yield*this.ǃJzi.ǃJfr(),yield*this.ǃJza.ǃJfr()}*ǃJKj(){yield*this.ǃJzp.ǃJfr(),yield*this.ǃJzw.ǃJfr(),yield*this.ǃJzY.ǃJfr(),yield*this.ǃJzQ.ǃJfr()}*ǃJKF(){for(let Ue of this.ǃJKj())yield*Ue.ǃUr()}ǃJKW(Ue){ǃJ.ǃJO(Ue);for(let Ee of this.ǃJKY())if(Ee.ǃIf()===Ue)return Ee;throw new Error("invalid folder kind")}*ǃJkC(){for(let Ue of this.ǃJKY())yield*Ue.ǃJfr()}*ǃJkJ(){for(let Ue of this.ǃJKY())yield*Ue.ǃJLo()}*ǃJKZ(){for(let Ue of this.ǃJkC())yield*Ue.ǃUr()}ǃJKl(){return this.ǃJzw.ǃJfr()}ǃOJn(){let Ue=[];for(let Ee of this.ǃJKl())Ue.push(Ee.ǃNT());return Promise.all(Ue)}ǃJKx(Ue){ǃJ.ǃJO(Ue);for(let Ee of this.ǃJzw.ǃJfr())Ee.ǃNB()&&ǃJ.ǃO$X(Ue,Ee.ǃyg())&&Ee.ǃNT()}ǃMF(Ue){ǃJ.ǃJO(Ue);let Ee=Ue.toLowerCase();for(let Le of this.ǃJkC())if(ǃJ.ǃO$X(Le.ǃyg(),Ee))return Le;return null}ǃJKA(Ue){return ǃJ.ǃJO(Ue),!!this.ǃMF(Ue)}ǃMW(Ue){ǃJ.ǃJO(Ue);let Ee=ǃJ.ǃri(Ue),Le=ǃJ.ǃHE(Ue),we=this.ǃMF(Ee);return we?we.ǃJKh(Le):null}ǃJKv(Ue){return ǃJ.ǃJO(Ue),!!this.ǃMW(Ue)}ǃJKP(){return Promise.all(pe.map(Ee=>{return ǃJ.ǃ$Z("media/"+Ee).then(Le=>{this.ǃIz().ǃJKd(Le,Ee)})}))}ǃObW(){const Ue=/icon\-\d+\.png/i,Ee=[];for(const Le of this.ǃJzY.ǃJfr())for(const we of Le.ǃUr())Ue.test(we.ǃCB())&&Ee.push(we);return Ee.sort((Le,we)=>{const xe=Le.ǃCB(),ke=we.ǃCB(),Se=parseInt(xe.substr(5,xe.length-9),10),Xe=parseInt(ke.substr(5,ke.length-9),10);return Se-Xe}),Ee}ǃJKs(){for(const Ue of this.ǃJKQ())for(const Ee of Ue.ǃUr())if(Ee.ǃCE().ǃCG()===_402)return!0;return!1}ǃJkq(){this.ǃBZ()||app.ǃOSg().then(Ue=>{Ue&&this.ǃJzA.ǃHp()})}ǃJzh(){this.ǃFc()&&app.ǃLS("info",lang("model.project.exceeds-free-limits"))}ǃFc(){if(!app.ǃJS())return!1;const Ue=this.ǃJVn(!0).ǃJoO;if(Ue>app.ǃUy())return!0;let Ee=0;const Le=app.ǃJoJ(),we=app.ǃVX();for(const xe of this.ǃQS()){Ee+=xe.ǃJoy();let ke=0;for(const Se of xe.ǃkp())++ke,Ee+=Se.ǃJoy();if(ke>we||Ee>Le)return!0}for(const xe of this.ǃWQ())if(Ee+=xe.ǃJoy(),Ee>Le)return!0;return!!(this.ǃNo()>app.ǃNe())}ǃNo(){let Ue=0;for(const Ee of this.ǃJKl())++Ue;return Ue}ǃJof(){let Ue=0;for(const Ee of this.ǃQS()){Ue+=Ee.ǃJoy();for(const Le of Ee.ǃkp())Ue+=Le.ǃJoy()}for(const Ee of this.ǃWQ())Ue+=Ee.ǃJoy();return Ue}ǃJoS(Ue,Ee){ǃJ.ǃk(Ue,ǃOmT),ǃJ.ǃKw(Ee,Plugin,ǃJVc);let Le=Ee.ǃJon();Le.length&&Ue.ǃJoX(Ee,Le)}ǃJoR(Ue){ǃJ.ǃk(Ue,ǃOmT);let Ee=this.ǃJKM(),Le=Ee.ǃJKz,we=Ee.ǃJKk,xe=Ee.ǃJKV,ke=[];"c3"===this.ǃdm()&&Ue.ǃJog(this.ǃAV().ǃtH());for(let Se of Le)Ue.ǃJog(Se),this.ǃJoS(Ue,Se),ke.push([Ue.ǃJoH(Se.ǃdQ()),Se.ǃrS(),"world"===Se.ǃrJ(),Se.ǃJoU(),Se.ǃJoC(),Se.ǃJou(),Se.ǃJo_(),Se.ǃJom(),Se.ǃIT(),Se.ǃOnP()]);for(let Se of we)Ue.ǃJob(Se),this.ǃJoS(Ue,Se);for(let Se of xe)Ue.ǃJoc(Se.ǃdQ(),Se.ǃJot());return ke}ǃJo$(Ue){ǃJ.ǃk(Ue,ǃOmT);let Ee=[];for(let Le of this.ǃJVh()){let we=[Ue.ǃJoq(Le)];for(let xe of Le.ǃNS())we.push(Ue.ǃJoq(xe));Ee.push(we)}return Ee}ǃJoM(Ue){ǃJ.ǃk(Ue,ǃOmT),this.ǃJzF=0,this.ǃJzj=0;let Ee=[];for(let Le of this.ǃJKQ()){let we=[],xe=[...Le.ǃUr()].filter(ke=>Ue.ǃObT(ke)).sort(be.ǃJoB);for(let ke of xe)we.push([ke.ǃCE().ǃCG(),ke.ǃHE().toLowerCase(),ke.ǃUE().size]);we.length&&("music"===Le.ǃIf()?this.ǃJzF+=xe[0].ǃUE().size:this.ǃJzj+=xe[0].ǃUE().size,Ee.push([Le.ǃyg().toLowerCase(),we]))}return Ee}static ǃJoL(Ue){let Ee=ge.get(Ue.ǃCE().ǃCG());return Ee?Ee:99}static ǃJoB(Ue,Ee){return be.ǃJoL(Ue)-be.ǃJoL(Ee)}ǃJot(Ue){ǃJ.ǃk(Ue,ǃOmT);let Ee=null,Le=[...this.ǃWQ()].map(ke=>ǃJ.ǃgi(()=>ke.ǃJot(Ue))),we=null,xe=null;return Promise.all(Le).then(ke=>{Ee=ke;let Se=[...this.ǃQS()].map(Ne=>ǃJ.ǃgi(()=>Ne.ǃJot(Ue))),Xe=[...this.ǃjy()].map(Ne=>ǃJ.ǃgi(()=>Ne.ǃJot(Ue)));return Promise.all([Promise.all(Se),Promise.all(Xe)])}).then(ke=>{we=ke[0],xe=ke[1];let Se=Ue.ǃPF(),Xe=[...ǃJok.ǃJoz(this)].map(Ce=>Ce.ǃJot(Ue)),Ne=[...this.ǃJKl()].map(Ce=>Ce.ǃyg()),Re=this.ǃPZ();return Ue.ǃJoV()&&Se!==this.ǃPF()&&(Re=!1),{project:[this.ǃyg(),Se?Se.ǃyg():null,this.ǃJoR(Ue),Ee,this.ǃJo$(Ue),we,xe,this.ǃJoM(Ue),Ue.ǃJoK(),this.ǃnR(),this.ǃdO(),this.ǃdy(),this.ǃJkj(),this.ǃdc(),"linear"===this.ǃ_S(),this.ǃdk(),this.ǃPk(),this.ǃd$(),Re,this.ǃJkx(),this.ǃJkF(),this.ǃJkG(),this.ǃde(),"high"===this.ǃdg(),this.ǃJkl(),this.ǃPh(),!1,Xe,Ue.ǃObZ(),Ne,this.ǃdM()]}})}ǃJoo(){return this.ǃJzF}ǃJoe(){return this.ǃJzj}ǃJor(){return{properties:{description:this.ǃJJI.description,version:this.ǃJJI.version,author:this.ǃJJI.ǃJLa,authorEmail:this.ǃJJI.ǃJLp,authorWebsite:this.ǃJJI.ǃJLw,appId:this.ǃJJI.ǃJLY,pixelRounding:this.ǃJJI.ǃJLQ,useLoaderLayout:this.ǃJJI.ǃJLj,fullscreenMode:this.ǃJJI.ǃJLF,fullscreenQuality:this.ǃJJI.ǃJLW,backgroundColor:this.ǃJJI.backgroundColor.toJSON(),splashColor:this.ǃJJI.ǃJLZ.toJSON(),useThemeColor:this.ǃJJI.ǃJLl,themeColor:this.ǃJJI.ǃJLx.toJSON(),useHighDpi:this.ǃJJI.ǃJLA,orientations:this.ǃJJI.ǃJLh,enableWebGL:this.ǃJJI.ǃJLv,sampling:this.ǃJJI.ǃJLP,downscaling:this.ǃJJI.ǃJLd,loaderStyle:this.ǃJJI.ǃJLs,preloadSounds:this.ǃJJI.ǃJzO,clearBackground:this.ǃJJI.ǃJzJ,enhancedAccelerationPrecision:this.ǃJJI.ǃJzy,previewEffects:this.ǃJJI.ǃJoI,previewBrowser:this.ǃJJI.ǃJoN,pauseOnUnfocus:this.ǃJJI.ǃJoG},viewportWidth:this.ǃJzH,viewportHeight:this.ǃJzU,firstLayout:this.ǃPF()?this.ǃPF().ǃyg():null}}ǃJoE(){let Ue={};for(let Ee of this.ǃJKY())Ue[Ee.ǃIf()]=Ee.ǃIh();return Ue}ǃJoT(Ue){const Ee=Ue.ǃdj(),Le=Ue.ǃdQ();if(this.ǃJzt[Ee].has(Le)&&ǃJ.ǃJoi.ǃJoD(Ee,Le,null)){const we=ǃJ.ǃJoi.ǃ_Y(Ee,Le,null);return we.ǃJoa()}return Ue.ǃJoa()}ǃJop(Ue){const Ee=[],Le=this.ǃJKM();for(const we of Le.ǃJKz){const xe=("addon"===we.ǃJKo()||we.ǃJKo()===_393)&&this.ǃdI()&&we.ǃJKe();xe&&Ue.set(`addons/plugin/${we.ǃdQ()}.c3addon`,this.ǃJoT(we)),Ee.push({type:_391,id:we.ǃdQ(),name:we.ǃyg(),author:we.ǃPe(),version:we.ǃPk(),bundled:xe})}for(const we of Le.ǃJKk){const xe=("addon"===we.ǃJKo()||we.ǃJKo()===_393)&&this.ǃdI()&&we.ǃJKe();xe&&Ue.set(`addons/behavior/${we.ǃdQ()}.c3addon`,this.ǃJoT(we)),Ee.push({type:_394,id:we.ǃdQ(),name:we.ǃyg(),author:we.ǃPe(),version:we.ǃPk(),bundled:xe})}for(const we of Le.ǃJKV){const xe=("addon"===we.ǃJKo()||we.ǃJKo()===_393)&&this.ǃdI();xe&&Ue.set(`addons/effect/${we.ǃdQ()}.c3addon`,this.ǃJoT(we)),Ee.push({type:_392,id:we.ǃdQ(),name:we.ǃyg(),author:we.ǃPe(),version:we.ǃPk(),bundled:xe})}return this.ǃJzt.plugin.clear(),this.ǃJzt.behavior.clear(),this.ǃJzt.effect.clear(),Ee}ǃIh(Ue){let Ee={projectFormatVersion:ie,name:this.ǃOYj,runtime:this.ǃJzm,bundleAddons:this.ǃdI(),usedAddons:this.ǃJop(Ue),uniqueId:this.ǃJzf,cloudId:this.ǃJzS,objectTypes:this.ǃJz$.ǃIh(),containers:[...ǃJok.ǃJoz(this)].map(Le=>Le.ǃIh()),families:this.ǃJzL.ǃIh(),layouts:this.ǃJzI.ǃIh(),eventSheets:this.ǃJzE.ǃIh(),rootFileFolders:this.ǃJoE()};return Object.assign(Ee,this.ǃJor())}ǃJow(Ue){let Ee=Ue.properties;this.ǃye(Ee.description),this.ǃyr(Ee.version),this.ǃyN(Ee.author),this.ǃPI(Ee.authorEmail),this.ǃPG(Ee.authorWebsite),this.ǃPo(Ee.appId),this.ǃd_(Ee.pixelRounding),this.ǃPl(Ee.useLoaderLayout),this.ǃdR(Ee.fullscreenMode),this.ǃdH(Ee.fullscreenQuality),this.ǃJJI.backgroundColor.ǃONI(Ee.backgroundColor),this.ǃJJI.ǃJLZ.ǃONI(Ee.splashColor),this.ǃPw(Ee.useThemeColor),this.ǃJJI.ǃJLx.ǃONI(Ee.themeColor),this.ǃdq(Ee.useHighDpi),this.ǃdC(Ee.orientations),this.ǃdt(Ee.enableWebGL),this.ǃdu(Ee.sampling),this.ǃdz(Ee.downscaling),this.ǃPA(Ee.loaderStyle),this.ǃPv(Ee.preloadSounds),this.ǃdV(Ee.clearBackground),Ee.hasOwnProperty("enhancedAccelerationPrecision")&&this.ǃdB(Ee.enhancedAccelerationPrecision),this.ǃdJ(Ue.viewportWidth),this.ǃdf(Ue.viewportHeight),this.ǃuv||(this.ǃJzN=Ue.firstLayout?this.ǃMQ(Ue.firstLayout):null)}ǃIP(Ue){if(Ue.projectFormatVersion>ie)throw new Error("project from a future version of C3");this.ǃOYj=Ue.name,this.ǃJzm=Ue.runtime||"c2",this.ǃJzf=Ue.uniqueId,this.ǃJzS=Ue.cloudId||"",this.ǃJzc=!!Ue.bundleAddons,this.ǃJzG=Ue.firstLayout,this.ǃJow(Ue)}ǃJoY(){return this.ǃJzv.ǃIh()}ǃJoQ(Ue){this.ǃdo(Ue.previewEffects),this.ǃJMF(Ue.previewBrowser),this.ǃdr(Ue.pauseOnUnfocus)}ǃNa(){return this.ǃJzv.ǃIh()}ǃNF(Ue){this.ǃJzv.ǃIP(Ue)}ǃNY(){return this.ǃJzv}ǃBs(Ue,Ee){ǃJ.ǃJO(Ue),this.ǃJzv.ǃBs(Ue,Ee)}ǃLf(Ue){return ǃJ.ǃJO(Ue),this.ǃJzv.ǃLf(Ue)}ǃNW(Ue){Ue=!!Ue,this.ǃJzv.ǃln(Ue)}ǃdo(Ue){this.ǃJzv.ǃJMQ(Ue)}ǃdK(){return this.ǃJzv.ǃJMj()}ǃOfK(){return this.ǃdK()&&this.ǃdc()}ǃJMF(Ue){this.ǃJzv.ǃJMF(Ue)}ǃJMW(){return this.ǃJzv.ǃJMW()}ǃdr(Ue){this.ǃJzv.ǃJMZ(Ue)}ǃde(){return this.ǃJzv.ǃJMl()}ǃJoj(Ue){ǃJ.ǃBA(Ue),Ue=Object.assign({},me,Ue);const Ee=new Map,Le=new Set;Ue.ǃJoF=Le;const we=!!Ue.ǃJLi;Ee.set(_397,JSON.stringify(this.ǃIh(Ee))),Ee.set(_401,JSON.stringify(this.ǃNa()));for(let ke of this.ǃJk$())we&&ke.ǃJoW(Le),(!we||ke.ǃIr())&&Ee.set(ke.ǃJoZ(),JSON.stringify(ke.ǃIh())),ke.ǃJol(Ee,Ue);for(let ke of this.ǃJVh()){if(we){if(!ke.ǃIr())continue;ke.ǃJoW(Le)}Ee.set(ke.ǃJoZ(),JSON.stringify(ke.ǃIh()))}for(let ke of this.ǃQS()){if(we){if(!ke.ǃIr())continue;ke.ǃJoW(Le)}Ee.set(ke.ǃJoZ(ke.ǃyg()),JSON.stringify(ke.ǃIh())),Ee.set(ke.ǃJoZ(ke.ǃyg()+".uistate"),JSON.stringify(ke.ǃNa()))}for(let ke of this.ǃJKZ()){if(we){if(!ke.ǃIr())continue;ke.ǃJoW(Le)}Ee.set(ke.ǃJoZ(),ke.ǃUE())}for(let ke of this.ǃjy()){if(we){if(!ke.ǃIr())continue;ke.ǃJoW(Le)}Ee.set(ke.ǃJoZ(ke.ǃyg()),JSON.stringify(ke.ǃIh())),Ee.set(ke.ǃJoZ(ke.ǃyg()+".uistate"),JSON.stringify(ke.ǃNa()))}we&&this.ǃJox(Le);return Promise.resolve({ǃJoA:Ee,ǃJoh:Le})}ǃJox(Ue){for(let Ee of this.ǃJkO())Ee.ǃJox(Ue);for(let Ee of this.ǃJzs())Ee.ǃJox(Ue);for(let Ee of this.ǃJzd())Ee.ǃJox(Ue);for(let Ee of this.ǃJKZ())Ee.ǃJox(Ue);for(let Ee of this.ǃJVJ())Ee.ǃJox(Ue)}static ǃJov(Ue,Ee){ǃJ.ǃFt(Ue);const Le=ǃJ.ǃb(ǃJ.ǃJLy,Ue);return Le.ǃOpo(_397).then(we=>{const xe=ǃJ.ǃb(be),ke=xe.ǃJoP(we),Se=ke.ǃJKr,Xe=ke.ǃJod;return Se.length?Promise.reject({type:_398,ǃJKr:Se}):xe.ǃJos(Xe,Le).then(()=>{return Ee.duplicate&&(we.uniqueId=ee(),we.cloudId=""),xe.ǃJeO(we,Le,Ee)})})}ǃJoP(Ue){const Ee=Ue.usedAddons,Le={ǃJKr:[],ǃJod:[]};if(!Ee)return Le;for(const we of Ee)if(we.bundled)Le.ǃJod.push(we);else{const xe=we.type===_391&&ǃJ.ǃyD.ǃJoD(we.id,this)||we.type===_394&&ǃJ.ǃfd.ǃJoD(we.id,this)||we.type===_392&&ǃJ.ǃJeJ.ǃJoD(we.id,this);xe||Le.ǃJKr.push(we)}return Le}ǃJos(Ue,Ee){const Le=[];for(const we of Ue){const xe=we.id,ke=we.type;Le.push(Ee.ǃOcR(`addons/${ke}/${xe}.c3addon`).then(Se=>{return ǃJ.ǃJoi.ǃJey(Se,this)}))}return Promise.all(Le).then(()=>ǃJ.ǃS.ǃGY(!0)).then(()=>ǃJ.ǃJoi.ǃJef(this)).then(()=>ǃJ.ǃJoi.ǃJeS(this)).then(()=>ǃJ.ǃyD.ǃGY()).then(()=>ǃJ.ǃfd.ǃGY()).then(()=>ǃJ.ǃJoi.ǃJeS(null))}static ǃJen(Ue,Ee,Le){ǃJ.ǃk(Ue,Blob),ǃJ.ǃJO(Ee);const we=ǃJ.ǃb(ǃJ.ǃJLS,Ee);return ǃJ.ǃOIM(Ue).then(xe=>{let ke=ǃJ.ǃb(be);return ke.ǃJeO(xe,we,Le)})}ǃJeO(Ue,Ee,Le){return ǃJ.ǃFt(Ue),ǃJ.ǃk(Ee,ǃJ.ǃJLO),this.ǃIP(Ue),this.ǃJz$.ǃJeX(Ue.objectTypes,Ee).then(()=>{Le.indeterminate=!0}).then(()=>this.ǃJeR(Ue.containers)).then(()=>this.ǃJzL.ǃJeg(Ue.families,Ee)).then(()=>this.ǃJzI.ǃJeH(Ue.layouts,Ee)).then(()=>this.ǃJeU(Ue.rootFileFolders,Ee)).then(()=>this.ǃJzE.ǃJeC(Ue.eventSheets,Ee)).then(()=>this.ǃJBw()).then(()=>this.ǃJeu(Ee)).then(()=>{return this.ǃJkc(),this})}ǃJeu(Ue){return ǃJ.ǃFt(Ue),Ue.ǃJLJ(_401).then(Ee=>{return Ee?Ue.ǃOpo(_401).then(Le=>{return this.ǃNF(Le),this}):this})}ǃJeR(Ue){ǃJ.ǃCl(Ue);for(let Ee of Ue)ǃJok.ǃJe_(this,Ee)}ǃJeU(Ue,Ee){if(ǃJ.ǃk(Ee,ǃJ.ǃJLO),!!Ue){let Le=[];for(let[we,xe]of Object.entries(Ue)){let ke=this.ǃJKW(we);Le.push(ke.ǃJem(xe,Ee))}return Promise.all(Le)}}static ǃJeb(Ue,Ee){ǃJ.ǃFt(Ue);let Le=Ue.ǃOpk(".caproj");if(!Le)throw new Error("missing .caproj file");return Ue.ǃOpV(Le).then(ǃJ.ǃpj.Document.ǃpQ).then(we=>{const xe=be.ǃJec(we);if(xe.length)return Promise.reject({type:_398,ǃJKr:xe});let ke=ǃJ.ǃb(be);return ke.ǃJet(we,Ue,Ee)}).then(we=>{return we.ǃJkc(),we})}static ǃJec(Ue){const Ee=Ue.ǃpF(),Le=[],we=Ee.ǃOpO("used-plugins");if(we)for(const Se of we.children(_391)){const Xe=Se.ǃOpg("id");ǃJ.ǃyD.ǃJoD(Xe)||Le.push({type:_391,id:Xe,name:Se.ǃKP(),ǃJLa:Se.ǃOpg(_389)})}const xe=Ee.ǃOpO("used-behaviors");if(xe)for(const Se of xe.children(_394)){const Xe=Se.ǃOpg("id");ǃJ.ǃfd.ǃJoD(Xe)||Le.push({type:_394,id:Xe,name:Se.ǃKP(),ǃJLa:Se.ǃOpg(_389)})}const ke=Ee.ǃOpO("used-effects");if(ke)for(const Se of ke.children(_392)){const Xe=Se.ǃOpg("id");ǃJ.ǃJeJ.ǃJoD(Xe)||Le.push({type:_392,id:Xe,name:Se.ǃKP(),ǃJLa:Se.ǃOpg(_389)})}return Le}ǃJet(Ue,Ee,Le){ǃJ.ǃk(Ue,ǃJ.ǃpj.Document),ǃJ.ǃFt(Ee);let we=Ue.ǃpF();if("c2project"!==we.ǃOad())throw new Error("expected c2project tag");let xe=Le?ee():we.ǃOas("unique-id");xe&&(this.ǃJzf=xe),this.ǃOYj=we.ǃKP("name"),this.ǃye(we.ǃOas("description")),this.ǃyr(we.ǃOas("version")),this.ǃyN(we.ǃOas(_389)),this.ǃPI(we.ǃOas("author-email")),this.ǃPG(we.ǃOas("author-website")),this.ǃPo(we.ǃOas("app-id")),this.ǃd_(we.ǃOpX("pixel-rounding",!1)),this.ǃdo(we.ǃOpX("preview-effects",!0)),this.ǃPl(we.ǃOpX("use-loader-layout",!1)),we.ǃOpC("first-layout")&&(this.ǃJzG=we.ǃKP("first-layout"));let ke=we.ǃOCp("window-size");this.ǃdJ(ke.ǃOpJ("width")),this.ǃdf(ke.ǃOpJ("height"));let Se=we.ǃOCp("configuration-settings"),Xe=new Map;for(let Fe of Se.children("prop"))Xe.set(Fe.ǃOpg("name"),Fe.ǃKP());this.ǃJMF(ǃOcw.ǃJe$(Xe.get("Preview browser"))),this.ǃdR(ǃOcw.ǃJeq(Xe.get("Fullscreen in browser"))),this.ǃdH(ǃOcw.ǃJeM(Xe.get("Fullscreen scaling"))),this.ǃdq("No"!==Xe.get("Use high-DPI display")),this.ǃdC(ǃOcw.ǃJeB(Xe.get("Orientations"))),this.ǃdt("Off"!==Xe.get("Enable WebGL")),this.ǃdu(ǃOcw.ǃJeL(Xe.get("Sampling"))),this.ǃdz(ǃOcw.ǃJez(Xe.get("Downscaling"))),this.ǃPA(ǃOcw.ǃJek(Xe.get("Loader style"))),this.ǃPv("No"!==Xe.get("Preload sounds")),this.ǃdr("Yes"===Xe.get("Pause on unfocus")),this.ǃdV("No"!==Xe.get("Clear background"));let Ne=we.ǃOCp("object-folder"),Re=we.ǃOpO("families"),Ce=we.ǃOCp("layout-folder"),De=we.ǃOCp("event-folder");return this.ǃJz$.ǃJeV(Ne,Ee).then(()=>this.ǃJeK()).then(()=>this.ǃJeo(Re)).then(()=>this.ǃJee(we.ǃOpO("global-instances"))).then(()=>this.ǃJer(we,Ee)).then(()=>this.ǃJzI.ǃJeI(Ce,Ee)).then(()=>this.ǃJzE.ǃJeN(De,Ee)).then(()=>this.ǃJBw()).then(()=>this)}ǃJeG(Ue){if(ǃJ.ǃCl(Ue),2>Ue.length)throw new Error("container needs at least 2 objects");Ue.sort(ǃJ.ǃOnp),this.ǃJzB.add(Ue.join(","))}ǃJeK(){for(let Ue of this.ǃJzB){let Ee=Ue.split(","),Le=[];for(let we of Ee){let xe=this.ǃOnD(we);if(!xe)throw new Error(`missing object type name '${we}' in container`);Le.push(xe)}if(2>Le.length)throw new Error("invalid container");Le[0].ǃOOh(Le)}this.ǃJzB.clear()}ǃJeo(Ue){if(Ue)for(let Ee of Ue.children("family")){let Le=ǃeW.ǃJeE(Ee,this);this.ǃJzL.ǃCK(Le)}}ǃJee(Ue){if(Ue)for(let Ee of Ue.children("global-instance")){let Le=Ee.ǃOpg("type"),we=this.ǃOnD(Le);if(!we)throw new Error(`cannot find object type named '${Le}'`);we.ǃrn().ǃJeT(Ee)}}ǃJer(Ue,Ee){let Le=[],we=Ue.ǃOpO("sounds-folder");we&&Le.push(this.ǃJzi.ǃJeD(we,Ee));let xe=Ue.ǃOpO("music-folder");xe&&Le.push(this.ǃJza.ǃJeD(xe,Ee));let ke=Ue.ǃOpO("files-folder");return ke&&Le.push(this.ǃJzQ.ǃJeD(ke,Ee)),Promise.all(Le).then(()=>{let Se=this.ǃJzQ.ǃJLB("Icons",!1);return Se&&Se.ǃIU()&&Se.ǃVS(),this})}ǃJBw(){for(let Ue of this.ǃJkh()){Ue.ǃJei();let Ee=Ue.ǃyg();for(let Le of this.ǃJkv())if(Ee===Le.ǃyg()){Ue.ǃJea(Le);continue}}app.ǃCs(this,"refreshgloballayers")}ǃJBR(){let Ue=ǃJ.ǃb(ǃJ.ǃSR),Ee=Math.floor(this.ǃJzx/8),Le=this.ǃJzx%8,we=45*Le;return 0!==Ee&&(we+=45/(Ee+1)),Ue.ǃONe(we%360,100,90,1),this.ǃJzx++,Ue}},ǃHD.ǃJep=new Map([["normal",0],["additive",1],["copy",3],["destination-over",4],["source-in",5],["destination-in",6],["source-out",7],["destination-out",8],["source-atop",9],["destination-atop",10]])}{function ee(){return pe||(pe=new Map([["event-block",ǃqg],["comment",ǃbV],["event-group",ǃbz],["variable",ǃbo],["include",ǃbr]])),pe}const _406="normal",_407="scale-outer",_408="progress-logo",_409="letterbox-scale",te=[_406,"additive",_406,"copy","destination-over","source-in","destination-in","source-out","destination-out","source-atop","destination-atop"],ne=new Set(["1","True","true","On","on","Yes","yes","Enabled","enabled"]),ie=new Set(["0","False","false","Off","off","No","no","Disabled","disabled"]),ae=/ /g,de=/icon\-[0-9]*\.png/,re=new Map([["(default)","default"],["Chrome","chrome"],["Edge","edge"],["Internet Explorer","internet-explorer"],["Firefox","firefox"],["Opera","opera"],["Safari","default"],["Node-Webkit","nwjs"],["NW.js","nwjs"],["Custom","custom"]]),oe=new Map([["Off","off"],["No","off"],["","off"],["Crop","off"],["Yes","off"],["On (crop mode)","off"],["Scale inner","scale-inner"],["Scale outer",_407],["On (scale mode)",_407],["Scale",_407],["Letterbox scale",_409],["Letterbox integer scale","letterbox-integer-scale"]]),ye=new Map([["Low quality","low"],["High quality","high"]]),Oe=new Map([["Any","any"],["Portrait","portrait"],["Landscape","landscape"]]),le=new Map([["Point","point"],["Linear","linear"]]),Je=new Map([["Low quality","low"],["Medium quality","medium"],["High quality","high"]]),ue=new Map([["Progress bar & logo",_408],["",_408],["Progress bar only","progress"],["Percentage text","percent"],["Nothing (not recommended)","none"]]);let pe=null;window.ǃOcw=class he{constructor(){throw new TypeError("static class can't be instantiated")}static ǃOcp(ge){return ǃJ.ǃJO(ge),ge.toLowerCase().replace(ae,"-")}static ǃJew(ge){return isFinite(ge)?(ge=Math.floor(ge),0>ge||ge>=te.length?_406:te[ge]):_406}static ǃJe$(ge){return re.get(ge)||"default"}static ǃJeq(ge){return oe.get(ge)||_409}static ǃJeM(ge){return ye.get(ge)||"high"}static ǃJeB(ge){return Oe.get(ge)||"any"}static ǃJeL(ge){return le.get(ge)||"linear"}static ǃJez(ge){return Je.get(ge)||"medium"}static ǃJek(ge){return ue.get(ge)||_408}static ǃO$C(ge){return ge&&"(none)"!==ge?he.ǃOcp(ge):_406}static ǃJeY(ge){let me=ge.toString();return 0===me.length?"000":1===me.length?"00"+me:2===me.length?"0"+me:me}static ǃJeQ(ge){let me=ge.split(","),ve={name:"Arial",size:12,bold:!1,ǃJej:!1};if(0be&&(be=72*-be/96),ve.size=be||16}return 2"===we){let xe=be.ǃtg(me);if("combo"!==xe.ǃdj())ge.ǃfA(me,ve);else if(xe.ǃJeZ(ve))ge.ǃfA(me,ve);else if(ve=he.ǃOcp(ve),xe.ǃJeZ(ve))ge.ǃfA(me,ve);else{let ke=xe.ǃOOD().map(Se=>"\""+Se.value+"\"").join(",");console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project: the value '${ve}' could not be automatically recognised as one of the valid combo items [${ke}]. Handle it with LoadC2Property().`)}return}if(""===we){let xe=parseFloat(ve);return void(ǃJ.ǃOGx(ve)&&isFinite(xe)?ge.ǃfA(me,xe):console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project: the value '${ve}' could not be recognised as a number. Handle it with LoadC2Property().`))}if(""===we){let xe=!1;if(ne.has(ve))xe=!0;else if(ie.has(ve))xe=!1;else return void console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project: the value '${ve}' could not be recognised as a boolean. Handle it with LoadC2Property().`);return void ge.ǃfA(me,xe)}if(Le instanceof ǃJ.ǃSR){let xe=new ǃJ.ǃSR;return void(xe.ǃOnx(ve)?ge.ǃfA(me,xe):console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project: the value '${ve}' could not be recognised as a color. Handle it with LoadC2Property().`))}return void console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project: the value '${ve}' could not be converted to '${we}'. Handle it with LoadC2Property().`)}console.warn(`[C2 compat] Could not load ${Ue} '${Ee}' property '${me}' from a Construct 2 project, because the property name is not recognised. The value '${ve}' has been ignored. Handle it with LoadC2Property().`)}}static ǃJel(ge,me,ve,be){let Ue=me.ǃJex(ve);if(Ue&&("float"===Ue.ǃdj()||"percent"===Ue.ǃdj())){let Le=parseFloat(be);if(isFinite(Le))return void ge.ǃdx(ve,Le)}let Ee=me.ǃJeA(ve);if(Ee){let Le=Ee.ǃJeh;if("color"===Le.ǃdj()){let we=Ee.ǃJmG,xe=parseFloat(be);if(isFinite(xe)&&0<=we&&4>we){let ke=ge.ǃdZ(Le.ǃdQ());return ke.ǃsT()[we]=ǃJ.ǃRf(xe/255,0,1),void ge.ǃdx(Le.ǃdQ(),ke)}}else{let we=parseFloat(be);if(isFinite(we))return void ge.ǃdx(ve,we)}}console.warn(`[C2 compat] Could not load effect '${me.ǃdQ()}' parameter '${ve}' value '${be}' from a Construct 2 project.`)}static ǃJev(ge){return ǃJ.ǃJO(ge),de.test(ge)||"loading-logo.png"===ge}static ǃJeP(ge){return ǃJ.ǃJO(ge),ee().get(ge)||null}}}{const _410="cannot find id";window.ǃJK_=class extends ǃJ.ǃq{constructor(te,ne,ie){ǃJ.ǃk(te,ǃHD),ǃJ.ǃJO(ne),super(),this.ǃUl=te,this.ǃOYj=ne,this.ǃJcv=!!ie,this.ǃJed=[],this.ǃJes=new Map,this.ǃJzC=!1,this.ǃJrO=null,this.ǃUl.ǃJKu(this)}ǃyY(te){this.ǃJrO=null,this.ǃUl.ǃJKm(this);for(let ne of this.ǃJed)ne.ǃyY(te);if(ǃJ.ǃXX(this.ǃJed),!te){for(let ne of this.ǃJes.values())ne.ǃyY();this.ǃJes.clear()}ǃJ.ǃyY(this)}ǃYQ(){this.ǃJzC=!0}ǃIr(){return this.ǃJzC}ǃyo(te){ǃJ.ǃJO(te);this.ǃOYj===te||(this.ǃUl.ǃJKm(this),this.ǃOYj=te,this.ǃUl.ǃJKu(this))}ǃyg(){return this.ǃOYj}ǃng(){return this.ǃUl}ǃJrJ(){return this.ǃJcv}ǃJry(te){if(ǃJ.ǃk(te,ǃJrf),this.ǃJes.has(te.ǃJXn()))throw new Error("id already in use");this.ǃJes.set(te.ǃJXn(),te),this.ǃJzC=!0}ǃJrS(te){ǃJ.ǃk(te,ǃJrf);let ne=te.ǃJXn();if(!this.ǃJes.has(ne))throw new Error(_410);this.ǃJes.delete(ne);let ie=te.ǃOXq();ie&&ie.ǃJrS(te),this.ǃJzC=!0}ǃJrn(te){ǃJ.ǃXq(te);let ne=this.ǃJes.get(te);if("undefined"==typeof ne)throw new Error(_410);return ne}ǃJrX(te){return ǃJ.ǃXq(te),this.ǃJes.has(te)}ǃJrR(){return!!this.ǃJrO}ǃJrg(){if(!this.ǃJrR())throw new Error("not busy");return this.ǃJrO.then(()=>this)}ǃJrH(){return this.ǃJzC?this.ǃJrO?this.ǃJrO:(app.ǃJrU().ǃCK(),this.ǃJrO=this.ǃJrC().then(te=>{return this.ǃJru(te),app.ǃJrU().ǃOn(),this.ǃJrO=null,this}).catch(te=>{throw this.ǃJrO=null,te}),this.ǃJrO):Promise.resolve(this)}ǃJr_(){this.ǃJzC=!1;let te=[];for(let ne of this.ǃJes.values())ne.ǃJrm()||te.push(ne.ǃJrb());if(0===te.length)return Promise.resolve([]);if(1===te.length){let ne=te[0];return Promise.resolve([{width:ne.w,height:ne.h,rects:[{id:ne.id,x:0,y:0}]}])}return ǃJ.ǃJMt.ǃJMU("BuildSpriteSheets",{rects:te,maxSize:this.ǃUl.ǃJK$()})}ǃJrC(){return this.ǃJr_().then(te=>{return this.ǃJzC?this.ǃJrC():te})}ǃJru(te){for(let ne=this.ǃJed.length,ie=te.length;nete.length;){let ne=this.ǃJed.pop();ne.ǃyY()}for(let ne=0,ie=te.length;nethis.ǃOXx(),300),this.ǃJro=()=>this.ǃOys(),app.ǃRB().addEventListener(_411,this.ǃJro)}ǃyY(ie){if(this.ǃuP)throw new Error("spritesheet was already released");this.ǃuP=!0,this.ǃJrB=null,app.ǃRB().removeEventListener(_411,this.ǃJro),this.ǃJro=null,ie?this.ǃJes.clear():this.ǃJre(),this.ǃOXx(),this.ǃJrz=null,this.ǃJKT(),this.ǃJqD.ǃyY(),this.ǃJqD=null,this.ǃJr$=null,ǃJ.ǃyY(this)}ǃJKT(){this.ǃOmo&&(URL.revokeObjectURL(this.ǃOmo),this.ǃOmo=""),this.ǃJrk=null}ǃOys(){this.ǃOXx()}ǃbh(){return assert(0<=this.ǃOuH,"invalid sprite sheet index"),this.ǃOuH}ǃJrr(){return(this.ǃJr$.ǃyg()+"-sheet"+this.ǃbh()+("jpeg"===this.ǃJrV?".jpg":".png")).toLowerCase()}ǃfI(){if(0>=this.ǃtu)throw new Error(_413);return this.ǃtu}ǃfG(){if(0>=this.ǃt_)throw new Error(_413);return this.ǃt_}ǃng(){return this.ǃJr$.ǃng()}ǃJrI(){return this.ǃJes.size}ǃJrN(){return this.ǃJrV}ǃJrG(ie){if(ie=!!ie,this.ǃJr$.ǃIr())throw new Error("sprite sheet collection changed");return this.ǃJrk?Promise.resolve(this.ǃJrk):this.ǃJrz?this.ǃJrz:(app.ǃJrE().ǃCK(),this.ǃJrz=ee.ǃCK(()=>{return this.ǃJrT(ie,!0).then(ae=>{app.ǃJrE().ǃOn(),app.ǃJrD().ǃCK();let de="jpeg"===this.ǃJrV?"image/jpeg":"image/png";return ǃJ.ǃOIe(ae,de,this.ǃJrK)}).then(ae=>{return app.ǃJrD().ǃOn(),this.ǃJKT(),this.ǃJrk=ae,this.ǃJrz=null,this.ǃJrk}).catch(ae=>{throw this.ǃJrz=null,ae})}),this.ǃJrz)}ǃJri(){return assert(this.ǃJrk,"no pre-rendered sprite sheet blob available"),this.ǃJrk}ǃJra(){return this.ǃOmo||(this.ǃOmo=URL.createObjectURL(this.ǃJri())),this.ǃOmo}ǃJrp(){return this.ǃJri().size}ǃJrw(){return this.ǃJr$.ǃIr()?(this.ǃJr$.ǃJrH(),this.ǃJrL):(this.ǃJrL&&this.ǃJqD.ǃHH(),this.ǃJrL)}ǃJrY(ie,ae){return(this.ǃJqD.ǃHH(),this.ǃJrL)?Promise.resolve(this.ǃJrL):this.ǃJrB?this.ǃJrB:(ie=!!ie,ae=!!ae,this.ǃJrB=this.ǃJrQ(ie,ae).then(de=>{return ǃJ.ǃ_O(this)||this.ǃuP||!de?null:(this.ǃJqD.ǃHH(),this.ǃJrL&&app.ǃuh().ǃus(this.ǃJrL),this.ǃJrL=de,this.ǃJrB=null,app.ǃRB().ǃRM(),this.ǃJrL)}).catch(de=>{throw this.ǃJrB=null,de}),this.ǃJrB)}ǃJrj(ie,ae){this.ǃJrM=!1;let de;return de=this.ǃJr$.ǃIr()?this.ǃJr$.ǃJrH():Promise.resolve(!0),de.then(()=>{return ǃJ.ǃ_O(this)||this.ǃuP||this.ǃJrM?null:this.ǃJrT()}).then(re=>{return ǃJ.ǃ_O(this)||this.ǃuP||this.ǃJrM||!re||app.ǃuh().ǃud()?null:(app.ǃJrF().ǃCK(),app.ǃuh().ǃOCH(re,{ǃ_X:ie,ǃ_R:ae,ǃOfa:"low"!==this.ǃng().ǃdL(),width:this.ǃtu,height:this.ǃt_}))}).then(re=>{return re&&app.ǃJrF().ǃOn(),app.ǃuh().ǃud()?null:ǃJ.ǃ_O(this)||this.ǃuP||this.ǃJrM||!re?(re&&app.ǃuh().ǃus(re),null):re})}ǃJrQ(ie,ae){return this.ǃJrj(ie,ae).then(de=>{return ǃJ.ǃ_O(this)||this.ǃuP?null:this.ǃJrM?this.ǃJrQ(ie,ae):de})}ǃJrT(ie,ae){ie=!!ie,ae||app.ǃJrE().ǃCK();let de=[],re=[];for(let oe of this.ǃJes.values())ǃJ.ǃ_O(oe)||oe.ǃ_O()||(de.push(oe),re.push(oe.ǃJrW(ie)));if(1===de.length){let oe=de[0];if(0===oe.ǃJrZ()&&0===oe.ǃJrl()&&oe.ǃfI()===this.ǃtu&&oe.ǃfG()===this.ǃt_)return re[0].then(ye=>{return ae||app.ǃJrE().ǃOn(),ye})}return Promise.all(re).then(oe=>this.ǃJrx(de,oe,ae))}ǃJrx(ie,ae,de){return ǃJ.ǃ_O(this)||this.ǃuP||!ie.length?null:(assert(ie.length===ae.length,"should have same number of ImageSprite and ImageData"),16384>=this.ǃtu*this.ǃt_?this.ǃJrA(ie,ae,de):this.ǃJrh(ie,ae,de))}ǃJrA(ie,ae,de){let re=this.ǃtu,oe=this.ǃt_,ye=new ImageData(re,oe),Oe=new Uint32Array(ye.data.buffer);for(let le=0,Je=ie.length,ue;le{return de||app.ǃJrE().ǃOn(),ǃJ.ǃ_O(this)||this.ǃuP?null:new ImageData(new Uint8ClampedArray(Oe),this.ǃtu,this.ǃt_)})}ǃOXx(){this.ǃJrL&&(this.ǃJqD.ǃSP(),!app.ǃuh().ǃud()&&app.ǃuh().ǃus(this.ǃJrL),this.ǃJrL=null)}ǃJrS(ie){ǃJ.ǃk(ie,ǃJrf);let ae=ie.ǃJXn();if(!this.ǃJes.has(ae))throw new Error("cannot find id");this.ǃJes.delete(ae)}ǃJre(){for(let ie of this.ǃJes.values())ie.ǃJIJ();this.ǃJes.clear()}ǃJqi(){this.ǃJKT(),this.ǃOXx(),this.ǃJre(),this.ǃJrq=!0}ǃJrt(ie,ae){ǃJ.ǃXq(ae),this.ǃOuH=ae;let de=ie.width,re=ie.height,oe=ie.rects;if(assert(0this.ǃJIb(),30),this.ǃtu=0,this.ǃt_=0,this.ǃJIc=0,this.ǃJIt=0,this.ǃtB=new ǃJ.Rect,this.ǃJI$=de,this.ǃJIq=this.ǃJI$===_414?0:1,this.ǃJIM=this.ǃJIq,this.ǃJIB=this.ǃJIq,this.ǃJIL=0,this.ǃJIz=0,this.ǃJIk=0,this.ǃJIV=0,this.ǃJrV="png",this.ǃJrK=1,this.ǃJIK="",this.ǃJIo=null,this.ǃJr$.ǃJry(this),ne.add(this),this.ǃuP=!1}ǃyY(){if(ǃJ.ǃ_O(this))throw new Error(_419);if(this.ǃuP)throw new Error(_419);this.ǃuP=!0,this.ǃJI_=0,this.ǃJr$.ǃJrX(this.ǃOmx)&&this.ǃJr$.ǃJrS(this),this.ǃJIC=null,this.ǃJIu=null,ne.delete(this),this.ǃUl.ǃJKt(this.ǃOmx),this.ǃOmx=-1,this.ǃJr$=null,this.ǃUl=null,this.ǃOvF=null,this.ǃOYJ=null,this.ǃJIg=null,this.ǃJIH=null,this.ǃJIU=null,this.ǃtB=null,this.ǃJIo=null,this.ǃJIm.ǃyY(),this.ǃJIm=null,ǃJ.ǃyY(this)}ǃ_O(){return this.ǃuP}ǃJrR(){return 0this.ǃJIL&&(this.ǃJIL=4),4>this.ǃJIz&&(this.ǃJIz=4);else throw new Error(_416);this.ǃJIk=this.ǃJIL,this.ǃJIV=this.ǃJIz}ǃJIS(ae,de){if(ǃJ.ǃXq(ae),ǃJ.ǃXq(de),this.ǃtu>ae||this.ǃt_>de)throw new Error("cannot clamp padding to smaller than content size");this.ǃJIL>ae&&(this.ǃJIL=ae),this.ǃJIz>de&&(this.ǃJIz=de)}ǃJIf(){return this.ǃJI$}ǃJIr(ae,de,re){if(ǃJ.ǃk(ae,Blob),ǃJ.ǃXq(de),ǃJ.ǃXq(re),this.ǃJIR)throw new Error(_417);this.ǃJIR=!0,this.ǃJIe(de,re),this.ǃOYJ=ae}ǃJII(ae){if(ǃJ.ǃk(ae,Blob),this.ǃJIR)throw new Error(_417);return this.ǃJIR=!0,this.ǃOYJ=ae,this.ǃJI_++,this.ǃfY().then(de=>{return ǃJ.ǃ_O(this)?null:this.ǃuP?null:(this.ǃJIe(de.width,de.height),this.ǃJI_--,this)})}ǃJIN(ae){if(ǃJ.ǃLA(ae,"canvas"),this.ǃJIR)throw new Error(_417);return this.ǃJIR=!0,this.ǃJIe(ae.width,ae.height),this.ǃJI_++,ǃJ.ǃpA(ae).then(de=>{return ǃJ.ǃ_O(this)?null:this.ǃuP?null:(this.ǃOYJ=de,this.ǃJI_--,this)})}ǃJXn(){return this.ǃOmx}ǃfI(){return this.ǃtu}ǃfG(){return this.ǃt_}ǃJrd(){return this.ǃJIL}ǃJrs(){return this.ǃJIz}ǃJrZ(){return this.ǃJIc}ǃJrl(){return this.ǃJIt}ǃJrv(){return this.ǃJIM}ǃJrP(){return this.ǃJIB}ǃJIn(ae){return assert(this.ǃOvF,"should already be on a sheet"),this.ǃJIM!==ae.x||this.ǃJIB!==ae.y}ǃUE(){if(!this.ǃOYJ)throw new Error(_415);return this.ǃOYJ}ǃJIG(){if(!this.ǃOYJ)throw new Error(_415);return this.ǃOYJ.slice(0,this.ǃOYJ.size,this.ǃOYJ.type)}ǃfY(ae){if(ae=!!ae,!this.ǃOYJ)throw new Error(_415);return(this.ǃJIm.ǃHH(),this.ǃJIg)?Promise.resolve(this.ǃJIg):this.ǃJIC?this.ǃJIC:(this.ǃJI_++,this.ǃJIC=ǃJ.ǃOIq(this.ǃOYJ).then(de=>{return ǃJ.ǃ_O(this)?de:this.ǃuP?de:(this.ǃJIm.ǃHH(),ae||(this.ǃJIg=de),this.ǃJIC=null,this.ǃJI_--,de)}).catch(de=>{throw this.ǃJIC=null,this.ǃJI_--,de}),this.ǃJIC)}ǃJIE(ae){if(ae=!!ae,!this.ǃOYJ)throw new Error(_415);if(!ǃJ.ǃOeG.ImageBitmap)throw new Error("imagebitmap not supported");return(this.ǃJIm.ǃHH(),this.ǃJIH)?Promise.resolve(this.ǃJIH):this.ǃJIu?this.ǃJIu:(this.ǃJI_++,this.ǃJIu=createImageBitmap(this.ǃOYJ).then(de=>{return ǃJ.ǃ_O(this)?de:this.ǃuP?de:(this.ǃJIm.ǃHH(),ae||(this.ǃJIH=de),this.ǃJIu=null,this.ǃJI_--,de)}).catch(de=>{throw this.ǃJIu=null,this.ǃJI_--,de}),this.ǃJIu)}ǃ_y(ae){return ǃJ.ǃOeG.ImageBitmap?this.ǃJIE(ae):this.ǃfY(ae)}ǃJrW(ae){if(ae=!!ae,!this.ǃOYJ)throw new Error(_415);return(this.ǃJIm.ǃHH(),this.ǃJIU)?Promise.resolve(this.ǃJIU):(this.ǃJI_++,ǃJ.ǃOIk(this.ǃOYJ).then(de=>{return ǃJ.ǃ_O(this)?de:this.ǃuP?de:(this.ǃJIm.ǃHH(),ae||(this.ǃJIU=de),this.ǃJI_--,de)}))}ǃJIO(){this.ǃJIU=null}ǃJIJ(){this.ǃOvF=null}ǃOXq(){return this.ǃOvF}ǃJtm(ae,de,re){this.ǃOvF=de,this.ǃJIM=ae.x,this.ǃJIB=ae.y;let oe=this.ǃtu,ye=this.ǃt_,Oe=this.ǃOvF.ǃfI(),le=this.ǃOvF.ǃfG();re?(this.ǃJIc=this.ǃJIM+this.ǃJIq,this.ǃJIt=this.ǃJIB+this.ǃJIq,this.ǃJIL=this.ǃJIk,this.ǃJIz=this.ǃJIV):(this.ǃJIc=0,this.ǃJIt=0,this.ǃJIM=0,this.ǃJIB=0),this.ǃtB.set(this.ǃJIc/Oe,this.ǃJIt/le,(this.ǃJIc+oe)/Oe,(this.ǃJIt+ye)/le)}ǃJrw(){if(ǃJ.ǃ_O(this))throw new Error(_418);if(this.ǃuP)throw new Error(_418);if(!this.ǃOYJ)throw new Error(_415);return this.ǃOvF?this.ǃOvF.ǃJrw():null}ǃJrY(ae,de){if(!this.ǃOYJ)throw new Error(_415);return!this.ǃOvF&&this.ǃJrm()?Promise.resolve(null):(this.ǃJI_++,!this.ǃOvF||this.ǃJr$.ǃIr()?this.ǃJr$.ǃJrH().then(()=>{return ǃJ.ǃ_O(this)?null:this.ǃuP?null:this.ǃOvF.ǃJrY(ae,de)}).then(re=>{return ǃJ.ǃ_O(this)?null:this.ǃuP?null:(this.ǃJI_--,re)}):this.ǃOvF.ǃJrY(ae,de).then(re=>{return ǃJ.ǃ_O(this)?null:this.ǃuP?null:(this.ǃJI_--,re)}))}ǃOX$(){return!ǃJ.ǃ_O(this)&&this.ǃOYJ&&this.ǃOvF&&this.ǃJr$&&!this.ǃJr$.ǃIr()}ǃSM(){if(ǃJ.ǃ_O(this))throw new Error(_418);if(this.ǃuP)throw new Error(_418);if(!this.ǃOYJ)throw new Error(_415);if(!this.ǃOvF)throw new Error("image sprite not on a sheet");if(this.ǃJr$&&this.ǃJr$.ǃIr())throw new Error("image sprite collection needs rebuilding");return this.ǃtB}ǃJrb(){if(ǃJ.ǃ_O(this))throw new Error(_418);if(this.ǃuP)throw new Error(_418);if(0>=this.ǃtu||0>=this.ǃt_||0>=this.ǃJIL||0>=this.ǃJIz)throw new Error("invalid size");return{w:this.ǃJIk,h:this.ǃJIV,ow:this.ǃtu,oh:this.ǃt_,id:this.ǃOmx,own:this.ǃJI$===_414}}ǃJrN(){return this.ǃJrV}ǃJIy(){return this.ǃJrK}ǃJIT(ae,de){ǃJ.ǃJO(ae),ǃJ.ǃXq(de),this.ǃJrV=ae,this.ǃJrK=de}ǃJID(){return this.ǃJIK?Promise.resolve(this.ǃJIK):te.ǃCK(()=>{return this.ǃJrW(!0).then(ae=>ǃJ.Crypto.ǃOGb(ae.data.buffer)).then(ae=>{return this.ǃJIK=ae,ae})})}ǃJIi(ae){ǃJ.ǃq$(ae,ie);this.ǃJIo===ae||(this.ǃJIo=ae,this.ǃJr$.ǃYQ())}ǃJIa(){return this.ǃJIo}ǃJrm(){return!!this.ǃJIo}ǃJIp(){return this.ǃOYJ?this.ǃOYJ.size:0}ǃJIw(){return this.ǃJIg||this.ǃJIU||this.ǃJIH?4*(this.ǃtu*this.ǃt_):0}static all(){return ne.values()}}}{window.ǃJKy=class extends ǃJ.ǃq{constructor(ne,ie){ǃJ.ǃk(ne,ǃHD),ǃJ.ǃJO(ie),super(),this.ǃJr$=ǃJ.ǃb(ǃJK_,ne,ie,!1),this.ǃJIY=new Set}ǃyY(ne){this.ǃJr$.ǃyY(ne),this.ǃJr$=null,this.ǃJIY.clear(),this.ǃJIY=null,ǃJ.ǃyY(this)}ǃJKJ(){return this.ǃJr$}ǃJIQ(){return this.ǃJIY.size}ǃyg(){return this.ǃJr$.ǃyg()}ǃIU(){return 0===this.ǃJIY.size}ǃJIj(){let ne=0;for(let ie of this.ǃJIY)ie.ǃoZ()?ne+=ie.ǃJIF():ne++;return ne}ǃOdJ(){return this.ǃJIj()>=100}ǃJKO(ne){if(ǃJ.ǃk(ne,ǃej),this.ǃOdJ())throw new Error("shared sprite sheet collection is full");if(this.ǃJIY.has(ne))throw new Error("object already added");this.ǃJIY.add(ne)}ǃIp(ne){return(ǃJ.ǃk(ne,ǃej),!!this.ǃJIY.has(ne))&&(this.ǃJIY.delete(ne),!0)}ǃPn(ne){return ǃJ.ǃk(ne,ǃej),this.ǃJIY.has(ne)}ǃJrH(){return this.ǃJr$.ǃJrH()}}}{const _420="string",_421="number",_422="boolean",_423="invalid type",_424="instancevariablechange",_425="name already in object class namespace",ee=new Set([_422,_421,_420]);window.ǃPC=class te extends ǃco{constructor(ne,ie,ae){if(ǃJ.ǃk(ne,ǃoa),ǃJ.ǃJO(ie),ǃJ.ǃJO(ae),super(ne.ǃng()),!ee.has(ae))throw new Error(_423);if(this.ǃJIW=ne,this.ǃJIZ=null,ie=ǃoa.ǃOnw(ie,!1),!ie)throw new Error("invalid name");if(this.ǃJIW.ǃJIl(ie))throw new Error(_425);this.ǃOYj=ie,this.ǃOiD=ae,this.ǃOdA="",this.ǃJIx=new Map}ǃyY(){this.ǃJIW=null,this.ǃJIx.clear()}ǃOCo(){return"instance-variable"}ǃrG(){if(!this.ǃJIZ)throw new Error("instance var not yet added to folder");return this.ǃJIZ}ǃJLG(ne){ǃJ.ǃk(ne,ǃJIA),this.ǃJIZ=ne}ǃcf(){return this.ǃJIW}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLb(){app.ǃJIh(this,"instancevariableadd"),this.ǃng().ǃJku()}ǃJLm(){this.ǃng().ǃJku(),app.ǃJIh(this,"instancevariableremove")}ǃyo(ne){if(ǃJ.ǃJO(ne),ne=ǃoa.ǃOnw(ne,!1),!ne)throw new Error("invalid name");if(this.ǃOYj!==ne){if(!ǃJ.ǃO$X(this.ǃOYj,ne)&&this.ǃJIW.ǃJIl(ne))throw new Error(_425);this.ǃOYj=ne;const ie=this.ǃng();ie.ǃWW(),ie.ǃJku(),app.ǃJLq(this,"projectobjectnamechange")}}ǃyg(){return this.ǃOYj}ǃJIv(ne){if(ǃJ.ǃJO(ne),this.ǃOiD!==ne){if(!ee.has(ne))throw new Error(_423);this.ǃOiD=ne;for(let ie of this.ǃJIx.keys()){let ae;switch(this.ǃOiD){case _422:ae=!1;break;case _421:ae=0;break;case _420:ae="";}this.ǃJIx.set(ie,ae)}this.ǃcf().ǃYQ(),this.ǃcf().ǃJIP(),app.ǃJIh(this,_424)}}ǃdj(){return this.ǃOiD}ǃye(ne){ǃJ.ǃJO(ne);this.ǃOdA===ne||(this.ǃOdA=ne,this.ǃcf().ǃYQ(),app.ǃJIh(this,_424))}ǃcU(){return this.ǃOdA}ǃOOK(ne,ie){switch(ǃJ.ǃk(ne,ǃoD),this.ǃOiD){case _422:ie=!!ie;break;case _421:ǃJ.ǃzE(ie);break;case _420:ǃJ.ǃJO(ie);}this.ǃJIx.set(ne,ie),app.ǃJIh(this,_424),ne instanceof ǃKY&&ne.ǃ_w().ǃYQ()}ǃJId(ne,ie){ǃJ.ǃk(ne,ǃoD),ǃJ.ǃJO(ie);let ae;switch(this.ǃOiD){case _422:ae="true"===ie.toLowerCase();break;case _421:ae=parseFloat(ie);break;case _420:ae=ie;break;default:throw new TypeError(_423);}this.ǃOOK(ne,ae)}ǃJIs(ne){return ǃJ.ǃk(ne,ǃoD),this.ǃJIx.has(ne)}ǃOOV(ne){ǃJ.ǃk(ne,ǃoD);let ie=this.ǃJIx.get(ne);if("undefined"==typeof ie)throw new Error("missing instance variable value");return ie}ǃJNO(ne){ǃJ.ǃq$(ne,ǃej);let ie=null;for(let[ae,de]of this.ǃJIx)if(ae.ǃXb()&&(null==ie&&(ie=de),ne&&ae.ǃf$()===ne))return de;if(null!==ie)return ie;switch(this.ǃOiD){case _422:return!1;case _421:return 0;case _420:return"";default:throw new TypeError(_423);}}ǃJNJ(){if(0===this.ǃJIx.size)return this.ǃJNO();let ne=null;for(let ie of this.ǃJIx.values())if(null==ne)ne=ie;else if(ne!==ie)return null;return ne}ǃJNy(ne){ǃJ.ǃk(ne,ǃoa);let ie=[...ne.ǃOOz()],ae=ie.indexOf(this);return assert(-1!==ae,"cannot find instance variable export index"),ae}ǃIh(ne){ǃJ.ǃBA(ne);let ie=ne&&ne.mode||"",ae={name:this.ǃyg(),type:this.ǃdj(),desc:this.ǃcU()};return"copy"!==ie&&(ae.sid=this.ǃJLH()),ae}static ǃZR(ne,ie){let ae=ǃJ.ǃb(te,ne,ie.name,ie.type);return ie.hasOwnProperty("sid")&&ae.ǃJLC(ie.sid),ae}static ǃJNf(ne,ie){ǃJ.ǃk(ne,ǃoa);let ae=ie.ǃOpg("name"),de=ie.ǃOpg("type"),re=ne.ǃJNS(ae,de);return re.ǃye(ie.ǃOpg("comment")||""),ie.ǃOpR("sid")&&re.ǃJLC(ie.ǃOpH("sid")),re}}}"use strict",window.ǃJIA=class extends ǃel{constructor(te,ne){ǃJ.ǃk(te,ǃoa),super(te.ǃng(),ne,ǃPC),this.ǃJIW=te,this.ǃex()&&(this.ǃOYj="")}ǃYQ(){this.ǃJIW.ǃYQ()}ǃCK(te){if(ǃJ.ǃk(te,ǃPC),te.ǃJIZ)throw new Error("instance variable already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),app.ǃJIh(te,"instancevariableadd")}ǃJLb(){this.ǃYQ()}ǃJLm(){this.ǃYQ()}},"use strict";{const _426="name already in object class namespace";window.ǃPu=class extends ǃco{constructor(te,ne,ie){if(ǃJ.ǃk(te,ǃoa),ǃJ.ǃk(ne,ǃJVc),ǃJ.ǃJO(ie),super(te.ǃng()),this.ǃJIW=te,this.ǃJNn=ne,this.ǃJIZ=null,this.ǃfQ=null,ie=ǃoa.ǃOnw(ie,!0),!ie)throw new Error("invalid name");if(this.ǃJIW.ǃJIl(ie))throw new Error(_426);this.ǃOYj=ie,this.ǃJNX=new Map}ǃyY(){this.ǃfQ.ǃyY(),this.ǃJNX.clear(),this.ǃfQ=null,this.ǃJIW=null,this.ǃJNn=null}ǃOCo(){return"behavior-type"}ǃrG(){if(!this.ǃJIZ)throw new Error("behavior type not yet added to folder");return this.ǃJIZ}ǃJLG(te){ǃJ.ǃk(te,ǃJNR),this.ǃJIZ=te}ǃcf(){return this.ǃJIW}ǃAh(){return this.ǃJNn}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLu(){for(let te of this.ǃJNX.values())te.ǃJLu();super.ǃJLu()}ǃJL_(){super.ǃJL_();for(let te of this.ǃJNX.values())te.ǃJL_()}ǃJLb(){app.ǃJNg(this,"behaviortypeadd"),this.ǃng().ǃJku()}ǃJLm(){this.ǃng().ǃJku(),app.ǃJNg(this,"behaviortyperemove")}ǃJNH(te){ǃJ.ǃk(te,ǃoD);let ne=ǃJ.ǃb(ǃJeW,this,te);return ne.ǃJNU=this.ǃfQ.ǃOUp(ne),ne}ǃJNC(te,ne){ǃJ.ǃk(te,ǃoD),ǃJ.ǃq$(ne,ǃoD);let ie=this.ǃJNX.get(te);if(ie)return ie;ne&&(ie=this.ǃJNX.get(ne));let ae=this.ǃJNH(te);return ie&&ae.ǃJNu(ie),this.ǃJNX.set(te,ae),ae}ǃOON(te){ǃJ.ǃk(te,ǃoD);let ne=this.ǃJNX.get(te);if(!ne)throw new Error("object instance does not have associated behavior instance");return ne}ǃJN_(te){return ǃJ.ǃk(te,ǃoD),this.ǃJNX.has(te)}ǃJNm(){return ǃJ.ǃUe(this.ǃJNX.values())}*ǃOSH(){for(let te of this.ǃJNX.values())te.ǃXb()&&(yield te)}ǃyo(te){if(ǃJ.ǃJO(te),te=ǃoa.ǃOnw(te,!0),!te||ǃJ.ǃOrk(te))throw new Error("invalid name");if(this.ǃOYj!==te){if(!ǃJ.ǃO$X(this.ǃOYj,te)&&this.ǃJIW.ǃJIl(te))throw new Error(_426);this.ǃOYj=te;const ne=this.ǃng();ne.ǃWW(),ne.ǃJku(),app.ǃJLq(this,"projectobjectnamechange")}}ǃVy(te,ne){return ǃJ.ǃJO(te),ǃJ.ǃLA(ne),name=ǃoa.ǃOnw(te,!0),ǃJ.ǃS.ǃT("model.object-class.behavior-types.errors"),!name||ǃJ.ǃOrk(name)?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,"warning",lang(".name-invalid.title"),lang(".name-invalid.message"),{align:"bottom"}),void ǃJ.ǃS.ǃOu()):!ǃJ.ǃO$X(name,this.ǃyg())&&this.ǃJIW.ǃJIl(name)?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,"warning",lang(".name-used.title"),ǃra(".name-used.message",name),{align:"bottom"}),void ǃJ.ǃS.ǃOu()):void(!ǃJ.ǃO$X(name,te)&&ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,"warning",lang(".name-changed.title"),lang(".name-changed.message"),{align:"bottom"}),ǃJ.ǃS.ǃOu(),this.ǃyo(name))}ǃyg(){return this.ǃOYj}ǃJot(te){ǃJ.ǃk(te,ǃOmT);let ne=te.ǃJNb(this.ǃAh().ǃdQ());return[this.ǃyg(),ne,this.ǃJLH()]}ǃIh(te){ǃJ.ǃBA(te);let ne=te&&te.mode||"",ie={behaviorId:this.ǃAh().ǃdQ(),name:this.ǃyg()};return"copy"!==ne&&(ie.sid=this.ǃJLH()),ie}static ǃZR(te,ne){let ie=ne.behaviorId;const ae=te.ǃng();if(!ǃJ.ǃfd.ǃJoD(ie,ae))throw new Error(`missing behavior id '${ie}'`);let de=ǃJ.ǃfd.ǃ_Y(ie,ae),re=de.ǃJNc(te,ne.name);return ne.hasOwnProperty("sid")&&re.ǃJLC(ne.sid),re}static ǃJNf(te,ne){ǃJ.ǃk(te,ǃoa);let ie=ne.ǃOCp("behavior").ǃOpg("id");if(!ǃJ.ǃfd.ǃJoD(ie))throw new Error(`missing behavior id '${ie}'`);let ae=ǃJ.ǃfd.ǃ_Y(ie),de=ne.ǃOpg("name"),re=te.ǃJNt(ae,de);return ne.ǃOpR("sid")&&re.ǃJLC(ne.ǃOCa("sid")),re}}}"use strict",window.ǃJNR=class extends ǃel{constructor(te,ne){ǃJ.ǃk(te,ǃoa),super(te.ǃng(),ne,ǃPu),this.ǃJIW=te,this.ǃex()&&(this.ǃOYj="")}ǃYQ(){this.ǃJIW.ǃYQ()}ǃCK(te){if(ǃJ.ǃk(te,ǃPu),te.ǃJIZ)throw new Error("behavior already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),app.ǃJNg(te,"behaviortypeadd")}ǃJLb(){this.ǃYQ()}ǃJLm(){this.ǃYQ()}},"use strict";{let ee=!1;window.ǃJeW=class te extends ǃco{constructor(ne,ie){ǃJ.ǃk(ne,ǃPu),ǃJ.ǃk(ie,ǃoD),super(ne.ǃng()),this.ǃJNU=null,this.ǃJN$=ne,this.ǃfL=ie,this.ǃJNq=new Map,this.ǃJNM=!1,this.ǃJNB()}ǃyY(){this.ǃJNU.ǃyY(),this.ǃJNq.clear(),this.ǃJNU=null,this.ǃJN$=null,this.ǃfL=null}ǃcN(){this.ǃyQ()}ǃyQ(){if(this.ǃJNM)throw new Error("already called OnCreate");this.ǃJNU.ǃyQ(),this.ǃJNM=!0}ǃYQ(){this.ǃng().ǃBZ()||this.ǃfL.ǃYQ()}ǃJNu(ne){if(ǃJ.ǃk(ne,te),this.ǃAh()!==ne.ǃAh())throw new Error("instance from different behavior");for(let ie of ne.ǃJNq)this.ǃJNq.set(ie[0],ie[1])}ǃAA(){return this.ǃJN$}ǃAh(){return this.ǃJN$.ǃAh()}ǃEU(){return this.ǃJNU}ǃ_j(){return this.ǃfL}ǃJNB(){this.ǃJNq.clear();let ne=this.ǃAh().ǃOOr();for(let ie of ne)ie.ǃJNL()&&this.ǃJNq.set(ie.ǃdQ(),ie.ǃOUP())}ǃOJS(ne){return ǃJ.ǃJO(ne),this.ǃJNq.has(ne)}ǃfB(ne){ǃJ.ǃJO(ne);let ie=this.ǃJNq.get(ne);if("undefined"==typeof ie)throw new Error(`invalid property id '${ne}'`);return ie instanceof ǃJ.ǃSR?ǃJ.ǃb(ǃJ.ǃSR,ie):ie}ǃfA(ne,ie){ǃJ.ǃJO(ne);let ae=ǃJ.ǃOzM(ie),de=ie instanceof ǃJ.ǃSR;if(""!==ae&&""!==ae&&""!==ae&&!de)throw new Error(`cannot store '${ae}' in a property value`);let re=this.ǃJNq.get(ne);if("undefined"==typeof re)throw new Error(`invalid property id '${ne}'`);let oe=ǃJ.ǃOzM(re);if(ae!==oe)throw new Error(`cannot change property '${ne}' from '${oe}' to '${ae}'`);if(de){if(ie.ǃtE(re))return;ie=ǃJ.ǃb(ǃJ.ǃSR,ie)}else if(ie===re)return;this.ǃJNq.set(ne,ie),ee||this.ǃUl.ǃBZ()||(ee=!0,de?this.ǃJNU.ǃyj(ne,ǃJ.ǃb(ǃJ.ǃSR,ie)):this.ǃJNU.ǃyj(ne,ie),ee=!1),ee||this.ǃYQ()}ǃJot(){let ne=[];for(let ie of this.ǃAh().ǃOOr())if(ie.ǃJNL()&&"live-preview"!==ie.ǃdQ()){let cn=ie.ǃdj(),pn=this.ǃfB(ie.ǃdQ());"combo"===cn?pn=ie.ǃJNz(pn):"color"===cn&&(pn=`rgb(${pn.ǃONM()})`),ne.push(pn)}return ne}ǃIh(){let ne={};for(let[ie,ae]of this.ǃJNq)ae instanceof ǃJ.ǃSR&&(ae=ae.toJSON()),ne[ie]=ae;return{properties:ne}}ǃIP(ne){let ie=ne.properties;for(let[ae,de]of Object.entries(ie))Array.isArray(de)&&(de=new ǃJ.ǃSR,de.ǃONI(ie[ae])),this.ǃfA(ae,de)}ǃJeT(ne){if(ǃJ.ǃk(ne,ǃJ.ǃpj.Element),"behavior-instance"!==ne.ǃOad())throw new Error("unexpected tag name");let ie=ne.ǃOpO("properties");if(ie)for(let ae of ie.children()){let de=ae.ǃOad(),re=ae.ǃKP();ǃOcw.ǃJeF(this,de,re)}}}}{const _428="bottom",_429="warning",_430=".name-used.title",_431=".name-used.message",_432="effect type not for an ObjectClass",_433="name already in object class namespace";window.ǃP_=class extends ǃco{constructor(te,ne,ie){if(ǃJ.ǃk(te,ǃOXf),ǃJ.ǃk(ne,ǃJV$),ǃJ.ǃJO(ie),super(te.ǃng()),this.ǃJNk=te,this.ǃJNV=ne,this.ǃJIZ=null,ie=ǃoa.ǃOnw(ie,!0),!ie)throw new Error("invalid name");if(this.ǃJNk instanceof ǃoa&&this.ǃJNk.ǃJIl(ie))throw new Error(_433);this.ǃOYj=ie,this.ǃJNX=new Map,this.ǃJNK=null,this.ǃJNk instanceof ǃoa||(this.ǃJNK=ǃJ.ǃb(ǃJNo,this,null)),this.ǃJNV.ǃOnd()&&this.ǃng().ǃJKN()}ǃyY(){this.ǃJNX.clear(),this.ǃJNK=null,this.ǃJIZ=null,this.ǃJNV=null,this.ǃJNk=null}ǃOCo(){return"effect-type"}ǃrG(){if(!this.ǃJIZ)throw new Error("effect type not yet added to folder");return this.ǃJIZ}ǃJLG(te){ǃJ.ǃk(te,ǃJNe),this.ǃJIZ=te}ǃOOa(){return this.ǃJNk}ǃdw(){return this.ǃJNV}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLu(){for(let te of this.ǃJNX.values())te.ǃJLu();this.ǃJNK&&this.ǃJNK.ǃJLu(),super.ǃJLu()}ǃJL_(){super.ǃJL_(),this.ǃJNK&&this.ǃJNK.ǃJL_();for(let te of this.ǃJNX.values())te.ǃJL_()}ǃJLb(){this.ǃJNk.ǃJNr(),app.ǃJNI(this,"effecttypeadd"),this.ǃng().ǃJku(),app.ǃRB().ǃRM()}ǃJLm(){this.ǃng().ǃJku(),this.ǃJNk.ǃJNr(),app.ǃJNI(this,"effecttyperemove"),app.ǃRB().ǃRM()}ǃJNN(te,ne){if(ǃJ.ǃk(te,ǃKY),ǃJ.ǃq$(te,ǃKY),!(this.ǃJNk instanceof ǃoa))throw new Error(_432);let ie=this.ǃJNX.get(te);if(ie)return ie;ne&&(ie=this.ǃJNX.get(ne));let ae=ǃJ.ǃb(ǃJNo,this,te);return ie&&ae.ǃJNu(ie),this.ǃJNX.set(te,ae),ae}ǃOOw(te){if(ǃJ.ǃk(te,ǃKY),!(this.ǃJNk instanceof ǃoa))throw new Error(_432);let ne=this.ǃJNX.get(te);if(!ne)throw new Error("object instance does not have associated effect instance");return ne}ǃJNG(te){if(ǃJ.ǃk(te,ǃKY),!(this.ǃJNk instanceof ǃoa))throw new Error(_432);return this.ǃJNX.has(te)}ǃJNE(){return this.ǃJNK||ǃJ.ǃUe(this.ǃJNX.values())}ǃJNT(){return!!this.ǃJNK}ǃdl(){if(this.ǃJNk instanceof ǃoa)throw new Error("effect type not for a Layout or Layer");return this.ǃJNK}ǃOXB(te){ǃJ.ǃq$(te,ǃKY);let ne=this.ǃJNK||this.ǃJNX.get(te);return ne.ǃOXB()}ǃyo(te){if(ǃJ.ǃJO(te),te=ǃoa.ǃOnw(te,!0),!te||ǃJ.ǃOrk(te))throw new Error("invalid name");if(this.ǃOYj!==te){if(!ǃJ.ǃO$X(this.ǃOYj,te))if(this.ǃJNk instanceof ǃoa&&this.ǃJNk.ǃJIl(te))throw new Error(_433);else if(!(this.ǃJNk instanceof ǃoa)&&this.ǃJNk.ǃJND)throw new Error("name already used");this.ǃOYj=te,this.ǃng().ǃJku(),app.ǃJLq(this,"projectobjectnamechange")}}ǃVy(te,ne){if(ǃJ.ǃJO(te),ǃJ.ǃLA(ne),name=ǃoa.ǃOnw(te,!0),ǃJ.ǃS.ǃT("model.object-class.effect-types.errors"),!name||ǃJ.ǃOrk(name))return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,_429,lang(".name-invalid.title"),lang(".name-invalid.message"),{align:_428}),void ǃJ.ǃS.ǃOu();if(!ǃJ.ǃO$X(name,this.ǃyg()))if(this.ǃJNk instanceof ǃoa){if(this.ǃJNk.ǃJIl(name))return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,_429,lang(_430),ǃra(_431,name),{align:_428}),void ǃJ.ǃS.ǃOu();}else if(this.ǃJNk.ǃJNi(name))return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,_429,lang(_430),ǃra(_431,name),{align:_428}),void ǃJ.ǃS.ǃOu();ǃJ.ǃO$X(name,te)||ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ne,_429,lang(".name-changed.title"),lang(".name-changed.message"),{align:_428}),ǃJ.ǃS.ǃOu(),this.ǃyo(name)}ǃyg(){return this.ǃOYj}ǃJot(te=!1){let ne=[this.ǃdw().ǃdQ(),this.ǃyg()];return te&&ne.push(this.ǃdl().ǃJot()),ne}ǃIh(){let te={effectId:this.ǃdw().ǃdQ(),name:this.ǃyg()};return this.ǃJNT()&&(te.instance=this.ǃdl().ǃIh()),te}static ǃZR(te,ne){let ie=ne.effectId;const ae=te.ǃng();if(!ǃJ.ǃJeJ.ǃJoD(ie,ae))throw new Error(`missing effect id '${ie}'`);let de=ǃJ.ǃJeJ.ǃ_Y(ie,ae),re=de.ǃJNa(te,ne.name);return re.ǃJNT()&&re.ǃdl().ǃIP(ne.instance),te.ǃJNr(),re}static ǃJNf(te,ne){ǃJ.ǃk(te,ǃOXf);let ie=ne.ǃOCp("effect").ǃOpg("id");if(!ǃJ.ǃJeJ.ǃJoD(ie))throw new Error(`missing effect id '${ie}'`);let ae=ǃJ.ǃJeJ.ǃ_Y(ie),de=ne.ǃOpg("name"),re=te.ǃJNp(ae,de);return re}}}"use strict",window.ǃJNe=class extends ǃel{constructor(te,ne){ǃJ.ǃk(te,ǃOXf),super(te.ǃng(),ne,ǃP_),this.ǃJNk=te,this.ǃex()&&(this.ǃOYj="")}ǃYQ(){this.ǃJNk.ǃYQ()}ǃCK(te){if(ǃJ.ǃk(te,ǃP_),te.ǃJIZ)throw new Error("effect already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),app.ǃJNI(te,"effecttypeadd")}ǃVz(te,ne,ie,ae){super.ǃVz(te,ne,ie,ae),this.ǃJNk.ǃJNr(),app.ǃRB().ǃRM()}ǃJLb(){this.ǃYQ()}ǃJLm(){this.ǃYQ()}},"use strict",window.ǃJNo=class ee extends ǃco{constructor(te,ne){ǃJ.ǃk(te,ǃP_),ǃJ.ǃq$(ne,ǃKY),super(te.ǃng()),this.ǃJNw=te,this.ǃfL=ne,this.ǃJNY=new Map,this.ǃJNQ=[],this.ǃJNj=!0,this.ǃJNF()}ǃyY(){this.ǃJNY.clear(),this.ǃJNw=null,this.ǃfL=null}ǃJNu(te){if(ǃJ.ǃk(te,ee),this.ǃdw()!==te.ǃdw())throw new Error("instance from different effect");for(let ne of te.ǃJNY)this.ǃJNY.set(ne[0],ne[1])}ǃJNW(){return this.ǃJNw}ǃdw(){return this.ǃJNw.ǃdw()}ǃJNZ(){return this.ǃfL}ǃYQ(){this.ǃng().ǃBZ()||(this.ǃfL?this.ǃfL.ǃYQ():this.ǃJNw.ǃOOa().ǃYQ())}ǃJNF(){this.ǃJNY.clear();let te=this.ǃdw().ǃdY();for(let ne of te)this.ǃJNY.set(ne.ǃdQ(),ne.ǃOUP())}ǃJNl(te){return ǃJ.ǃJO(te),this.ǃJNY.has(te)}ǃdZ(te){ǃJ.ǃJO(te);let ne=this.ǃJNY.get(te);if("undefined"==typeof ne)throw new Error(`invalid parameter id '${te}'`);return ne instanceof ǃJ.ǃSR?ǃJ.ǃb(ǃJ.ǃSR,ne):ne}ǃdx(te,ne){ǃJ.ǃJO(te);let ie=ǃJ.ǃOzM(ne),ae=ne instanceof ǃJ.ǃSR;if(""!==ie&&""!==ie&&""!==ie&&!ae)throw new Error(`cannot store '${ie}' in a parameter value`);let de=this.ǃJNY.get(te);if("undefined"==typeof de)throw new Error(`invalid parameter id '${te}'`);let re=ǃJ.ǃOzM(de);if(ie!==re)throw new Error(`cannot change parameter '${te}' from '${re}' to '${ie}'`);if(ae){if(ne.ǃtE(de))return;ne=ǃJ.ǃb(ǃJ.ǃSR,ne)}else if(ne===de)return;this.ǃJNY.set(te,ne),this.ǃJNj=!0,this.ǃYQ()}ǃJNx(){if(this.ǃJNj){ǃJ.ǃXX(this.ǃJNQ);for(let te of this.ǃdw().ǃdY())this.ǃJNQ.push(this.ǃdZ(te.ǃdQ()));this.ǃJNj=!1}}ǃOXB(){return this.ǃJNx(),this.ǃJNQ}ǃJot(){let te=[];for(let ne of this.ǃdw().ǃdY())if(ne.ǃJNL()){let ie=ne.ǃdj(),ae=this.ǃdZ(ne.ǃdQ());"color"===ie&&(ae=[ae.r,ae.ǃONo,ae.b]),te.push(ae)}return te}ǃIh(){let te={};for(let[ne,ie]of this.ǃJNY)ie instanceof ǃJ.ǃSR&&(ie=ie.toJSON()),te[ne]=ie;return{parameters:te}}ǃIP(te){let ne=te.parameters;for(let[ie,ae]of Object.entries(ne))Array.isArray(ae)&&(ae=new ǃJ.ǃSR,ae.ǃONI(ne[ie])),this.ǃdx(ie,ae)}ǃJeT(te){if(ǃJ.ǃk(te,ǃJ.ǃpj.Element),"effect-instance"!==te.ǃOad())throw new Error("unexpected tag name");let ne=te.ǃOpO("parameters");if(ne){let ie=this.ǃdw();for(let ae of ne.children()){let de=ae.ǃOad(),re=ae.ǃKP();ǃOcw.ǃJel(this,ie,de.toLowerCase(),re)}}}},"use strict";{const _435="containerchange",_436="object type is deleted",ee=new Set(["normal","all","wrap"]);let te=new Set;window.ǃJok=class extends ǃJ.ǃq{constructor(ie){if(ǃJ.ǃbw(ie,ǃej),super(),2>ie.length)throw new Error("need at least 2 objects to create a container");this.ǃJNA=[],this.ǃJNh="normal",this.ǃUl=null,ǃJ.ǃmx(this.ǃJNA,ie),this.ǃJNA.sort(ǃoa.ǃJNv),this.ǃUl=this.ǃJNA[0].ǃng(),te.add(this)}ǃih(){for(let ie of this.ǃJNA)ie.ǃJNP(null);ǃJ.ǃXX(this.ǃJNA),te.delete(this),ǃJ.ǃyY(this)}ǃng(){return this.ǃUl}ǃXb(ie){let ae=0;for(let de of this.ǃJNA)if(de.ǃXb()&&(ie||de.ǃJNd()===this)&&(++ae,2<=ae))return!0;return!1}ǃJNs(){if(ǃJ.ǃOD)for(let ie of this.ǃJNA)ie.ǃXb()&&assert(ie.ǃJNd()===this,"wrong container linkage")}ǃOOF(ie){if(ǃJ.ǃJO(ie),!ee.has(ie))throw new Error("invalid select mode");this.ǃJNh===ie||(this.ǃJNh=ie,this.ǃng().ǃYQ())}ǃOOj(){return this.ǃJNh}*ǃNS(){for(let ie of this.ǃJNA)ie.ǃXb()&&(yield ie)}ǃPn(ie){if(ǃJ.ǃk(ie,ǃej),!ie.ǃXb())throw new Error(_436);return this.ǃJNA.includes(ie)}ǃJKO(ie){this.ǃJGO(ie),this.ǃJNA.sort(ǃoa.ǃJNv),app.ǃJGJ(this,ie,_435),this.ǃng().ǃYQ()}ǃOOA(ie){for(let ae of ie)this.ǃJGO(ae);this.ǃJNA.sort(ǃoa.ǃJNv),app.ǃJGJ(this,ǃJ.ǃUe(this.ǃNS()),_435),this.ǃng().ǃYQ()}ǃJGO(ie){if(ǃJ.ǃk(ie,ǃej),!ie.ǃXb())throw new Error(_436);if(ie.ǃOOx()||this.ǃJNA.includes(ie))throw new Error("object type already in a container");this.ǃJNA.push(ie),ie.ǃJNP(this)}ǃIp(ie){if(ǃJ.ǃk(ie,ǃej),!ie.ǃXb())throw new Error(_436);let ae=this.ǃJNA.indexOf(ie);if(ie.ǃOOY()!==this||0>ae)throw new Error("object type not in this container");this.ǃJNA.splice(ae,1),ie.ǃJNP(null),app.ǃJGJ(this,ie,_435),this.ǃng().ǃYQ()}ǃJGy(ie){ǃJ.ǃbw(ie,ǃej);let ae=this.ǃXb(),de=ǃJ.ǃUe(this.ǃNS());for(let re of this.ǃJNA)-1===ie.indexOf(re)&&re.ǃJNP(null);ǃJ.ǃmx(this.ǃJNA,ie),!ae&&this.ǃXb(!0)?this.ǃJLb():ae&&!this.ǃXb()&&this.ǃJLm(),this.ǃJNs()}ǃJGf(){return this.ǃJNA.slice(0)}ǃJGS(){for(let ie of this.ǃJNA)ie.ǃJNP(this)}ǃJLb(){this.ǃJGS(),app.ǃJGJ(this,ǃJ.ǃUe(this.ǃNS()),_435),this.ǃng().ǃYQ()}ǃJLm(){this.ǃng().ǃYQ(),app.ǃJGJ(this,null,_435)}ǃIh(){return{members:[...this.ǃNS()].map(ie=>ie.ǃyg()),selectMode:this.ǃOOj()}}static ǃJe_(ie,ae){let de=[];for(let oe of ae.members){let ye=ie.ǃOnD(oe);if(!ye)throw new Error(`cannot find object type name '${oe}'`);de.push(ye)}if(2>de.length)throw new Error("need at least 2 types in container");let re=de[0].ǃOOh(de);ae.hasOwnProperty("selectMode")&&re.ǃOOF(ae.selectMode)}static*ǃJoz(ie){ǃJ.ǃk(ie,ǃHD);for(let ae of te)ae.ǃXb()&&ae.ǃng()===ie&&(yield ae)}ǃJot(ie){return ǃJ.ǃk(ie,ǃOmT),[...this.ǃNS()].map(ae=>ie.ǃJoq(ae))}}}"use strict",window.ǃOXf=class extends ǃco{constructor(te){super(te),this.ǃJGn=ǃJ.ǃb(ǃJNe,this,null)}ǃJLu(){this.ǃJGn.ǃJLu(),super.ǃJLu()}ǃJL_(){super.ǃJL_(),this.ǃJGn.ǃJL_()}ǃJNp(te,ne){ǃJ.ǃk(te,ǃJV$),ǃJ.ǃJO(ne);let ie=this instanceof ǃoa?this:null;if(ie&&!ie.ǃtH().ǃIT())throw new Error("effects not supported");if(ne=ǃoa.ǃOnw(ne,!0),!ne)throw new Error("invalid name");if(ie&&ie.ǃJIl(ne))throw new Error("name already in object class namespace");let ae=te.ǃJNa(this,ne);if(this.ǃJGn.ǃCK(ae),this.ǃJNr(),ie){for(let de of ie.ǃJGX())ae.ǃJNN(de);ie.ǃJIP()}return this.ǃYQ(),ae}ǃJKL(){return this.ǃJGn.ǃJfr()}ǃJGR(){return this.ǃJGn.ǃJLo()}*ǃdp(){yield*this.ǃJKL()}ǃJoy(){let te=0;for(const ne of this.ǃJKL())++te;return te}ǃJNr(){}ǃJGg(){return!!ǃJ.ǃUe(this.ǃdp())}ǃJGH(){return this.ǃJGn}ǃJGU(te){ǃJ.ǃJO(te);for(let ne of this.ǃdp())if(ǃJ.ǃO$X(te,ne.ǃyg()))return ne;return null}ǃJND(te){return ǃJ.ǃJO(te),!!this.ǃJGU(te)}ǃJGC(te){ǃJ.ǃJO(te),te=ǃoa.ǃOnw(te,!0);let ne=this instanceof ǃoa?this:null;if(ne?!ne.ǃJIl(te):!this.ǃJND(te))return te;let ie=2,ae="";do ae=te+ie,++ie;while(ne?ne.ǃJIl(ae):this.ǃJND(ae));return ae}ǃJGu(){let te=new Set;for(let ne of this.ǃdp())te.add(ne.ǃdw());return te}ǃJG_(te){let ne=[];for(let ie of this.ǃJKL())ne.push(ie.ǃIh());te.effectTypes=ne}ǃJGm(te){if(te.effectTypes){let ne=te.effectTypes;for(let ie of ne)this.ǃJGn.ǃCK(ǃP_.ǃZR(this,ie))}}ǃJGb(te,ne=!1){let ie=te.ǃOCp("effects");for(let ae of ie.children("effect-type")){let de=ǃP_.ǃJNf(this,ae);if(ne){let re=ae.ǃOpO("effect-instance");re&&de.ǃdl().ǃJeT(re)}}}},"use strict";{const _437="bottom",_438="warning",_439="invalid name",_440="name is reserved",_441="instance-variables",_442="should be overridden",_443="behaviors not supported",_444="instance variables not supported",_445="name already in object class namespace",ee=new Set([..."\\/:;*?\"|.,'-`!\xAC\xA3$%^&+=<>{}()[]@#~\xAD"]),te=new Set(["self","true","false","system"]);window.ǃoa=class ne extends ǃOXf{constructor(ie,ae,de){if(super(ie),ǃJ.ǃJO(de),de=ne.ǃOnw(de,!0),!de)throw new Error(_439);if("System"!==de&&ne.ǃOnY(de,ie))throw new Error(_440);if(this.ǃng().ǃJVd(de))throw new Error(`object class name '${de}' already used`);ǃJ.ǃk(ae,Plugin),this.ǃfc=ae,this.ǃOYj=de,this.ǃJGc=de,this.ǃJGt=ǃJ.ǃb(ǃJIA,this,null),this.ǃJG$=ǃJ.ǃb(ǃJNR,this,null),this.ǃOPY=!1,this.ǃng().ǃeu(this)}ǃyY(){}ǃIr(){return this.ǃOPY}ǃYQ(){this.ǃng().ǃBZ()||this.ǃOPY||(this.ǃOPY=!0,this.ǃng().ǃJkR(!0),app.ǃJGq(this,"objectclassmarkchanged"))}ǃJkU(){this.ǃOPY&&(this.ǃOPY=!1,app.ǃJGq(this,"objectclassunmarkchanged"))}ǃVS(){super.ǃVS(),this.ǃXb()||app.ǃJGq(this,"objectclassremove"),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃXb()&&app.ǃJGq(this,"objectclassadd"),this.ǃng().ǃFV()}ǃJLu(){this.ǃJGt.ǃJLu(),this.ǃJG$.ǃJLu(),super.ǃJLu()}ǃJL_(){super.ǃJL_(),this.ǃJG$.ǃJL_(),this.ǃJGt.ǃJL_()}ǃJLb(){this.ǃng().ǃeu(this),this.ǃng().ǃJkK(),this.ǃng().ǃJku(),app.ǃRM()}ǃJLm(){this.ǃng().ǃJku(),this.ǃng().ǃJkK(),this.ǃng().ǃe_(this),app.ǃRM()}ǃJIP(){throw new Error(_442)}*ǃur(){throw new Error(_442)}*ǃJGX(){throw new Error(_442)}ǃJGM(ie){ǃJ.ǃJO(ie);const ae=this.ǃtH();return ae.ǃIG()&&this.ǃJGB(ie)||ae.ǃIE()&&this.ǃJGL(ie)||this.ǃtH().ǃJGz(ie)||this.ǃfc.ǃIT()&&this.ǃJND(ie)}ǃJIl(ie){throw ǃJ.ǃJO(ie),new Error(_442)}ǃJGk(){return!1}static ǃOnw(ie,ae){ǃJ.ǃJO(ie),ae=!!ae;let de=[...ie];for(let re=0,oe=de.length;re!ne.ǃJGV(re)),ae){for(;de.length&&"_"===de[0];)de.shift();let re=!0;for(let oe of de)if(!ǃJ.ǃOGQ(oe)){re=!1;break}re&&ǃJ.ǃXX(de)}else for(;de.length&&(ǃJ.ǃOGQ(de[0])||"_"===de[0]);)de.shift();return de.join("")}static ǃJGV(ie){return ǃJ.ǃJO(ie),!ee.has(ie)&&!ǃJ.ǃOGj(ie)}static ǃOnY(ie,ae){return ǃJ.ǃJO(ie),ǃJ.ǃk(ae,ǃHD),!!ǃJ.ǃOrk(ie)||!!te.has(ie.toLowerCase())||!!ae.ǃAV().ǃtH().ǃJGz(ie)}ǃyg(){return this.ǃOYj}ǃcy(){return"system"===this.ǃfc.ǃdQ()?this.ǃfc.ǃyg():this.ǃyg()}ǃyo(ie){if(ǃJ.ǃJO(ie),ie=ne.ǃOnw(ie,!0),this.ǃOYj!==ie){if(!ie)throw new Error(_439);if(!ǃJ.ǃO$X(this.ǃOYj,ie)&&this.ǃng().ǃJVd(ie))throw new Error(`object class name '${ie}' already used`);if(ne.ǃOnY(ie,this.ǃng()))throw new Error(_440);let ae=this.ǃOYj;this.ǃOYj=ie,this.ǃng().ǃBZ()&&(this.ǃJGc=ie),this.ǃng().ǃWW(),this.ǃng().ǃJku(),this.ǃng().ǃVs(this,ae),app.ǃJGq(this,"objectclassnamechange"),app.ǃJLq(this,"projectobjectnamechange")}}ǃVy(ie,ae){return ǃJ.ǃJO(ie),ǃJ.ǃLA(ae),name=ne.ǃOnw(ie,!0),ǃJ.ǃS.ǃT("model.object-class.errors"),name?ne.ǃOnY(name,this.ǃng())?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ae,_438,lang(".name-reserved.title"),ǃra(".name-reserved.message",name),{align:_437}),void ǃJ.ǃS.ǃOu()):!ǃJ.ǃO$X(name,this.ǃyg())&&this.ǃng().ǃJVd(name)?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ae,_438,lang(".name-used.title"),ǃra(".name-used.message",name),{align:_437}),void ǃJ.ǃS.ǃOu()):void(this.ǃyo(name),!ǃJ.ǃO$X(name,ie)&&ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ae,_438,lang(".name-changed.title"),lang(".name-changed.message"),{align:_437}),ǃJ.ǃS.ǃOu()):(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ae,_438,lang(".name-invalid.title"),lang(".name-invalid.message"),{align:_437}),void ǃJ.ǃS.ǃOu())}ǃJoZ(){ǃJ.ǃZZ()}ǃJoW(ie){this.ǃJGc===this.ǃyg()||(this.ǃJGc&&ie.add(this.ǃJoZ(this.ǃJGc)),this.ǃJGc=this.ǃyg())}ǃJox(ie){!this.ǃXb()&&this.ǃJGc&&(ie.add(this.ǃJoZ(this.ǃJGc)),this.ǃJGc="")}ǃtH(){return this.ǃfc}ǃyX(){return this.ǃfc.ǃyX()}ǃOdW(){return this.ǃfc.ǃOdW()}ǃOdZ(){return this.ǃfc.ǃOdZ()}ǃqk(){return!1}ǃWj(ie){if(ǃJ.ǃFt(ie),ǃJ.ǃk(ie.ǃKO,ne),ǃJ.ǃbw(ie.ǃWD,ǃJGK),ǃJ.ǃbw(ie.ǃWa,ǃJGo),ǃJ.ǃbw(ie.ǃWw,ǃJGe),ie.ǃKO===this)return!1;if(ie.ǃKO.ǃtH()!==this.ǃtH())return!1;for(let ae of ie.ǃWD){let de=this.ǃJGr(ae.ǃyg());if(!de||de.ǃdj()!==ae.ǃdj())return!1}for(let ae of ie.ǃWa){let de=this.ǃJGI(ae.ǃyg());if(!de||de.ǃAh()!==ae.ǃAh())return!1}for(let ae of ie.ǃWw){let de=this.ǃJGU(ae.ǃyg());if(!de||de.ǃdw()!==ae.ǃdw())return!1}return!0}ǃJNS(ie,ae,de){if(!this.ǃfc.ǃIG())throw new Error(_444);if(ǃJ.ǃJO(ie),ǃJ.ǃJO(ae),ie=ne.ǃOnw(ie,!1),!ie)throw new Error(_439);if(this.ǃJIl(ie))throw new Error(_445);if("undefined"==typeof de)switch(ae){case"boolean":de=!1;break;case"number":de=0;break;case"string":de="";break;default:throw new TypeError("invalid initial value");}let re=ǃJ.ǃb(ǃPC,this,ie,ae);for(let oe of this.ǃJGX())re.ǃOOK(oe,de);return this.ǃJGt.ǃCK(re),this.ǃYQ(),this.ǃJIP(),re}ǃJGN(){if(!this.ǃfc.ǃIG())throw new Error(_444);return this.ǃJGt.ǃJfr()}ǃJGG(){if(!this.ǃfc.ǃIG())throw new Error(_444);return this.ǃJGt.ǃJLo()}*ǃOOz(){if(!this.ǃfc.ǃIG())throw new Error(_444);yield*this.ǃJGN()}*ǃJGE(ie){if(!this.ǃfc.ǃIG())throw new Error(_444);for(let ae of this.ǃOOz())"boolean"===ae.ǃdj()?ie&&(yield ae):ie||(yield ae)}ǃJGT(){if(!this.ǃfc.ǃIG())throw new Error(_444);return this.ǃJGt}ǃJGr(ie){if(!this.ǃfc.ǃIG())throw new Error(_444);ǃJ.ǃJO(ie);for(let ae of this.ǃOOz())if(ǃJ.ǃO$X(ie,ae.ǃyg()))return ae;return null}ǃJGB(ie){if(!this.ǃfc.ǃIG())throw new Error(_444);return ǃJ.ǃJO(ie),!!this.ǃJGr(ie)}ǃJGD(){if(!this.ǃfc.ǃIG())throw new Error(_444);let ie,ae=1;do ie=ǃCM("model.object-class.instance-variables.new-variable-name",ae++);while(this.ǃJIl(ie));return ie}ǃJNt(ie,ae){if(!this.ǃfc.ǃIE())throw new Error(_443);if(ǃJ.ǃk(ie,ǃJVc),ǃJ.ǃJO(ae),ae=ne.ǃOnw(ae,!0),!ae)throw new Error(_439);if(this.ǃJIl(ae))throw new Error(_445);let de=ie.ǃJNc(this,ae);this.ǃJG$.ǃCK(de);for(let re of this.ǃJGX())de.ǃJNC(re);return this.ǃYQ(),this.ǃJIP(),de}ǃJKB(){if(!this.ǃfc.ǃIE())throw new Error(_443);return this.ǃJG$.ǃJfr()}ǃJGi(){if(!this.ǃfc.ǃIE())throw new Error(_443);return this.ǃJG$.ǃJLo()}*ǃOOe(){if(!this.ǃfc.ǃIE())throw new Error(_443);yield*this.ǃJKB()}ǃJGa(){if(!this.ǃfc.ǃIE())throw new Error(_443);return this.ǃJG$}ǃJGI(ie){if(!this.ǃfc.ǃIE())throw new Error(_443);ǃJ.ǃJO(ie);for(let ae of this.ǃOOe())if(ǃJ.ǃO$X(ie,ae.ǃyg()))return ae;return null}ǃJGL(ie){if(!this.ǃfc.ǃIE())throw new Error(_443);return ǃJ.ǃJO(ie),!!this.ǃJGI(ie)}ǃJGp(ie){if(ǃJ.ǃJO(ie),ie=ne.ǃOnw(ie,!0),!this.ǃJIl(ie))return ie;let ae=2,de="";do de=ie+ae,++ae;while(this.ǃJIl(de));return de}ǃJGw(){if(!this.ǃfc.ǃIE())throw new Error(_443);let ie=new Set;for(let ae of this.ǃOOe())ie.add(ae.ǃAh());return ie}ǃJot(ie){ǃJ.ǃk(ie,ǃOmT),ie.ǃJGY(this);let ae=ie.ǃJoH(this.ǃtH().ǃdQ()),de=this instanceof ǃeW,re=null,oe=null;de||(this.ǃtH().ǃox()?re=this.ǃJGQ(ie):this.ǃtH().ǃoZ()&&(oe=this.ǃJGj(ie)));let ye=[],Oe=[],le=0,Je=[],ue=0,pe=null;this.ǃtH().ǃIG()&&(ye=[...this.ǃOOz()].map(ge=>ge.ǃJLH())),this.ǃtH().ǃIE()&&(Oe=[...this.ǃJKB()].map(ge=>ge.ǃJot(ie)),le=Oe.length),this.ǃtH().ǃIT()&&(Je=[...this.ǃJKL()].map(ge=>ge.ǃJot()),ue=Je.length),!de&&this.ǃtH().ǃJGF()&&(pe=this.ǃJGW());let he=[this.ǃyg(),ae,de,ye,le,ue,re,oe,Oe,this.ǃqk(),this.ǃJGk(),this.ǃJLH(),Je,pe];return!de&&this.ǃtH().ǃrS()&&he.push(this.ǃrn().ǃJGZ()),he}ǃJor(){return{}}ǃJow(){}ǃIh(ie){ǃJ.ǃBA(ie);let ae=ie&&ie.mode||"",de=this.ǃOYj;ie&&ie.ǃIx&&(de=ie.ǃIx);let re={name:de,"plugin-id":this.ǃtH().ǃdQ()};if("copy"!==ae&&(re.sid=this.ǃJLH()),Object.assign(re,this.ǃJor()),this.ǃtH().ǃIG()){let oe=[];for(let ye of this.ǃJGN())oe.push(ye.ǃIh(ie));re.instanceVariables=oe}if(this.ǃtH().ǃIE()){let oe=[];for(let ye of this.ǃJKB())oe.push(ye.ǃIh(ie));re.behaviorTypes=oe}return this.ǃtH().ǃIT()&&this.ǃJG_(re),re}ǃIP(ie){ie.hasOwnProperty("sid")&&this.ǃJLC(ie.sid),this.ǃJow(ie)}ǃId(ie){if(this.ǃtH().ǃIG()&&ie.instanceVariables){let ae=ie.instanceVariables;for(let de of ae)this.ǃJGt.ǃCK(ǃPC.ǃZR(this,de))}if(this.ǃtH().ǃIE()&&ie.behaviorTypes){let ae=ie.behaviorTypes;for(let de of ae)this.ǃJG$.ǃCK(ǃPu.ǃZR(this,de))}this.ǃtH().ǃIT()&&ie.effectTypes&&this.ǃJGm(ie)}static ǃJNv(ie,ae){let de=ie.ǃyg().toLowerCase(),re=ae.ǃyg().toLowerCase();return de>re?1:dere?1:dethis.ǃJEy(),500)}ǃyY(){for(let ae of this.ǃJNX)ae.ǃyY();if(this.ǃJNX.clear(),this.ǃJEf(),this.ǃfQ.ǃyY(),this.ǃfQ=null,this.ǃOdD&&(this.ǃOdD.ǃyY(),this.ǃOdD=null),this.ǃOdi&&(this.ǃOdi.ǃyY(),this.ǃOdi=null),this.ǃOda&&(this.ǃOda.ǃyY(),this.ǃOda=null),this.ǃoZ()){for(let ae of this.ǃJES())ae.ǃyY();this.ǃJGd.clear(),this.ǃJGd=null}else this.ǃox()&&this.ǃNf.ǃyY();if(this.ǃJGF()){for(let ae of this.ǃJGs.values())ae.ǃbi();this.ǃJGs.clear(),this.ǃJGs=null}!this.ǃJGP&&this.ǃJGv&&(this.ǃJGv.ǃyY(!0),this.ǃJGv=null),this.ǃJEJ.ǃyY(),this.ǃJEJ=null,super.ǃyY()}ǃOCo(){return"object-type"}ǃJoZ(ae){return ǃJ.ǃUV(ae),ae=(ae||this.ǃyg()).toLowerCase(),`objectTypes\\${ae}.json`}ǃJLu(){for(let ae of this.ǃJNX)ae.ǃJLu();if(this.ǃtH().ǃIG())for(let ae of this.ǃJGG())ae.ǃJLu();if(this.ǃoZ())for(let ae of this.ǃJES())ae.ǃJLu();else this.ǃox()&&this.ǃNf.ǃJLu();super.ǃJLu()}ǃJL_(){if(super.ǃJL_(),this.ǃoZ())for(let ae of this.ǃJES())ae.ǃJL_();else this.ǃox()&&this.ǃNf.ǃJL_();if(this.ǃtH().ǃIG())for(let ae of this.ǃJGG())ae.ǃJL_();for(let ae of this.ǃJNX)ae.ǃJL_()}ǃJLb(){let ae=this.ǃJGx&&this.ǃJGx.ǃXb();super.ǃJLb(),this.ǃJGx&&!ae&&this.ǃJGx.ǃXb(!0)&&this.ǃJGx.ǃJLb();for(let de of this.ǃng().ǃrr(this))de.ǃJEn(this);this.ǃJGP?this.ǃJGv=this.ǃng().ǃJVs(this):this.ǃJGv&&this.ǃng().ǃJKu(this.ǃJGv)}ǃJLm(){let ae=this.ǃJGx&&this.ǃJGx.ǃXb();super.ǃJLm(),this.ǃJGx&&ae&&!this.ǃJGx.ǃXb()&&this.ǃJGx.ǃJLm();for(let de of this.ǃng().ǃJKw(this))de.ǃJEn(this);this.ǃJGP?(this.ǃng().ǃJKS(this),this.ǃJGv=null):this.ǃJGv&&this.ǃng().ǃJKm(this.ǃJGv)}ǃJEX(){assert(this.ǃtH().ǃrS(),"expected single global plugin type"),assert(0===this.ǃJNX.size,"expected zero instances");let ae=ǃJ.ǃb(ǃoD,this);return ae.ǃJNU=this.ǃfQ.ǃOUp(ae),this.ǃJNX.add(ae),this.ǃng().ǃBZ()||ae.ǃyQ(),ae}ǃyo(ae){ǃJ.ǃJO(ae),super.ǃyo(ae),!this.ǃJGP&&this.ǃJGv&&this.ǃJGv.ǃyo(ae)}ǃcN(){super.ǃcN();for(let ae of this.ǃJNX)ae.ǃcN();this.ǃfQ.ǃcN&&this.ǃfQ.ǃcN()}ǃrG(){if(!this.ǃJIZ)throw new Error("object type not yet added to folder");return this.ǃJIZ}ǃJLG(ae){ǃJ.ǃk(ae,ǃeQ),this.ǃJIZ=ae}ǃOJc(){return this.ǃfQ}ǃJER(ae,de){if(ǃJ.ǃk(ae,ǃoD),ǃJ.ǃq$(de,ǃoD),this.ǃtH().ǃIG())if(de)for(let re of this.ǃOOz())re.ǃOOK(ae,re.ǃOOV(de));else for(let re of this.ǃOOz())re.ǃOOK(ae,re.ǃJNO(this))}ǃJEg(ae,de){if(ǃJ.ǃk(ae,ǃoD),ǃJ.ǃq$(de,ǃoD),this.ǃtH().ǃIE())for(let re of this.ǃOOe())re.ǃJNC(ae,de)}ǃJEH(ae,de){if(ǃJ.ǃk(ae,ǃKY),ǃJ.ǃq$(de,ǃoD),this.ǃtH().ǃIT())for(let re of this.ǃdp())re.ǃJNN(ae,de)}ǃJEU(){if("object"!==this.ǃfc.ǃrJ()||this.ǃfc.ǃrS())throw new Error(_450);let ae=ǃJ.ǃb(ǃoD,this);return ae.ǃJNU=this.ǃfQ.ǃOUp(ae),this.ǃJER(ae),this.ǃJEg(ae),this.ǃJNX.add(ae),app.ǃOCT(ae,_448),ae}ǃOSz(ae,de){if(ǃJ.ǃk(ae,ǃkL),ǃJ.ǃq$(de,window.ǃKY),"world"!==this.ǃfc.ǃrJ())throw new Error(_450);let re=ǃJ.ǃb(window.ǃKY,this,ae);return de&&re.ǃJEC(de),re.ǃJNU=this.ǃfQ.ǃOUp(re),this.ǃJER(re,de),this.ǃJEg(re,de),this.ǃJEH(re,de),this.ǃJNX.add(re),ae.ǃJEu(re),app.ǃOCT(re,_448),re}ǃJE_(){if(this.ǃoZ()){let ae=ǃJ.ǃb(ǃOnQ,this,_447),de=ǃJ.ǃb(ǃOnj,this,ae);return ae.ǃOnF(de),this.ǃJGA.ǃCK(ae),de.ǃJE_().then(()=>this)}if(this.ǃox()){let ae=this.ǃtH().ǃJEm();return ae?this.ǃNf.ǃOnW(ae).then(()=>this):this.ǃNf.ǃJE_().then(()=>this)}return Promise.resolve(this)}ǃOnW(ae){return ǃJ.ǃk(ae,Blob),ǃJ.ǃOIq(ae).then(de=>{if(this.ǃoZ()){let re=ǃJ.ǃb(ǃOnQ,this,_447),oe=ǃJ.ǃb(ǃOnj,this,re);re.ǃOnF(oe),this.ǃJGA.ǃCK(re),oe.ǃJEb(ae,de.width,de.height)}else this.ǃox()&&this.ǃNf.ǃJEb(ae,de.width,de.height);return Promise.resolve(this)})}ǃJEb(ae,de,re){if(ǃJ.ǃk(ae,Blob),ǃJ.ǃXq(de),ǃJ.ǃXq(re),this.ǃoZ()){let oe=ǃJ.ǃb(ǃOnQ,this,_447),ye=ǃJ.ǃb(ǃOnj,this,oe);oe.ǃOnF(ye),this.ǃJGA.ǃCK(oe),ye.ǃJEb(ae,de,re)}else this.ǃox()&&this.ǃNf.ǃJEb(ae,de,re);return this}*ǃur(){if(this.ǃfc.ǃrS())throw new Error(_450);for(let ae of this.ǃJNX)ae.ǃXb()&&(yield ae)}*ǃJGX(){if(this.ǃfc.ǃrS())throw new Error(_450);yield*this.ǃJNX.values()}ǃOOL(){return[...this.ǃur()].length}ǃOnK(){return ǃJ.ǃUe(this.ǃur())}ǃrn(){if(!this.ǃfc.ǃrS())throw new Error(_450);return assert(1===this.ǃJNX.size,"expected single instance for singleglobal plugin"),ǃJ.ǃUe(this.ǃJNX)}ǃJEc(ae){switch(ae){case"small":return this.ǃOdD&&this.ǃOdD.ǃOPn()&&(this.ǃOdD=null),this.ǃOdD;case _446:return this.ǃOdi&&this.ǃOdi.ǃOPn()&&(this.ǃOdi=null),this.ǃOdi;case"large":return this.ǃOda&&this.ǃOda.ǃOPn()&&(this.ǃOda=null),this.ǃOda;default:throw new Error(_449);}}ǃJEt(ae,de){switch(ae){case"small":this.ǃOdD=de;break;case _446:this.ǃOdi=de;break;case"large":this.ǃOda=de;break;default:throw new Error(_449);}}ǃJE$(ae){if(this.ǃoZ()){let de=this.ǃOnZ();return de?this.ǃJEc(ae)?this.ǃJEc(ae):(this.ǃJEt(ae,de.ǃJEq(ae)),this.ǃJEc(ae)):super.ǃyX()}if(this.ǃox())return this.ǃJEc(ae)?this.ǃJEc(ae):(this.ǃJEt(ae,this.ǃfY().ǃJEq(ae)),this.ǃJEc(ae));switch(ae){case"small":return super.ǃyX();case _446:return super.ǃOdW();case"large":return super.ǃOdZ();default:throw new Error("invalid icon size specifier");}}ǃyX(){return this.ǃJE$("small")}ǃOdW(){return this.ǃJE$(_446)}ǃOdZ(){return this.ǃJE$("large")}ǃJEM(){(this.ǃOdD||this.ǃOdi||this.ǃOda)&&this.ǃJEJ.ǃHp()}ǃJEy(){if(this.ǃoZ()){let ae=this.ǃOnZ();if(!ae)return;ae.ǃ_y().then(de=>{this.ǃOdD&&this.ǃOdD.ǃ$D(de),this.ǃOdi&&this.ǃOdi.ǃ$D(de),this.ǃOda&&this.ǃOda.ǃ$D(de)})}else this.ǃox()&&this.ǃfY().ǃ_y().then(ae=>{this.ǃOdD&&this.ǃOdD.ǃ$D(ae),this.ǃOdi&&this.ǃOdi.ǃ$D(ae),this.ǃOda&&this.ǃOda.ǃ$D(ae)})}ǃJIP(){if(this.ǃfc.ǃrS())throw new Error(_450);let ae=new Set;if("world"===this.ǃtH().ǃrJ())for(let de of this.ǃur())ae.add(de.ǃ_w());else for(let de of this.ǃur())ae.add(de.ǃJEB());for(let de of ae)de.ǃYQ()}ǃJEL(){if(!this.ǃJGF())throw new Error("object type does not refer to a tilemap");return this.ǃJGs}ǃJGk(){const ae=this.ǃng();if(!ae.ǃPZ())return!1;const de=ae.ǃPF()||ae.ǃJks();return!!ǃJ.ǃUe(de.ǃJEz(this))}ǃOOx(){return this.ǃJGx&&this.ǃJGx.ǃXb()}ǃOOY(){return this.ǃJGx&&this.ǃJGx.ǃXb()?(assert(this.ǃJGx.ǃPn(this),"container should include self"),this.ǃJGx.ǃJNs(),this.ǃJGx):null}ǃJNd(){return this.ǃJGx}ǃJNP(ae){if(ǃJ.ǃq$(ae,ǃJok),ae&&ae!==this.ǃJGx&&this.ǃOOx())throw new Error(_451);this.ǃJGx=ae}ǃOOh(ae){if(ǃJ.ǃbw(ae,ie),2>ae.length)throw new Error("need at least 2 objects to create a container");if(!ae.includes(this))throw new Error("container initial members should include this");if(this.ǃOOx())throw new Error(_451);let de=ǃJ.ǃb(ǃJok,ae);for(let re of ae){if(!re.ǃXb())throw new Error("cannot create container with inactive ObjectType");re.ǃJNP(de)}return de.ǃJNs(),app.ǃJGJ(de,this,"containerchange"),this.ǃng().ǃYQ(),de}ǃJEf(){this.ǃJGx&&this.ǃJGx.ǃih()}ǃJIl(ae){if(ǃJ.ǃJO(ae),this.ǃJGM(ae))return!0;for(let de of this.ǃng().ǃrr(this))if(de.ǃJGM(ae))return!0;return!1}*ǃOOz(){if(!this.ǃfc.ǃIG())throw new Error("instance variables not supported");for(let ae of this.ǃng().ǃrr(this))yield*ae.ǃJGN();yield*this.ǃJGN()}*ǃOOe(){if(!this.ǃfc.ǃIE())throw new Error("behaviors not supported");for(let ae of this.ǃng().ǃrr(this))yield*ae.ǃJKB();yield*this.ǃJKB()}ǃJNr(){this.ǃJGh=null}ǃJEk(){if(null===this.ǃJGh){this.ǃJGh=[];for(let ae of this.ǃng().ǃrr(this))for(let de of ae.ǃJKL())this.ǃJGh.push(de);for(let ae of this.ǃJKL())this.ǃJGh.push(ae)}}*ǃdp(){if(!this.ǃfc.ǃIT())throw new Error("effects not supported");this.ǃJEk();for(let ae of this.ǃJGh)yield ae}ǃJEV(){return this.ǃJEk(),this.ǃJGh}ǃJGg(){return this.ǃJEk(),0te?this.ǃJEK():(this.ǃJGv||(this.ǃJGv=this.ǃng().ǃJVs(this),this.ǃJGP=!0),this.ǃJGv)}ǃJKR(){return this.ǃJGP}ǃJEo(ae){if(ǃJ.ǃk(ae,ǃOnj),!this.ǃox()){if(!this.ǃoZ())throw new Error(_452);this.ǃJGd.size===te&&this.ǃJEe(),assert(!this.ǃJGd.has(ae),"animation frame already active"),this.ǃJGd.add(ae)}}ǃJEr(ae){if(ǃJ.ǃk(ae,ǃOnj),!this.ǃox()){if(!this.ǃoZ())throw new Error(_452);this.ǃJGd.delete(ae),this.ǃJGd.size!==te||this.ǃng().ǃHM()||this.ǃJEI()}}ǃJEe(){this.ǃJGv&&(assert(this.ǃJGP,"expected to be using own sprite sheet collection"),this.ǃJGP=!1,this.ǃJGv=ǃJ.ǃb(ǃJK_,this.ǃng(),this.ǃyg(),!1),this.ǃJkZ(),this.ǃng().ǃJKS(this))}ǃJEI(){if(this.ǃJGv){assert(!this.ǃJGP,"expected to be using shared sprite sheet collection");let ae=this.ǃJGv;this.ǃJGv=this.ǃng().ǃJVs(this),this.ǃJGP=!0,this.ǃJkZ(),ae.ǃyY(),ae=null}}ǃJkZ(){if(this.ǃoZ())for(let ae of this.ǃJGd)ae.ǃJEN();else this.ǃox()&&this.ǃNf.ǃJEN()}ǃJrJ(){return this.ǃfc&&this.ǃfc.ǃJrJ()}ǃNB(){return this.ǃfc&&this.ǃfc.ǃNB()}ǃDS(){return!1}ǃJGF(){return this.ǃfc&&this.ǃfc.ǃJGF()}ǃox(){return this.ǃfc&&this.ǃfc.ǃox()}ǃfY(){if(!this.ǃox())throw new Error("object type does not have an image");return this.ǃNf}ǃoZ(){return this.ǃfc&&this.ǃfc.ǃoZ()}ǃNO(){if(!this.ǃoZ())throw new Error(_453);return this.ǃJGA}ǃJEG(){if(!this.ǃoZ())throw new Error(_453);return this.ǃJGA.ǃJfr()}ǃJES(){if(!this.ǃoZ())throw new Error(_453);return this.ǃJGA.ǃJLo()}ǃOcv(ae){ǃJ.ǃJO(ae),ae=ae.toLowerCase();for(let de of this.ǃJEG())if(ǃJ.ǃO$X(ae,de.ǃyg()))return de;return null}ǃO$R(){if(!this.ǃoZ())throw new Error(_453);return ǃJ.ǃUe(this.ǃJEG())}ǃJEE(){if(!this.ǃoZ())throw new Error(_453);let ae=0;for(let de of this.ǃJEG())++ae;return ae}ǃJET(){return 0<=this.ǃJEE()}ǃJED(){if(!this.ǃoZ())throw new Error(_453);return 1>=this.ǃJGd.size}ǃJIF(){if(!this.ǃoZ())throw new Error(_453);return this.ǃJGd.size}ǃol(ae,de){if(ǃJ.ǃJO(ae),ǃJ.ǃXq(de),de=Math.floor(de),!this.ǃoZ())throw new Error(_453);let re=this.ǃOcv(ae);if(re||(re=this.ǃO$R()),!re)throw new Error("object type has no animations");return 0>de&&(de=0),de>=re.ǃOcP()&&(de=re.ǃOcP()-1),re.ǃOtS(de)}ǃOnZ(){if(!this.ǃoZ())throw new Error(_453);let ae=this.ǃO$R();return ae?ae.ǃOtS(0):null}ǃOJC(){let ae=[];for(let de of this.ǃJEG())ae.push(de);return ae.sort(ee),ae}ǃJEi(ae,de){if(ǃJ.ǃk(ae,ǃOnj),ǃJ.ǃJO(de),!this.ǃng().ǃBZ()){let re=new ǃJ.Event(de);re.ǃOUQ=ae,this.dispatchEvent(re)}}*ǃJEa(){this.ǃoZ()?yield*this.ǃJGd.values():this.ǃox()&&(yield this.ǃNf)}ǃJGQ(ae){ǃJ.ǃk(ae,ǃOmT);let de=this.ǃfY().ǃJEp(),re=de.ǃOXq();return assert(re,"missing spritesheet"),[ae.ǃJEw(re),re.ǃJrp(),0,de.ǃJrZ(),de.ǃJrl(),de.ǃfI(),de.ǃfG()]}ǃJGj(ae){return ǃJ.ǃk(ae,ǃOmT),[...this.ǃJEG()].map(de=>de.ǃJot(ae))}ǃJGW(){assert(this.ǃJGF(),"type does not have a tilemap");let ae=[];for(let[de,re]of this.ǃJGs)if(!re.ǃJEY()){let hn=de+1;ae.length{if(oe.name!==de)throw new Error(`unexpected object type name '${oe.name}'`);let ye=ǃJ.ǃyD.ǃ_Y(oe["plugin-id"],ae),Oe=ye.ǃIv(ae,de);return Oe.ǃIP(oe),Oe.ǃId(oe),Oe.ǃoZ()?Oe.ǃNO().ǃIs(oe.animations,{ǃJEF:re}).then(()=>Oe):Oe.ǃox()?Oe.ǃNf.ǃNy(oe.image,{ǃJEF:re}).then(()=>Oe):Promise.resolve(Oe)})}ǃJol(ae,de){if(ǃJ.ǃBA(de),this.ǃox())this.ǃNf.ǃGp(ae,de);else if(this.ǃoZ())for(let re of this.ǃJEG())for(let oe of re.frames())oe.ǃGp(ae,de)}static ǃJEW(ae,de,re){ǃJ.ǃk(ae,ǃHD),ǃJ.ǃk(de,ǃJ.ǃpj.Element),ǃJ.ǃk(re,ǃJ.ǃOcO);let oe=de.ǃOpg("name"),ye=de.ǃOCp("plugin"),Oe=ye.ǃOpg("id");if(!ǃJ.ǃyD.ǃJoD(Oe))throw new Error(`missing plugin id '${Oe}'`);let le=ǃJ.ǃyD.ǃ_Y(Oe),Je=le.ǃIv(ae,oe);if(de.ǃOpR("sid")&&Je.ǃJLC(de.ǃOpH("sid")),de.ǃOpU("global")&&Je.ǃsE(!0),Je.ǃJGl(de),le.ǃJGF()&&de.ǃOpC("tiles")&&Je.ǃJEZ(de.ǃOCp("tiles")),de.ǃOpC("container")){let ue=de.ǃOCp("container"),pe=[];for(let he of ue.children("type"))pe.push(he.ǃKP());ae.ǃJeG(pe)}return Je.ǃoZ()?Je.ǃNO().ǃJEl(de.ǃOCp("animation-folder"),re).then(()=>Je):Je.ǃox()?Je.ǃNf.ǃJEx(de.ǃOpO("texture"),re).then(()=>Je):Promise.resolve(Je)}ǃJEZ(ae){for(let de of ae.children("tile")){let re=de.ǃOCa("id"),oe=de.ǃOCp("collision-poly"),ye=ǃJ.ǃb(ǃmY);ye.ǃJEA(oe),this.ǃJGs.set(re,ye)}}ǃJEQ(ae){if(ae)for(let de in ae)if(ae.hasOwnProperty(de))if(this.ǃJGs.has(de)){let re=this.ǃJGs.get(de);re.ǃIP(ae[de])}else{let re=ǃJ.ǃb(ǃmY);re.ǃIP(ae[de]),this.ǃJGs.set(+de,re)}}}}{const _454="objecttypefolderadd";window.ǃeQ=class ee extends ǃel{constructor(te,ne){super(te,ne,ǃej),this.ǃex()&&(this.ǃOYj=lang("ui.bars.project.items.object-types"))}ǃCK(te){if(ǃJ.ǃk(te,ǃej),te.ǃJIZ)throw new Error("object type already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),this.ǃng().ǃJkK(),app.ǃJGq(te,"objectclassadd"),te.ǃYQ()}ǃIN(){let te=ǃJ.ǃb(ee,this.ǃUl,this);return this.ǃJLc.push(te),app.ǃJEh(te,_454),this.ǃYQ(),te}ǃJLb(){app.ǃJEh(this,_454),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJEh(this,"objecttypefolderremove")}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLD(te){return te.ǃyg()}ǃJeX(te,ne){ǃJ.ǃFt(te),ǃJ.ǃk(ne,ǃJ.ǃJLO),this.ǃex()||this.ǃyo(te.name);let ie=[];for(let de of te.subfolders){let re=this.ǃIN();ie.push(re.ǃJeX(de,ne))}let ae=[];for(let de of te.items)ae.push(ǃJ.ǃgi(()=>ǃej.ǃJEj(this.ǃng(),de,ne)));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(let re of de)this.ǃCK(re);return this})}ǃJeV(te,ne){ǃJ.ǃk(te,ǃJ.ǃpj.Element),ǃJ.ǃk(ne,ǃJ.ǃOcO),this.ǃex()||this.ǃyo(te.ǃOpg("name"));let ie=[];for(let de of te.children("object-folder")){let re=this.ǃIN();ie.push(re.ǃJeV(de,ne))}let ae=[];for(let de of te.children("object-type"))ae.push(ǃJ.ǃgi(()=>ǃej.ǃJEW(this.ǃng(),de,ne)));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(const re of de)this.ǃCK(re);return this})}}}{const _455="familymemberschange";window.ǃeW=class ee extends ǃoa{constructor(te,ne,ie){super(te,ne,ie),this.ǃJIZ=null,this.ǃJNA=new Set,this.ǃJEv=!1}ǃyY(){this.ǃJNA.clear(),this.ǃJNA=null,super.ǃyY()}ǃOCo(){return"family"}ǃJoZ(te){return ǃJ.ǃUV(te),te=(te||this.ǃyg()).toLowerCase(),`families\\${te}.json`}ǃXb(){if(!super.ǃXb())return!1;for(let te of this.ǃJNA)if(te.ǃXb())return!0;return!1}ǃrV(te){this.ǃJEv=!!te}ǃIV(){return this.ǃJEv}ǃJLb(){this.ǃJEP(),super.ǃJLb()}ǃJLm(){this.ǃJEP(),super.ǃJLm()}ǃJNr(){this.ǃJEP()}ǃJEn(te){if(super.ǃXb())if(te.ǃXb()){let ne=[...this.ǃNS()];1===ne.length&&ne[0]===te&&(this.ǃJLb(),app.ǃJGq(this,"objectclassadd"))}else this.ǃXb()||(this.ǃJLm(),app.ǃJGq(this,"objectclassremove"))}ǃJIP(){for(let te of this.ǃJNA)te.ǃJIP()}*ǃur(){for(let te of this.ǃJNA)yield*te.ǃur()}*ǃJGX(){for(let te of this.ǃJNA)yield*te.ǃJGX()}ǃyX(){return this.ǃfc.ǃJEd()}ǃOdW(){return this.ǃfc.ǃJEs()}ǃOdZ(){return this.ǃfc.ǃJTO()}ǃJIl(te){if(ǃJ.ǃJO(te),this.ǃJGM(te))return!0;for(let ne of this.ǃNS())if(ne.ǃJIl(te))return!0;return!1}ǃPn(te){return ǃJ.ǃk(te,ǃej),this.ǃJNA.has(te)}ǃIp(te){if(ǃJ.ǃk(te,ǃej),!this.ǃJNA.has(te))throw new Error("object type not in this family");if(1===this.ǃIi())throw new Error("cannot remove last family member - remove family itself instead");this.ǃJNA.delete(te);const ne=this.ǃng();te.ǃJNr(),ne.ǃJkK(),app.ǃJGq(this,_455),ne.ǃYQ(),ne.ǃJk_(),ne.ǃJkb()}ǃNH(te){let ne=[...te],ie=[...this.ǃNS()];return!(ne.length!==ie.length)&&(ne.sort(ǃoa.ǃJNv),ie.sort(ǃoa.ǃJNv),ǃJ.ǃsF(ne,ie))}ǃNX(te){if(!this.ǃNH(te)){let ne=[...te];if(ǃJ.ǃbw(ne,ǃej),!ne.length)throw new Error("cannot make family empty");this.ǃJEP();for(let ae of ne)if(!this.ǃPn(ae)){for(let gn of this.ǃJGN()){let mn=gn.ǃJNO();for(let vn of ae.ǃur())gn.ǃOOK(vn,mn)}if(this.ǃtH().ǃIE())for(let gn of this.ǃJKB()){let mn=gn.ǃJNm();for(let vn of ae.ǃur()){let bn=gn.ǃJNC(vn);mn&&bn.ǃJNu(mn)}}if(this.ǃtH().ǃIT())for(let gn of this.ǃJKL()){let mn=gn.ǃJNE();for(let vn of ae.ǃur()){let bn=gn.ǃJNN(vn);mn&&bn.ǃJNu(mn)}}}this.ǃJNA.clear(),this.ǃfc=ne[0].ǃtH();for(let ae of ne){if(ae.ǃtH()!==this.ǃfc)throw new Error("wrong plugin");this.ǃJNA.add(ae)}const ie=this.ǃng();this.ǃJEP(),ie.ǃJkK(),app.ǃJGq(this,_455),ie.ǃFV(),ie.ǃYQ(),ie.ǃJk_(),ie.ǃJkb()}}*ǃNS(){for(let te of this.ǃJNA)te.ǃXb()&&(yield te)}ǃIi(){let te=0;for(let ne of this.ǃNS())++te;return te}ǃJEP(){for(let te of this.ǃJNA)te.ǃJNr()}ǃIh(){let te=super.ǃIh();return te.members=[...this.ǃNS()].map(ne=>ne.ǃyg()),te}ǃIP(te){super.ǃIP(te),assert(0===this.ǃJNA.size,"should not be overwriting family");let ne=[];for(let ie of te.members){let ae=this.ǃng().ǃOnD(ie);if(!ae)throw new Error(`cannot find family member with name '${ie}'`);ne.push(ae)}this.ǃNX(ne)}static ǃJTJ(te,ne,ie){return ie.ǃOpo(`families\\${ne.toLowerCase()}.json`).then(ae=>{if(ae.name!==ne)throw new Error(`unexpected family name '${ae.name}'`);let de=ǃJ.ǃyD.ǃ_Y(ae["plugin-id"],te),re=ǃJ.ǃb(ee,te,de,ne);return re.ǃIP(ae),re.ǃId(ae),re.ǃJEP(),re})}static ǃJeE(te,ne){let ie=te.ǃOpg("name"),ae=te.ǃOpg("plugin-id");if(!ǃJ.ǃyD.ǃJoD(ae))throw new Error(`missing plugin id '${ae}'`);let de=ǃJ.ǃyD.ǃ_Y(ae),re=ǃJ.ǃb(ee,ne,de,ie);te.ǃOpR("sid")&&re.ǃJLC(te.ǃOpH("sid"));let oe=[],ye=te.ǃOCp("members");for(let Oe of ye.children("member")){let le=Oe.ǃKP(),Je=ne.ǃOnD(le);if(!Je)throw new Error(`cannot find object type named '${le}'`);oe.push(Je)}return re.ǃNX(oe),re.ǃJGl(te),re}}}"use strict",window.ǃeF=class extends ǃel{constructor(te,ne){super(te,ne,ǃeW),this.ǃex()&&(this.ǃOYj=lang("ui.bars.project.items.families"))}ǃCK(te){if(ǃJ.ǃk(te,ǃeW),te.ǃJIZ)throw new Error("family already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),this.ǃng().ǃJkK(),app.ǃJGq(te,"objectclassadd"),te.ǃYQ()}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLD(te){return te.ǃyg()}ǃJeg(te,ne){ǃJ.ǃFt(te),ǃJ.ǃk(ne,ǃJ.ǃJLO);let ie=[];for(let ae of te.items)ie.push(ǃeW.ǃJTJ(this.ǃng(),ae,ne));return Promise.all(ie).then(ae=>{for(let de of ae)this.ǃCK(de);return this})}},"use strict";{const _456="collision-poly",_457="invalid poly point";window.ǃmY=class ee{constructor(){this.ǃONT=[],this.ǃHH()}ǃHH(){this.ǃbi(),this.ǃONT.push(0),this.ǃONT.push(0),this.ǃONT.push(1),this.ǃONT.push(0),this.ǃONT.push(1),this.ǃONT.push(1),this.ǃONT.push(0),this.ǃONT.push(1)}ǃJTy(te){ǃJ.ǃCl(te),ǃJ.ǃmx(this.ǃONT,te)}ǃJTf(){return ǃJ.ǃyJ(this.ǃONT)}ǃOCo(){return _456}ǃbi(){ǃJ.ǃXX(this.ǃONT)}ǃmh(){return this.ǃONT}ǃJEY(){let te=this.ǃONT;return 8===te.length&&0===te[0]&&0===te[1]&&1===te[2]&&0===te[3]&&1===te[4]&&1===te[5]&&0===te[6]&&1===te[7]}ǃJTS(te){ǃJ.ǃk(te,ee);te===this||ǃJ.ǃmx(this.ǃONT,te.ǃONT)}ǃms(){return assert(0==this.ǃONT.length%2,"must have an even number of elements in collision poly points array"),assert(6<=this.ǃONT.length,"must have at least three points in a collision poly"),this.ǃONT.length/2}ǃJTn(te,ne){if(ǃJ.ǃXq(te),ǃJ.ǃXq(ne),te=Math.floor(te),0>te)throw new RangeError(_457);let ie=this.ǃms();if(te===ie&&(te=0),te>=ie)throw new RangeError(_457);return this.ǃONT[2*te+ne]}ǃOuO(te){return this.ǃJTn(te,0)}ǃOuJ(te){return this.ǃJTn(te,1)}ǃJTX(te,ne,ie){if(ǃJ.ǃXq(te),ǃJ.ǃXq(ne),ǃJ.ǃXq(ie),te=Math.floor(te),0>te)throw new RangeError(_457);let ae=this.ǃms();if(te===ae&&(te=0),te>=ae)throw new RangeError(_457);this.ǃONT[2*te+ne]=ǃJ.ǃRf(ie,0,1)}ǃJTR(te,ne){this.ǃJTX(te,0,ne)}ǃJTg(te,ne){this.ǃJTX(te,1,ne)}ǃJTH(te,ne){this.ǃJTX(te,0,this.ǃOuO(te)+ne)}ǃJTU(te,ne){this.ǃJTX(te,1,this.ǃOuJ(te)+ne)}ǃJTC(te){if(ǃJ.ǃXq(te),te=Math.floor(te),0>te||te>=this.ǃms())throw new RangeError("invalid poly point insert position");let ne=(this.ǃOuO(te)+this.ǃOuO(te+1))/2,ie=(this.ǃOuJ(te)+this.ǃOuJ(te+1))/2;this.ǃONT.splice(2*(te+1),0,ne,ie)}ǃJTu(te,ne){ǃJ.ǃXq(te),ǃJ.ǃXq(ne),this.ǃONT.push(te),this.ǃONT.push(ne)}ǃJT_(te){ǃJ.ǃXq(te),te=Math.floor(te);let ne=this.ǃms();if(0>te||te>=ne)throw new RangeError("invalid poly point delete position");if(3>=ne)throw new Error("cannot delete poly point: must have at least 3 points in poly at all times");this.ǃONT.splice(2*te,2)}ǃJTm(){this.ǃONT.reverse(),this.ǃJTb()}ǃJTb(){let te=this.ǃONT;for(let ne=0,ie=te.length,ae;nene.length?void this.ǃHH():void ǃJ.ǃmx(this.ǃONT,ne)}}}"use strict",window.ǃJTV=class ee extends ǃco{constructor(te){super(te),this.ǃXx=0.5,this.ǃXA=0.5,this.ǃOYj=""}ǃHH(){this.ǃXx=0.5,this.ǃXA=0.5}ǃOCo(){return"image-point"}ǃpC(te){return ǃJ.ǃk(te,ee),this.ǃXx===te.ǃnK()&&this.ǃXA===te.ǃne()&&this.ǃOYj===te.ǃyg()}ǃJTS(te){ǃJ.ǃk(te,ee);te===this||(this.ǃyo(te.ǃyg()),this.ǃOWU(te.ǃnK(),te.ǃne()))}ǃyo(te){ǃJ.ǃJO(te),this.ǃOYj=te}ǃyg(){return this.ǃOYj}ǃJTK(te,ne){this.ǃJTo(te),this.ǃJTe(ne)}ǃJTo(te){ǃJ.ǃXq(te),this.ǃXx+=te}ǃJTe(te){ǃJ.ǃXq(te),this.ǃXA+=te}ǃOWU(te,ne){this.ǃOOy(te),this.ǃOOS(ne)}ǃOOy(te){ǃJ.ǃXq(te),this.ǃXx=te}ǃOOS(te){ǃJ.ǃXq(te),this.ǃXA=te}ǃnK(){return this.ǃXx}ǃne(){return this.ǃXA}ǃJT$(){this.ǃXx=1-this.ǃXx}ǃJTq(){this.ǃXA=1-this.ǃXA}ǃJTB(){let te=this.ǃXx;this.ǃXx=this.ǃXA,this.ǃXA=te,this.ǃJT$()}ǃJTL(){let te=this.ǃXx;this.ǃXx=this.ǃXA,this.ǃXA=te,this.ǃJTq()}ǃJot(){return[this.ǃyg(),this.ǃnK(),this.ǃne()]}ǃIh(){return{name:this.ǃOYj,x:this.ǃXx,y:this.ǃXA}}ǃIP(te){ǃJ.ǃFt(te),ǃJ.ǃJO(te.name),ǃJ.ǃXq(te.x),ǃJ.ǃXq(te.y),this.ǃyo(te.name),this.ǃOWU(te.x,te.y)}static ǃJNf(te,ne){ǃJ.ǃk(te,ǃHD),ǃJ.ǃk(ne,ǃJ.ǃpj.Element);let ie=ǃJ.ǃb(ee,te);return ie.ǃyo(ne.ǃOpg("name")),ie.ǃOWU(ne.ǃOpH("x"),ne.ǃOpH("y")),ie}static ǃJe_(te,ne){let ie=ǃJ.ǃb(ee,te);return ie.ǃIP(ne),ie}},"use strict";{const _458="animationfolderadd";window.ǃJEO=class ee extends ǃel{constructor(te,ne){super(te.ǃng(),ne,ǃOnQ),this.ǃuL=te,this.ǃex()&&(this.ǃOYj="Animations")}ǃf$(){return this.ǃuL}ǃYQ(){this.ǃuL.ǃYQ()}ǃJTr(){let te=ǃJ.ǃb(ǃOnQ,this.ǃuL,`Animation ${this.ǃuL.ǃJEE()+1}`),ne=ǃJ.ǃb(ǃOnj,this.ǃuL,te);return te.ǃOnF(ne),this.ǃCK(te),ne.ǃJE_().then(()=>te)}ǃJTI(te,ne,ie){let ae=ǃJ.ǃb(ǃOnQ,this.ǃuL,`Animation ${this.ǃuL.ǃJEE()+1}`);return Promise.resolve().then(()=>{return Array.prototype.map.call(te,de=>{if(!(de instanceof ImageData)&&!(de instanceof Blob)&&!(de instanceof File))throw new Error("data source is not supported. Use ImageData, Blob or File");return de instanceof ImageData?ǃJ.ǃOIe(de).then(re=>{return{blob:re,width:ne||de.width,height:ie||de.height}}):ǃJ.ǃLR(ne)&&ǃJ.ǃLR(ie)?Promise.resolve({blob:de,width:ne,height:ie}):ǃJ.ǃ$T(de).then(re=>{return{blob:de,width:re.width,height:re.height}})})}).then(de=>{return Promise.all(de)}).then(de=>{for(let re of de)ae.ǃJTN(re.blob,re.width,re.height)}).then(()=>{return this.ǃCK(ae),ae})}ǃCK(te){if(ǃJ.ǃk(te,ǃOnQ),te.ǃJIZ)throw new Error("animation already belongs to folder");te.ǃJIZ=this,super.ǃCK(te),app.ǃJTG(te,"animationadd")}ǃIN(){let te=ǃJ.ǃb(ee,this.ǃuL,this);return this.ǃJLc.push(te),app.ǃJTE(te,_458),this.ǃYQ(),te}ǃJLM(te){ǃJ.ǃk(te,this.ǃdj()),super.ǃJLM(te),this.ǃuL.ǃJEM()}ǃVz(te,ne,ie,ae){this.ǃJTT(()=>{super.ǃVz(te,ne,ie,ae)})}ǃIu(te,ne,ie,ae){this.ǃJTT(()=>{super.ǃIu(te,ne,ie,ae)})}ǃJLN(te){this.ǃJTT(()=>{super.ǃJLN(te)})}ǃJLT(te){this.ǃJTT(()=>{super.ǃJLT(te)})}ǃJTT(te){let ne=this.ǃJTD();te();let ie=this.ǃJTD();ne!==ie&&this.ǃuL.ǃJEM()}ǃJTD(){let te=[...this.ǃJfr()];return te.find(ne=>{return ne instanceof ǃOnQ})}ǃJLb(){app.ǃJTE(this,_458),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJTE(this,"animationfolderremove")}ǃIs(te,ne){ǃJ.ǃFt(te),ǃJ.ǃFt(ne),this.ǃex()||this.ǃyo(te.name);let ie=[];for(let de of te.subfolders){let re=this.ǃIN();ie.push(re.ǃIs(de,ne))}let ae=[];for(let de of te.items){let re=ǃJ.ǃb(ǃOnQ,this.ǃuL);ae.push(re.ǃJTi(de,ne)),this.ǃCK(re)}return Promise.all(ie).then(()=>Promise.all(ae)).then(()=>this)}ǃJEl(te,ne){ǃJ.ǃk(te,ǃJ.ǃpj.Element),ǃJ.ǃk(ne,ǃJ.ǃOcO),this.ǃex()||this.ǃyo(te.ǃOpg("name"));let ie=[];for(let de of te.children("animation-folder")){let re=this.ǃIN();ie.push(re.ǃJEl(de,ne))}let ae=[];for(let de of te.children("animation")){let re=ǃJ.ǃb(ǃOnQ,this.ǃuL);ae.push(re.ǃJTa(de,ne)),this.ǃCK(re)}return Promise.all(ie).then(()=>Promise.all(ae)).then(()=>this)}}}{const _459="animationnamechange",_460="invalid frame index",_461="animationframeadded",_462="projectobjectnamechange",_463="animationframeorderchange",_464="animation frame belongs to different animation",ee=["before","after"];window.ǃOnQ=class te extends ǃco{constructor(ne,ie){ǃJ.ǃk(ne,ǃej),ǃJ.ǃUV(ie),super(ne.ǃng()),this.ǃJIZ=null,this.ǃuL=ne,this.ǃOYj=ie||"",this.ǃJTp=!1,this.ǃJTw=!1,this.ǃJTY=1,this.ǃJTQ=0,this.ǃXh=5,this.ǃJTj=[],this.ǃJTF=[],this.ǃOPY=!1}ǃyY(){for(let ne of this.ǃJTW())ne.ǃyY();ǃJ.ǃXX(this.ǃJTF)}ǃOCo(){return"animation"}ǃDj(){let ne=ǃJ.ǃb(te,this.ǃuL,`Animation ${this.ǃuL.ǃJEE()+1}`);ne.ǃJTp=this.ǃJTp,ne.ǃJTw=this.ǃJTw,ne.ǃJTY=this.ǃJTY,ne.ǃJTQ=this.ǃJTQ,ne.ǃXh=this.ǃXh;let ie=[];for(let ae of this.frames())ie.push(ae.ǃDj(ne));return Promise.all(ie).then(ae=>{for(let de of ae)ne.ǃOnF(de);return ne})}ǃJTZ(){for(let ne of this.frames())ne.ǃVS()}ǃJLu(){let ne=this.ǃuL.ǃO$R()===this;app.ǃJTG(this,"beforeanimationdeleted"),this.ǃJTF=[...this.frames()];for(let ie of this.ǃJTF)ie.ǃJTl(!0),ie.ǃJLu();super.ǃJLu(),ne&&this.ǃuL.ǃJEM()}ǃJL_(){for(app.ǃJTG(this,"beforeanimationundeleted");this.ǃJTF.length;){let ne=this.ǃJTF.pop();ne.ǃJL_(),ne.ǃJTl(!1)}super.ǃJL_(),this.ǃuL.ǃO$R()===this&&this.ǃuL.ǃJEM()}ǃJLb(){app.ǃJTG(this,"animationundeleted"),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJTG(this,"animationdeleted")}ǃrG(){if(!this.ǃJIZ)throw new Error("animation not yet added to folder");return this.ǃJIZ}ǃJLG(ne){ǃJ.ǃk(ne,ǃJEO),this.ǃJIZ=ne}ǃf$(){return this.ǃuL}ǃYQ(){this.ǃng().ǃBZ()||(this.ǃOPY=!0,this.ǃf$().ǃYQ())}ǃJTx(ne){ne=ǃJ.ǃOrV(ne),this.ǃOYj=ne,this.ǃYQ(),app.ǃJTG(this,_459),app.ǃJLq(this,_462)}ǃyo(ne,ie=!0){if(ǃJ.ǃJO(ne),!0!==ie&&!1!==ie)throw new Error("wrong argument value");if(!ne)throw new Error("cannot set empty name");if(ne=ǃJ.ǃOrV(ne),this.ǃOYj!==ne){if(ie&&this.ǃf$().ǃOcv(ne))throw new Error("duplicate animation name");if(ie&&!ǃJ.ǃOrz(ne))throw new Error("name has invalid characters");this.ǃOYj=ne,this.ǃYQ(),app.ǃJTG(this,_459),app.ǃJLq(this,_462)}}ǃVy(ne,ie){if(ǃJ.ǃJO(ne),ǃJ.ǃLA(ie),ǃJ.ǃS.ǃT("model.animation.errors"),ne=ǃJ.ǃOrV(ne),!ǃJ.ǃOrz(ne)){let ae=lang(".name-invalid.title"),de=lang(".name-invalid.message");return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ie,"warning",ae,de,{align:"bottom"}),void ǃJ.ǃS.ǃOu()}if(this.ǃf$().ǃOcv(ne)){let ae=lang(".name-used.title"),de=ǃra(".name-used.message",ne);return ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ie,"warning",ae,de,{align:"bottom"}),void ǃJ.ǃS.ǃOu()}ǃJ.ǃS.ǃOu(),this.ǃyo(ne)}ǃyg(){return this.ǃOYj}ǃJTA(ne){ne=!!ne;this.ǃJTp===ne||(this.ǃJTp=ne,this.ǃYQ())}ǃAs(){return this.ǃJTp}ǃJTh(ne){ne=!!ne;this.ǃJTw===ne||(this.ǃJTw=ne,this.ǃYQ())}ǃOtt(){return this.ǃJTw}ǃJTv(ne){if(ǃJ.ǃXq(ne),ne=Math.floor(ne),0>=ne)throw new Error("invalid repeat count");this.ǃJTY===ne||(this.ǃJTY=ne,this.ǃYQ())}ǃOtq(){return this.ǃJTY}ǃJTP(ne){if(ǃJ.ǃXq(ne),ne=Math.floor(ne),0!==ne&&(0>ne||ne>=this.ǃJTj.length))throw new Error(_460);this.ǃJTQ===ne||(this.ǃJTQ=ne,this.ǃYQ())}ǃOt$(){return this.ǃJTQ}ǃJTd(ne){ǃJ.ǃXq(ne),ne=ǃJ.ǃRf(ne,0,60);this.ǃXh===ne||(this.ǃXh=ne,this.ǃYQ())}ǃOtc(){return this.ǃXh}ǃJTs(){let ne=[];for(let ie of this.frames())ne.push(ie.ǃfY());return Promise.all(ne)}ǃJDO(){let ne=[];for(let ie of this.frames())ne.push(ie.ǃJrW());return Promise.all(ne)}ǃOcP(){let ne=0;for(let ie of this.frames())ne++;return ne}ǃJDJ(){return this.ǃJTj.length}ǃOtS(ne){if(ǃJ.ǃXq(ne),ne=Math.floor(ne),0>ne||ne>=this.ǃJTj.length)return null;let ie=0;for(let ae of this.frames()){if(ie===ne)return ae;ie++}return null}ǃJDy(ne){return ǃJ.ǃXq(ne),ne=Math.floor(ne),0>ne||ne>=this.ǃJTj.length?null:this.ǃJTj[ne]}ǃJDf(){return this.ǃOtS(this.ǃOcP()-1)}ǃJDS(){this.ǃJTj=this.ǃJTj.reverse(),app.ǃJTG(this,_463),this.ǃuL.ǃJEM()}ǃJDn(ne,ie){ǃJ.ǃXq(ne),ǃJ.ǃXq(ie);let ae=ne,de=ie;if(ne=this.ǃJDX(this.ǃOtS(ne)),ie=this.ǃJDX(this.ǃOtS(ie)),0>ne||ne>=this.ǃJTj.length)throw new Error(_460);if(0>ie||ie>=this.ǃJTj.length)throw new Error(_460);ne===ie||(this.ǃJTj.splice(ie,0,this.ǃJTj.splice(ne,1)[0]),app.ǃJTG(this,_463),(0===ae||0===de)&&this.ǃuL.ǃJEM())}ǃJDR(ne){if(ǃJ.ǃk(ne,Map),ǃJ.ǃOrf(ǃOnj,...ne.keys()),ǃJ.ǃOeA(...ne.values()),[...ne.keys()].length!==this.ǃOcP())throw new Error("new order map must have the same amount of entries as frames in the animation");let ie=[];for(let ae of ne.keys()){if(ae.ǃO$S()!==this)throw new Error("frame does not belong to animation");if(!ae.ǃXb())throw new Error("frame to re order is not active");ie.push(this.ǃJTj.splice(this.ǃJTj.indexOf(ae),1)[0])}if(0!==this.ǃOcP())throw new Error("no active frames can remain");for(;ie.length;){let ae=ie.pop(),de=ne.get(ae);this.ǃJTj[de]=ae}this.ǃuL.ǃJEM(),app.ǃJTG(this,_463)}*frames(){for(let ne of this.ǃJTj)ne.ǃXb()&&(yield ne)}*ǃJTW(){yield*this.ǃJTj}ǃJDg(ne,ie){ǃJ.ǃaB(ne),ǃJ.ǃaB(ie);let ae=ǃJ.ǃb(ǃOnj,this.ǃuL,this);return this.ǃOnF(ae),ae.ǃJE_(ne,ie).then(()=>ae)}ǃJTN(ne,ie,ae){if(ǃJ.ǃk(ne,Blob),ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),0>=ie||0>=ae)throw new Error("invalid width and height values provided");let de=ǃJ.ǃb(ǃOnj,this.ǃuL,this);return this.ǃOnF(de),de.ǃJEb(ne,ie,ae)}ǃOnF(ne,ie,ae){if(ǃJ.ǃk(ne,ǃOnj),ǃJ.ǃq$(ie,ǃOnj),ǃJ.ǃUV(ae),ne.ǃO$S()!==this)throw new Error(_464);if(this.ǃJTj.includes(ne))throw new Error("animation frame already in this animation");if(!ne.ǃXb())throw new Error("frame to add is not active");if(!ie&&!ae)return this.ǃJTj.push(ne),this.ǃYQ(),void app.ǃJTG(this,_461);if(!ie&&ae)throw new Error("animation Addframe method was called with invalid arguments. Missing argument 'pivotframe' of type AnimationFrame.");if(ie&&!ae)throw new Error("animation Addframe method was called with invalid arguments. Missing argument 'position' of type String.");if(!ie.ǃXb())throw new Error("pivotframe is not active");if(!ee.includes(ae))throw new Error(`invalid position: ${ae}. Valid positions are ${ee.toString()}.`);let de=this.ǃJDX(ie);"before"===ae&&(this.ǃJTj.splice(de,0,ne),0===this.ǃJDH(ie)&&this.ǃuL.ǃJEM()),"after"===ae&&this.ǃJTj.splice(de+1,0,ne),this.ǃYQ(),app.ǃJTG(this,_461)}ǃJDH(ne){if(ǃJ.ǃk(ne,ǃOnj),ne.ǃO$S()!==this)throw new Error(_464);if(!ne.ǃXb())throw new Error("frame is not active");let ie=0;for(let ae of this.frames()){if(ae===ne)return ie;ie++}throw new Error("frame not found")}ǃJDX(ne){ǃJ.ǃk(ne,ǃOnj);let ie=this.ǃJTj.indexOf(ne);if(0>ie)throw new Error("frame not in this animation");return ie}ǃJot(ne){ǃJ.ǃk(ne,ǃOmT);let ie=[...this.frames()].map(ae=>ae.ǃJot(ne));return[this.ǃyg(),this.ǃOtc(),this.ǃAs(),this.ǃOtq(),this.ǃOt$(),this.ǃOtt(),this.ǃJLH(),ie]}ǃJor(){return{name:this.ǃOYj,isLooping:this.ǃJTp,isPingPong:this.ǃJTw,repeatCount:this.ǃJTY,repeatTo:this.ǃJTQ,speed:this.ǃXh}}ǃIh(ne){ǃJ.ǃBA(ne);let ie=ne&&ne.mode||"",ae={frames:[...this.frames()].map(de=>de.ǃIh(ne))};return"copy"!==ie&&(ae.sid=this.ǃJLH()),Object.assign(ae,this.ǃJor())}ǃJow(ne){this.ǃyo(ne.name),this.ǃJTA(ne.isLooping),this.ǃJTh(ne.isPingPong),this.ǃJTv(ne.repeatCount),this.ǃJTP(ne.repeatTo),this.ǃJTd(ne.speed)}ǃIP(ne){ne.hasOwnProperty("sid")&&this.ǃJLC(ne.sid),this.ǃJow(ne)}ǃJTi(ne,ie){ǃJ.ǃFt(ne),ǃJ.ǃFt(ie),this.ǃyo(ne.name);let ae=[],de=0;for(let re of ne.frames){let oe=ǃJ.ǃb(ǃOnj,this.ǃuL,this);this.ǃOnF(oe),ae.push(oe.ǃNy(re,ie,de++))}return this.ǃIP(ne),Promise.all(ae).then(()=>this)}ǃJTa(ne,ie){if(ǃJ.ǃk(ne,ǃJ.ǃpj.Element),ǃJ.ǃk(ie,ǃJ.ǃOcO),"animation"!==ne.ǃOad())throw new Error("expected tag name 'animation'");ne.ǃOpR("sid")&&this.ǃJLC(ne.ǃOpH("sid")),this.ǃyo(ne.ǃOpg("name")),this.ǃJTA(ne.ǃOpU("loop")),this.ǃJTh(ne.ǃOpU("pingpong"));let ae=ne.ǃOCa("repeatcount");0===ae&&(ae=1),this.ǃJTv(ae),this.ǃJTd(ne.ǃOpH("speed"));let de=[];for(let ye of ne.children("frame")){let Oe=ǃJ.ǃb(ǃOnj,this.ǃuL,this);this.ǃOnF(Oe),de.push(Oe.ǃJDU(ye,ie))}for(let re=ne.ǃOCa("framecount")||0,ye;re>this.ǃOcP();)ye=ǃJ.ǃb(ǃOnj,this.ǃuL,this),this.ǃOnF(ye),de.push(ye.ǃJDU(null,ie));let oe=ne.ǃOCa("repeatto");return oe=ǃJ.ǃRf(oe,0,this.ǃJTj.length-1),this.ǃJTP(oe),Promise.all(de).then(()=>this)}}}{const _465="quality",_466="original-source",_467="invalid icon size",_468="animationframechange",_469="imagesprite was released",_470="animationframeimagechange",_471="beforeanimationframeimagechange",_472="animation frame already has content",_473="cannot find image point in this frame",ee=["png","jpeg"],ie=0.8;window.ǃOnj=class ae extends ǃco{constructor(de,re){ǃJ.ǃk(de,ǃej),ǃJ.ǃq$(re,ǃOnQ),super(de.ǃng()),this.ǃuL=de,this.ǃJDC=re,this.ǃJDu=1,this.ǃOgs=0.5,this.ǃOHJ=0.5,this.ǃJD_=[],this.ǃJDm="",this.ǃJrV="png",this.ǃJrK=ie,this.ǃJDb=ǃJ.ǃb(ǃmY),this.ǃJDc=null,this.ǃJDt=!1,this.ǃJD$=!1,this.ǃJDq=!1,this.ǃJDM=!1,this.ǃJDB=null,this.ǃJDL=-1,this.ǃJDz=-1,this.ǃJDk=!1,this.ǃOdD=null,this.ǃOdi=null,this.ǃOda=null,this.ǃJDV="",this.ǃuL.ǃJEo(this)}ǃyY(){this.ǃuL.ǃJEr(this),!this.ǃJDc||ǃJ.ǃ_O(this.ǃJDc)||this.ǃJDc.ǃ_O()||this.ǃJDK(),this.ǃOdD&&this.ǃOdD.ǃyY(),this.ǃOdi&&this.ǃOdi.ǃyY(),this.ǃOda&&this.ǃOda.ǃyY(),this.ǃJDb=null,this.ǃuL=null,this.ǃJDC=null,this.ǃJDB=null,this.ǃOdD=null,this.ǃOdi=null,this.ǃOda=null,ǃJ.ǃXX(this.ǃJD_)}ǃOCo(){return"animation-frame"}ǃJDK(){this.ǃJDc.ǃyY(),this.ǃJDc=null}ǃJLb(){if(this.ǃJDc)throw new Error("image sprite should be null");if(!this.ǃJDB)throw new Error("backup blob required");this.ǃJDk||app.ǃJEi(this,"beforeanimationframeundeleted"),this.ǃuL.ǃJEo(this),this.ǃJDL&&this.ǃJDz?this.ǃJEb(this.ǃJDB,this.ǃJDL,this.ǃJDz):this.ǃOnW(this.ǃJDB),this.ǃJDB=null,this.ǃJDL=-1,this.ǃJDz=-1,this.ǃJDk||app.ǃJEi(this,"animationframeundeleted"),this.ǃJDo(),this.ǃJDe()||this.ǃO$S().ǃOtS(0)!==this||this.ǃJDk||this.ǃuL.ǃJEM()}ǃJLm(){if(this.ǃJDB)throw new Error("backup blob is already defined");if(this.ǃJDk||app.ǃJEi(this,"beforeanimationframedeleted"),!this.ǃJDe()&&!this.ǃJDk){let de=this.ǃO$S().ǃOtS(0);if(de){let re=de.ǃJDr(),oe=this.ǃJDr();oeOe):void 0:(Oe.ǃJEb(this.ǃJDc.ǃJIG(),this.ǃJDc.ǃfI(),this.ǃJDc.ǃfG()),Promise.resolve(Oe))}ǃ_J(){return this.ǃJDN(),this.ǃJDc}ǃJEp(){let de=this.ǃ_J(),re=de.ǃJIa();return re||de}ǃO$S(){return this.ǃJDC}ǃJDe(){return!this.ǃJDC}ǃJDG(){return this.ǃJDM}ǃJDE(de){this.ǃJDM=!!de}ǃJTl(de){this.ǃJDk=!!de}ǃf$(){return this.ǃuL}ǃJDT(){return this.ǃJD$}ǃJDD(){return this.ǃJDq}ǃJDo(){return!this.ǃng().ǃBZ()&&void(this.ǃJD$=!0,this.ǃJDq=!0,this.ǃf$().ǃYQ(),this.ǃuL.ǃJEi(this,_468),app.ǃJEi(this,_468))}ǃJDi(){return!this.ǃng().ǃBZ()&&void(this.ǃJDq=!0,this.ǃuL.ǃJEi(this,_468),app.ǃJEi(this,_468))}ǃJDa(){return!this.ǃng().ǃBZ()&&void(this.ǃJD$=!0,this.ǃf$().ǃYQ(),this.ǃuL.ǃJEi(this,_468),app.ǃJEi(this,_468))}ǃJDp(de){if(ǃJ.ǃXq(de),0>de)throw new Error("invalid frame duration");if(this.ǃJDe())throw new Error("cannot change duration of non-animated image");this.ǃJDu===de||(this.ǃJDu=de,this.ǃJDa())}ǃOtb(){return this.ǃJDu}ǃJDw(de){ǃJ.ǃXq(de),this.ǃOgs+=de,this.ǃJDa()}ǃSu(de){ǃJ.ǃXq(de);this.ǃOgs===de||(this.ǃOgs=de,this.ǃJDa())}ǃOHO(){return this.ǃOgs}ǃJDY(de){ǃJ.ǃXq(de),this.ǃOHJ+=de,this.ǃJDa()}ǃS_(de){ǃJ.ǃXq(de);this.ǃOHJ===de||(this.ǃOHJ=de,this.ǃJDa())}ǃOHy(){return this.ǃOHJ}ǃJDQ(de){ǃJ.ǃJO(de);this.ǃJDm===de||(this.ǃJDm=de,app.ǃJEi(this,"animationframesourcechange"),this.ǃJDa())}ǃJDj(){return this.ǃJDm}ǃJIT(de){if(ǃJ.ǃJO(de),!ee.includes(de))throw new Error("invalid export format");this.ǃJrV!==de&&(this.ǃJrV=de,!this.ǃng().ǃBZ()&&this.ǃJEN(),this.ǃJDa())}ǃJrN(){return this.ǃJrV}ǃJDF(de){ǃJ.ǃXq(de),de=ǃJ.ǃRf(de,0,1),this.ǃJrK!==de&&(this.ǃJrK=de,!this.ǃng().ǃBZ()&&this.ǃJEN(),this.ǃJDa())}ǃJIy(){return this.ǃJrK}ǃJDW(de){ǃJ.ǃk(de,ǃmY),this.ǃJDb=de}ǃDX(){return this.ǃJDb}ǃO$O(){return this.ǃJDe()?0:this.ǃJDC.ǃJDH(this)}ǃJDr(){return this.ǃJDe()?0:this.ǃJDC.ǃJDX(this)}ǃJDZ(de,re,oe){ǃJ.ǃJO(de),ǃJ.ǃaB(re),ǃJ.ǃaB(oe),assert(ǃJ.ǃLR(re)&&ǃJ.ǃLR(oe)||!ǃJ.ǃLR(re)&&!ǃJ.ǃLR(oe),"unexpected arguments");let ye=ǃJ.ǃb(ǃJTV,this.ǃuL.ǃng());return ye.ǃyo(de),ǃJ.ǃLR(re)&&ǃJ.ǃLR(oe)&&ye.ǃOWU(re,oe),this.ǃJD_.push(ye),this.ǃJDa(),ye}ǃJDl(){let de=!1;for(let re of this.ǃJDx())de=!0,re.ǃyY();de&&(this.ǃJD_.length=0,this.ǃJDa())}ǃJDA(de){ǃJ.ǃk(de,ǃJTV);let re=this.ǃJDh(de.ǃyg());if(!re){let oe=ǃJ.ǃb(ǃJTV,this.ǃuL.ǃng());return oe.ǃJTS(de),this.ǃJD_.push(oe),this.ǃJDa(),oe}return null}ǃJDv(de){ǃJ.ǃk(de,ǃJTV);let re=this.ǃJD_.indexOf(de);if(0>re)throw new Error("cannot find image point to remove");de.ǃVS(),this.ǃJDa()}ǃJDP(de){ǃJ.ǃk(de,ǃJTV);let re=this.ǃJD_.indexOf(de);if(0>re)throw new Error(_473);re+1>this.ǃJD_.length-1||(this.ǃJD_.splice(re,1),this.ǃJD_.splice(re+1,0,de),this.ǃJDa())}ǃJDd(de){ǃJ.ǃk(de,ǃJTV);let re=this.ǃJD_.indexOf(de);if(0>re)throw new Error(_473);0>re-1||(this.ǃJD_.splice(re,1),this.ǃJD_.splice(re-1,0,de),this.ǃJDa())}ǃJDs(de){if(ǃJ.ǃXq(de),de=Math.floor(de),0>de||de>=this.ǃJD_.length)return null;let re=0;for(let oe of this.ǃJiO()){if(re===de)return oe;re++}return null}ǃJDh(de){ǃJ.ǃJO(de);for(let re of this.ǃJiO())if(re.ǃyg()===de)return re}ǃJiJ(de){return ǃJ.ǃXq(de),ǃJ.ǃOri(de,this.ǃJD_),this.ǃJD_[de]}ǃJiy(){this.ǃSu(1-this.ǃOHO());for(let de of this.ǃJD_)de.ǃJT$();this.ǃJDa()}ǃJif(){this.ǃS_(1-this.ǃOHy());for(let de of this.ǃJD_)de.ǃJTq();this.ǃJDa()}ǃJiS(){let de=this.ǃOHO();this.ǃSu(this.ǃOHy()),this.ǃS_(de),this.ǃSu(1-this.ǃOHO());for(let re of this.ǃJD_)re.ǃJTB();this.ǃJDa()}ǃJin(){let de=this.ǃOHO();this.ǃSu(this.ǃOHy()),this.ǃS_(de),this.ǃS_(1-this.ǃOHy());for(let re of this.ǃJD_)re.ǃJTL();this.ǃJDa()}*ǃJiO(){for(let de of this.ǃJD_)de.ǃXb()&&(yield de)}*ǃJDx(){yield*this.ǃJD_}ǃJiX(){let de=0;for(let re of this.ǃJiO())de++;return de}ǃJiR(){return this.ǃJD_.length}ǃJig(){return this.ǃuL.ǃtH().ǃJrJ()||"jpeg"===this.ǃJrN()?"none-own-sheet":"high"===this.ǃng().ǃdL()?"power-of-two":"border"}ǃJiH(){return!!this.ǃJDc&&!ǃJ.ǃ_O(this.ǃJDc)&&!this.ǃJDc.ǃ_O()&&!this.ǃJDt}ǃJDN(){if(!this.ǃJDc)throw new Error("animation frame has no content");if(ǃJ.ǃ_O(this.ǃJDc))throw new Error(_469);if(this.ǃJDc.ǃ_O())throw new Error(_469);if(this.ǃJDt)throw new Error("animation frame still loading content")}ǃJE_(de,re){if(ǃJ.ǃaB(de),ǃJ.ǃaB(re),this.ǃJDc||this.ǃJDt)throw new Error(_472);this.ǃJDE(!1);let oe=document.createElement("canvas");return oe.width=de||250,oe.height=re||250,this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig()),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJIN(oe)}ǃJDI(de){if(ǃJ.ǃk(de,ImageData),this.ǃJDc||this.ǃJDt)throw new Error(_472);return this.ǃJDE(!1),this.ǃJDt=!0,ǃJ.ǃOIe(de).then(re=>{return this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig()),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJIr(re,de.width,de.height),this.ǃJDt=!1,this})}ǃJEb(de,re,oe){if(ǃJ.ǃk(de,Blob),ǃJ.ǃXq(re),ǃJ.ǃXq(oe),this.ǃJDc||this.ǃJDt)throw new Error(_472);return this.ǃJDE(!1),this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig()),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJIr(de,Math.floor(re),Math.floor(oe)),this}ǃOnW(de){if(ǃJ.ǃk(de,Blob),this.ǃJDc||this.ǃJDt)throw new Error(_472);return this.ǃJDE(!1),this.ǃJDt=!0,this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig()),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJII(de).then(()=>{return this.ǃJDt=!1,this})}ǃJiU(de){return ǃJ.ǃk(de,ImageData),this.ǃJDE(!0),ǃJ.ǃOIe(de).then(re=>this.ǃps(re,de.width,de.height))}ǃDi(de){return ǃJ.ǃk(de,Blob),this.ǃJDE(!0),ǃJ.ǃOIq(de).then(re=>this.ǃps(de,re.width,re.height))}ǃps(de,re,oe){if(ǃJ.ǃk(de,Blob),ǃJ.ǃXq(re),ǃJ.ǃXq(oe),0>=re||0>=oe)throw new Error("invalid size");this.ǃuL.ǃJEi(this,_471),app.ǃJEi(this,_471),this.ǃJDE(!0),this.ǃJDN(),this.ǃJDK(),this.ǃJEb(de,re,oe),this.ǃJDi(),this.ǃJEM(),this.ǃuL.ǃJEM(),this.ǃuL.ǃJEi(this,_470),app.ǃJEi(this,_470)}ǃJEN(){this.ǃJDN();let de=this.ǃJDc.ǃUE(),re=this.ǃJDc.ǃfI(),oe=this.ǃJDc.ǃfG();this.ǃJDK(),this.ǃJEb(de,re,oe)}ǃfI(){return this.ǃJDN(),this.ǃJDc.ǃfI()}ǃfG(){return this.ǃJDN(),this.ǃJDc.ǃfG()}ǃJrw(){return this.ǃJDc?this.ǃJDc.ǃJrw():null}ǃJrY(){let de=this.ǃuL.ǃtH().ǃJrJ(),re="linear"===this.ǃng().ǃ_S(),oe=this.ǃuL.ǃJKg();return oe.ǃJrR()?oe.ǃJrg().then(()=>{return this.ǃJDN(),this.ǃJDc.ǃJrY(de,re)}):(this.ǃJDN(),this.ǃJDc.ǃJrY(de,re))}ǃSM(){return this.ǃJDN(),this.ǃJDc.ǃSM()}ǃUE(){return this.ǃJDN(),this.ǃJDc.ǃUE()}ǃfY(de){return this.ǃJDN(),this.ǃJDc.ǃfY(de)}ǃ_y(de){return this.ǃJDN(),this.ǃJDc.ǃ_y(de)}ǃJrW(de){return this.ǃJDN(),this.ǃJDc.ǃJrW(de)}ǃJiC(){return this.ǃJDN(),this.ǃJDc.ǃOXq()}ǃyX(){return this.ǃJEq("small")}ǃOdW(){return this.ǃJEq("medium")}ǃOdZ(){return this.ǃJEq("large")}ǃJEq(de){if(!this.ǃJEc(de)){let re;if(this.ǃJDe())re=this.ǃf$().ǃyg();else{let ye=this.ǃO$S(),Oe=ye.ǃJDX(this),le=ye.ǃyg();re=`${le}_${Oe}`}let oe=ǃJ.ǃU.ǃ$B.ǃJf(null,app.ǃJfb(de),{name:re});this.ǃ_y().then(ye=>{oe.ǃ$D(ye,{ǃOPG:!0})}),this.ǃJEt(de,oe)}return this.ǃJEc(de)}ǃJEc(de){switch(de){case"small":return this.ǃOdD&&this.ǃOdD.ǃOPn()&&(this.ǃOdD=null),this.ǃOdD;case"medium":return this.ǃOdi&&this.ǃOdi.ǃOPn()&&(this.ǃOdi=null),this.ǃOdi;case"large":return this.ǃOda&&this.ǃOda.ǃOPn()&&(this.ǃOda=null),this.ǃOda;default:throw new Error(_467);}}ǃJEt(de,re){switch(de){case"small":this.ǃOdD=re;break;case"medium":this.ǃOdi=re;break;case"large":this.ǃOda=re;break;default:throw new Error(_467);}}ǃJEM(){(this.ǃOdD||this.ǃOdi||this.ǃOda)&&this.ǃ_y().then(de=>{this.ǃOdD&&this.ǃOdD.ǃ$D(de),this.ǃOdi&&this.ǃOdi.ǃ$D(de),this.ǃOda&&this.ǃOda.ǃ$D(de)})}ǃJot(de){ǃJ.ǃk(de,ǃOmT);let re=this.ǃJEp(),oe=re.ǃOXq();assert(oe,"missing spritesheet");let ye=[...this.ǃJiO()].map(le=>le.ǃJot()),Oe=this.ǃDX().ǃJot(this.ǃOHO(),this.ǃOHy());return[de.ǃJEw(oe),oe.ǃJrp(),re.ǃJrZ(),re.ǃJrl(),re.ǃfI(),re.ǃfG(),this.ǃOtb(),this.ǃOHO(),this.ǃOHy(),ye,Oe,0]}ǃIh(de){ǃJ.ǃBA(de);let re=de&&de.mode||"";this.ǃJDN();let oe={width:this.ǃJDc.ǃfI(),height:this.ǃJDc.ǃfG(),originX:this.ǃOgs,originY:this.ǃOHJ,originalSource:this.ǃJDm,exportFormat:this.ǃJrV,exportQuality:this.ǃJrK};if("copy"===re){if(!de||!Array.isArray(de.ǃIA))throw new Error("caller must convert blobs");oe.imageDataIndex=de.ǃIA.length,de.ǃIA.push(this.ǃJDc.ǃUE())}else oe.imageSpriteId=this.ǃJDc.ǃJXn();this.ǃJDb.ǃJEY()||(oe.collisionPoly=this.ǃJDb.ǃIh());let ye=[...this.ǃJiO()].map(Oe=>Oe.ǃIh());return 0ǃJ.ǃOIm(pe));else if(pe instanceof Blob)Je=Promise.resolve(pe);else throw new TypeError("invalid image data")}else throw new Error("no image source");return Je.then(ue=>{return this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig(),le),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJIr(ue,ye,Oe),this})}ǃJib(de){return ǃJ.ǃaB(de),this.ǃJDC?("number"!=typeof de&&(de=this.ǃO$O()),`images\\${this.ǃuL.ǃyg().toLowerCase()}-${this.ǃJDC.ǃyg().toLowerCase()}-${ǃJ.ǃOuG(de,3)}.png`):`images\\${this.ǃuL.ǃyg().toLowerCase()}.png`}ǃJic(de){this.ǃJDV=this.ǃJib(de)}ǃGp(de,re){const oe=this.ǃJib(),ye=this.ǃJDV;if(re.ǃJLi){if(!this.ǃJDD()&&oe===ye)return;ye&&oe!==ye&&re.ǃJoF.add(ye),this.ǃJDV=oe}de.set(oe,this.ǃJDc.ǃUE())}ǃJDU(de,re){if(ǃJ.ǃq$(de,ǃJ.ǃpj.Element),ǃJ.ǃk(re,ǃJ.ǃOcO),assert(!this.ǃJDe(),"loading single image as if an animation frame"),de){this.ǃJDp(de.ǃOpH("duration")),this.ǃSu(de.ǃOpH("hotspotX")),this.ǃS_(de.ǃOpH("hotspotY"));let le=de.ǃOpg(_466);this.ǃJDQ(le||"");for(let pe of de.children("image-point"))this.ǃJD_.push(ǃJTV.ǃJNf(this.ǃng(),pe));let Je=de.ǃOpO("collision-poly");Je&&this.ǃDX().ǃJEA(Je);let ue=de.ǃOpg("format");if("jpeg"===ue&&(this.ǃJIT("jpeg"),de.ǃOpR(_465))){let pe=de.ǃOpH(_465)/100;this.ǃJDF(pe)}}let oe=ǃOcw.ǃJeY(this.ǃO$O()),ye=`Animations\\${this.ǃuL.ǃyg()}\\${this.ǃJDC.ǃyg()}\\${oe}.png`,Oe=re.ǃOpz(ye);if(!Oe)throw new Error(`animation frame missing: ${ye}`);return this.ǃJit(re,Oe)}ǃJEx(de,re){if(ǃJ.ǃq$(de,ǃJ.ǃpj.Element),ǃJ.ǃk(re,ǃJ.ǃOcO),assert(this.ǃJDe(),"expected single-image AnimationFrame"),de){let Oe=de.ǃOpg(_466);this.ǃJDQ(Oe||"");let le=de.ǃOpg("format");if("jpeg"===le&&(this.ǃJIT("jpeg"),de.ǃOpR(_465))){let Je=de.ǃOpH(_465)/100;this.ǃJDF(Je)}}let oe=`Textures\\${this.ǃuL.ǃyg()}.png`,ye=re.ǃOpz(oe);if(!ye)throw new Error(`object image missing: ${oe}`);return this.ǃJit(re,ye)}ǃJit(de,re){if(this.ǃJDc||this.ǃJDt)throw new Error("already loaded content");return this.ǃJDt=!0,de.ǃOcR(re).then(oe=>{return this.ǃJDc=ǃJ.ǃb(ǃJrf,this.ǃuL.ǃJKg(),this.ǃJig()),this.ǃJDc.ǃJIT(this.ǃJrN(),this.ǃJIy()),this.ǃJDc.ǃJII(oe)}).then(()=>{return this.ǃJDt=!1,this})}}}{const _474="undefined";let ee=!1;window.ǃoD=class te extends ǃco{constructor(ne){ǃJ.ǃk(ne,ǃej),super(ne.ǃng()),this.ǃJNU=null,this.ǃuL=ne,this.ǃJi$=this.ǃng().ǃJko(this),this.ǃJNq=new Map,this.ǃJzC=!1,this.ǃJNM=!1,this.ǃJiq=null,this.ǃJNB()}ǃyY(){this.ǃJNU.ǃyY(),this.ǃJNq.clear(),this.ǃJiq=null,this.ǃJNU=null,this.ǃuL=null}ǃcN(){this.ǃyQ()}ǃyQ(){if(this.ǃJNM)throw new Error("already called OnCreate");this.ǃJNU.ǃyQ(),this.ǃJNM=!0}ǃYQ(){this.ǃng().ǃBZ()||(this.ǃJzC=!0,this.ǃJiq&&this.ǃJiq.ǃYQ(),app.ǃSs()&&app.ǃOt().ǃkP(this))}ǃJLu(){if(this.ǃtH().ǃIE())for(let ne of this.ǃuL.ǃJKB())ne.ǃOON(this).ǃJLu();super.ǃJLu()}ǃJL_(){if(super.ǃJL_(),this.ǃtH().ǃIE())for(let ne of this.ǃuL.ǃJKB())ne.ǃOON(this).ǃJL_()}ǃJLb(){this.ǃng().ǃJkr(this,this.ǃJi$),app.ǃOCT(this,"objectinstanceadd"),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃOCT(this,"objectinstanceremove"),this.ǃng().ǃJkI(this.ǃJi$)}ǃJiM(ne){ǃJ.ǃJO(ne);let ie=new ǃJ.Event(ne);ie.ǃVh=this,this.dispatchEvent(ie)}ǃJiB(ne){if(ǃJ.ǃk(ne,ǃJs),!this.ǃtH().ǃJiL())throw new Error("not a non-world instance");this.ǃJiq=ne}ǃJEB(){return this.ǃJiq}ǃJiz(ne){if(ǃJ.ǃXq(ne),ne=Math.floor(ne),0>ne)throw new Error("invalid uid");if(!this.ǃXb())throw new Error("cannot set deleted instance's UID");if(this.ǃJi$!==ne){let ie=this.ǃng();if(ie.ǃJkI(this.ǃJi$),!ie.ǃJkN(ne))this.ǃJi$=ne,ie.ǃJkr(this,this.ǃJi$);else if(ie.ǃBZ()){let ae=ie.ǃJBV(ne),de=this.ǃJi$;ie.ǃJkI(ne),ae.ǃJi$=de,ie.ǃJkr(ae,ae.ǃJi$),this.ǃJi$=ne,ie.ǃJkr(this,this.ǃJi$)}else this.ǃJi$=ie.ǃJko(this)}}ǃoW(){return this.ǃJi$}static ǃsj(ne,ie){return ne.ǃoW()-ie.ǃoW()}ǃDj(){let ne=this.ǃuL.ǃJEU();return ne.ǃJNu(this),ne.ǃyQ(),ne}ǃJNu(ne){if(ǃJ.ǃk(ne,te),this.ǃtH()!==ne.ǃtH())throw new Error("instance from different plugin");for(let ie of ne.ǃJNq)this.ǃJNq.set(ie[0],ie[1])}ǃf$(){return this.ǃuL}ǃtH(){return this.ǃuL.ǃtH()}ǃEU(){return this.ǃJNU}ǃfF(){return!!this.ǃJNU.ǃfF()}ǃfW(ne){return!!this.ǃfF()&&(this.ǃJNU.ǃfW(ne),!0)}ǃRU(){this.ǃJNU.ǃRU()}*ǃOSU(){for(let ne of this.ǃuL.ǃJKB())yield ne.ǃOON(this)}*ǃJik(){for(let ne of this.ǃuL.ǃOOe())yield ne.ǃOON(this)}ǃJNB(){this.ǃJNq.clear();let ne=this.ǃuL.ǃtH(),ie=ne.ǃOOr();for(let ae of ie)ae.ǃJNL()&&this.ǃJNq.set(ae.ǃdQ(),ae.ǃOUP())}ǃOJS(ne){return ǃJ.ǃJO(ne),this.ǃJNq.has(ne)}ǃfB(ne){ǃJ.ǃJO(ne);let ie=this.ǃJNq.get(ne);if(typeof ie===_474)throw new Error(`invalid property id '${ne}'`);return ie instanceof ǃJ.ǃSR?ǃJ.ǃb(ǃJ.ǃSR,ie):ie}ǃfA(ne,ie){ǃJ.ǃJO(ne);let ae=ǃJ.ǃOzM(ie),de=ie instanceof ǃJ.ǃSR;if(""!==ae&&""!==ae&&""!==ae&&!de)throw new Error(`cannot store '${ae}' in a property value`);let re=this.ǃJNq.get(ne);if(typeof re===_474)throw new Error(`invalid property id '${ne}'`);let oe=ǃJ.ǃOzM(re);if(ae!==oe)throw new Error(`cannot change property '${ne}' from '${oe}' to '${ae}'`);if(de){if(ie.ǃtE(re))return;ie=ǃJ.ǃb(ǃJ.ǃSR,ie)}else if(ie===re)return;if(this.ǃJNq.set(ne,ie),!ee&&!this.ǃUl.ǃBZ()){ee=!0;let ye;ye=de?ǃJ.ǃb(ǃJ.ǃSR,ie):ie,this.ǃJNU.ǃyj(ne,ye),this.ǃJiV(ne,ye),ee=!1}ee||this.ǃYQ()}ǃJiV(ne,ie){ǃJ.ǃJO(ne);let ae=new ǃJ.Event("propertychange");ae.ǃoA=this,ae.ǃoh=ne,ae.value=ie,this.dispatchEvent(ae)}ǃJGZ(){let ne=[];for(let ie of this.ǃtH().ǃOOr())if(ie.ǃJNL()&&"live-preview"!==ie.ǃdQ()){let Ln=ie.ǃdj(),wn=this.ǃfB(ie.ǃdQ());"combo"===Ln?wn=ie.ǃJNz(wn):"color"===Ln&&("c2"===this.ǃng().ǃdm()?wn=`rgb(${wn.ǃONM()})`:wn=wn.ǃONM()),ne.push(wn)}return ne}ǃJot(ne){ǃJ.ǃk(ne,ǃOmT);let ie=[];if(this.ǃtH().ǃIG())for(let re of this.ǃf$().ǃOOz()){let oe=re.ǃOOV(this);"boolean"===re.ǃdj()&&(oe=oe?1:0);let ye=[oe];ne.ǃJoV()&&ye.push(re.ǃyg()),ie.push(ye)}let ae=[];this.ǃtH().ǃIE()&&(ae=[...this.ǃJik()].map(re=>re.ǃJot()));let de=ne.ǃJoq(this.ǃf$());return[null,de,this.ǃoW(),ie,ae,this.ǃJGZ()]}ǃIh(ne){ǃJ.ǃBA(ne);let ie=ne&&ne.mode||"",ae={};for(let[ye,Oe]of this.ǃJNq)assert(typeof Oe!==_474&&null!==Oe,"saving invalid property value"),Oe instanceof ǃJ.ǃSR&&(Oe=Oe.toJSON()),ae[ye]=Oe;let de=this.ǃuL.ǃyg();ne&&ne.ǃIx&&(de=ne.ǃIx);let re={type:de,properties:ae};if("copy"!==ie&&(re.uid=this.ǃoW()),this.ǃtH().ǃIG()){let ye={};for(let Oe of this.ǃuL.ǃOOz())ye[Oe.ǃyg()]=Oe.ǃOOV(this);re.instanceVariables=ye}if(this.ǃtH().ǃIE()){let ye={};for(let Oe of this.ǃuL.ǃOOe())ye[Oe.ǃyg()]=Oe.ǃOON(this).ǃIh();re.behaviors=ye}let oe=this.ǃJNU.ǃOun();return oe&&(re.ownData=oe),re}ǃJiK(ne,ie){ne.hasOwnProperty("uid")&&this.ǃJiz(ne.uid);const ae=ne.properties,de=!!(ie&&ie.ǃOni);for(let[re,oe]of Object.entries(ae))Array.isArray(oe)&&(oe=new ǃJ.ǃSR,oe.ǃONI(ae[re])),this.ǃfA(re,oe);if(this.ǃtH().ǃIG()&&ne.instanceVariables){const re=ne.instanceVariables;for(let[oe,ye]of Object.entries(re)){const Oe=this.ǃuL.ǃJGr(oe);if(!Oe)if(de)continue;else throw new Error(`cannot find instance variable '${oe}'`);Oe.ǃOOK(this,ye)}}if(this.ǃtH().ǃIE()&&ne.behaviors){const re=ne.behaviors;for(const[oe,ye]of Object.entries(re)){const Oe=this.ǃuL.ǃJGI(oe);if(!Oe)if(de)continue;else throw new Error(`cannot find behavior type '${oe}'`);Oe.ǃOON(this).ǃIP(ye)}}}ǃIP(ne,ie){this.ǃJiK(ne,ie),this.ǃJio(ne)}ǃJio(ne){ne.hasOwnProperty("ownData")&&this.ǃJNU.ǃOuX(ne.ownData)}ǃJeT(ne){if(ǃJ.ǃk(ne,ǃJ.ǃpj.Element),"instance"!==ne.ǃOad()&&"global-instance"!==ne.ǃOad())throw new Error("unexpected tag name");ne.ǃOpR("uid")&&this.ǃJiz(ne.ǃOCa("uid"));let ie=ne.ǃOpO("properties");if(ie)for(let re of ie.children()){let oe=re.ǃOad(),ye=re.ǃKP();ǃOcw.ǃJeF(this,oe,ye)}let ae=ne.ǃOpO("instance-variables");if(ae)for(let re of ae.children()){let oe=this.ǃuL.ǃJGr(re.ǃOad());assert(oe,"cannot find instance variable by name"),oe.ǃJId(this,re.ǃKP())}let de=ne.ǃOpO("behavior-instances");if(de)for(let re of de.children("behavior-instance")){let oe=re.ǃOpg("type"),ye=this.ǃuL.ǃJGI(oe);if(!ye)throw new Error(`missing behavior type '${oe}'`);ye.ǃOON(this).ǃJeT(re)}}}}{const _475="normal",_476="no original size available",_477="plugin does not support blend modes";let ee=new ǃJ.Rect,te=ǃJ.ǃb(ǃmY);window.ǃKY=class ne extends ǃoD{constructor(ie,ae){super(ie),assert("world"===ie.ǃtH().ǃrJ(),"creating WorldInstance for wrong plugin type"),this.ǃJBe=ae,this.ǃXx=0,this.ǃXA=0,this.ǃtu=0,this.ǃt_=0,this.ǃOgs=0.5,this.ǃOHJ=0.5,this.ǃXv=0,this.ǃJie=[],this.ǃJir=new ǃJ.ǃfw,this.ǃJiI=new ǃJ.Rect,this.ǃJiN=ǃJ.ǃb(ǃmY),this.ǃJiG=!0,this.ǃJiE=!0,this.ǃJiT=!1,this.ǃOdT=new ǃJ.ǃSR(1,1,1,1),this.ǃJiD=new ǃJ.ǃSR(1,1,1,1),this.ǃJii=_475,this.ǃJia=!0,this.ǃOQo=-1,this.ǃJip=-1,this.ǃJiw=0,this.ǃJiY=!0,this.ǃOFV=!0,this.ǃJiQ()}ǃyY(){this.ǃJBe=null;for(let ie of this.ǃJie)ie.ǃyY();ǃJ.ǃXX(this.ǃJie),super.ǃyY()}ǃOCo(){return"world-instance"}ǃJiQ(){this.ǃ_w().ǃJij(this.ǃf$()),this.ǃSj().ǃJiF()}ǃJLb(){this.ǃJiQ(),super.ǃJLb()}ǃJLm(){this.ǃJiQ(),super.ǃJLm()}ǃDj(ie){ǃJ.ǃq$(ie,ǃkL),ie||(ie=this.ǃJBe);let ae=this.ǃuL.ǃOSz(ie,this);return ae.ǃyQ(),ae}ǃJEC(ie){ǃJ.ǃk(ie,window.ǃKY),this.ǃJNu(ie),this.ǃXx=ie.ǃXx,this.ǃXA=ie.ǃXA,this.ǃtu=ie.ǃtu,this.ǃt_=ie.ǃt_,this.ǃOgs=ie.ǃOgs,this.ǃOHJ=ie.ǃOHJ,this.ǃXv=ie.ǃXv,this.ǃOdT.set(ie.ǃOdT),this.ǃJiW(),this.ǃJiE=!0,this.ǃJiZ()}ǃYQ(){this.ǃng().ǃBZ()||(super.ǃYQ(),this.ǃJBe.ǃYQ(),app.ǃRB().ǃRM())}ǃsW(){return this.ǃOH_()&&!this.ǃJil()}ǃOH_(){return this.ǃuL.ǃtH().ǃsW()}ǃsZ(){return this.ǃOHm()&&!this.ǃJil()}ǃOHm(){return this.ǃuL.ǃtH().ǃsZ()}ǃOUk(){this.ǃJiE=!0,this.ǃJiG=!0,this.ǃJiM("boxchange")}ǃoG(){return this.ǃOFV}ǃoN(ie){ie===this.ǃOFV||(this.ǃOFV=!!ie,app.ǃRB().ǃkx(this.ǃ_w()).ǃEw())}ǃJiZ(){if(this.ǃJiE){let ie=this.ǃfI(),ae=this.ǃfG(),de=this.ǃOHO()*ie,re=this.ǃOHy()*ae;ee.set(0,0,ie,ae),ee.offset(-de,-re),this.ǃJir.ǃOHv(ee,this.ǃSV()),this.ǃJir.offset(this.ǃnK(),this.ǃne()),this.ǃJir.ǃONP(this.ǃJiI),this.ǃJiE=!1}}ǃfT(){return this.ǃJiZ(),this.ǃJir}ǃR_(){return this.ǃJiZ(),this.ǃJiI}ǃJix(){if(this.ǃJiG){let ie=0,ae=0,de=null,re=this.ǃO$g();re?(de=re.ǃDX(),this.ǃuL.ǃox()?(ie=-this.ǃOHO(),ae=-this.ǃOHy()):(ie=-re.ǃOHO(),ae=-re.ǃOHy())):(te.ǃHH(),de=te,ie=-this.ǃOHO(),ae=-this.ǃOHy()),this.ǃJiN.ǃJTz(de,ie,ae,this.ǃfI(),this.ǃfG(),this.ǃSV()),this.ǃJiN.ǃJTk(this.ǃnK(),this.ǃne()),this.ǃJiG=!1}}ǃ_F(){return this.ǃJix(),this.ǃJiN}ǃoF(){let ie=app.ǃRB().ǃOXP();return this.ǃSj().ǃqk()&&this.ǃ_w()!==ie}ǃJiA(){return this.ǃJBe}ǃSj(){return this.ǃJBe.ǃse()}ǃJih(ie){ǃJ.ǃk(ie,ǃkL),this.ǃJBe=ie}ǃOOM(ie){if(ǃJ.ǃk(ie,ǃkL),ie.ǃng()!==this.ǃng())throw new Error("cannot move to different project");if(ie.ǃog())throw new Error("cannot move to overriden layer");this.ǃJBe===ie||this.ǃJBe.ǃJiv(this,ie)}ǃ_w(){return this.ǃSj().ǃ_w()}ǃTk(){return app.ǃRB().ǃkx(this.ǃ_w())}ǃOQl(ie){ǃJ.ǃXq(ie),ie=Math.floor(ie),this.ǃOQo=ie}ǃoo(){return this.ǃSj().ǃJiP(),this.ǃOQo}ǃKh(){return this.ǃSj().ǃOOL()-this.ǃOQo-1}ǃJid(ie){ǃJ.ǃXq(ie),this.ǃJip=ie}ǃJis(){return this.ǃJip}ǃfZ(){return!!this.ǃJNU.ǃfZ()}ǃfl(){return this.ǃfZ()?this.ǃJNU.ǃfl():this.ǃfI()}ǃfx(){return this.ǃfZ()?this.ǃJNU.ǃfx():this.ǃfG()}ǃJaO(ie){ie.ǃX$(this.ǃR_())&&this.ǃJNU.ǃfj()}ǃOt_(){let ie=ǃJ.ǃb(ǃJaJ,this);return this.ǃJie.push(ie),ie}ǃOtm(ie){ǃJ.ǃk(ie,ǃJaJ);let ae=this.ǃJie.indexOf(ie);if(-1===ae)throw new Error("virtual position not enabled on this instance");this.ǃJie.splice(ae,1),ie.ǃyY(),this.ǃOUk(),this.ǃJiW()}ǃJil(){return 0ie.ǃJaS())}ǃJan(){return this.ǃJay(ie=>ie.ǃJaX())}ǃJaR(){return this.ǃJay(ie=>ie.ǃJag())}ǃJaH(){return this.ǃJay(ie=>ie.ǃJaU())}ǃJaC(){return this.ǃJay(ie=>ie.ǃJau())}ǃJa_(){return this.ǃJay(ie=>ie.ǃJam())}ǃJab(){return this.ǃJay(ie=>ie.ǃJac())}ǃJat(){return this.ǃJay(ie=>ie.ǃJa$())}ǃSm(){return!!(this.ǃJNU instanceof ǃJ.ǃnI)&&this.ǃJNU.ǃSm()}ǃOOy(ie){ǃJ.ǃXq(ie);this.ǃXx===ie||(this.ǃXx=ie,this.ǃOUk(),this.ǃYQ())}ǃOOJ(){return this.ǃXx}ǃnK(){return this.ǃJil()?this.ǃXx+this.ǃJaf():this.ǃXx}ǃOOS(ie){ǃJ.ǃXq(ie);this.ǃXA===ie||(this.ǃXA=ie,this.ǃOUk(),this.ǃYQ())}ǃOOf(){return this.ǃXA}ǃne(){return this.ǃJil()?this.ǃXA+this.ǃJan():this.ǃXA}ǃcY(ie){ǃJ.ǃXq(ie);this.ǃtu===ie||(this.ǃtu=ie,this.ǃOUk(),this.ǃYQ())}ǃOOX(){return this.ǃtu}ǃfI(){return this.ǃJil()?this.ǃtu+this.ǃJaR():this.ǃtu}ǃcQ(ie){ǃJ.ǃXq(ie);this.ǃt_===ie||(this.ǃt_=ie,this.ǃOUk(),this.ǃYQ())}ǃOOR(){return this.ǃt_}ǃfG(){return this.ǃJil()?this.ǃt_+this.ǃJaH():this.ǃt_}ǃRC(ie,ae){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae);this.ǃtu===ie&&this.ǃt_===ae||(this.ǃtu=ie,this.ǃt_=ae,this.ǃOUk(),this.ǃYQ())}ǃO$y(ie,ae){if(ǃJ.ǃXq(ie),ǃJ.ǃXq(ae),!this.ǃfZ())throw new Error(_476);this.ǃRC(this.ǃfl()*ie,this.ǃfx()*ae)}ǃOOU(ie){if(ǃJ.ǃXq(ie),!this.ǃfZ())throw new Error(_476);this.ǃcY(this.ǃfl()*ie)}ǃOOH(){if(!this.ǃfZ())throw new Error(_476);return this.ǃfI()/this.ǃfl()}ǃOOu(ie){if(ǃJ.ǃXq(ie),!this.ǃfZ())throw new Error(_476);this.ǃcQ(this.ǃfx()*ie)}ǃOOC(){if(!this.ǃfZ())throw new Error(_476);return this.ǃfG()/this.ǃfx()}ǃO$J(ie,ae){ǃJ.ǃXq(ie),ǃJ.ǃXq(ae);this.ǃOgs===ie&&this.ǃOHJ===ae||(this.ǃOgs=ie,this.ǃOHJ=ae,this.ǃOUk(),this.ǃYQ())}ǃSu(ie){ǃJ.ǃXq(ie);this.ǃOgs===ie||(this.ǃOgs=ie,this.ǃOUk(),this.ǃYQ())}ǃOHO(){return this.ǃJil()?this.ǃOgs+this.ǃJaC():this.ǃOgs}ǃJaq(){return this.ǃOgs}ǃS_(ie){ǃJ.ǃXq(ie);this.ǃOHJ===ie||(this.ǃOHJ=ie,this.ǃOUk(),this.ǃYQ())}ǃOHy(){return this.ǃJil()?this.ǃOHJ+this.ǃJa_():this.ǃOHJ}ǃJaM(){return this.ǃOHJ}ǃOOt(ie){if(!this.ǃOH_())throw new Error("object not rotatable");ǃJ.ǃXq(ie),ie=ǃJ.ǃOgP(ie);this.ǃXv===ie||(this.ǃXv=ie,this.ǃOUk(),this.ǃYQ())}ǃOOc(){return this.ǃXv}ǃSV(){return this.ǃJil()?this.ǃXv+this.ǃJab():this.ǃXv}ǃsk(ie){ǃJ.ǃXq(ie),ie=ǃJ.ǃRf(ie,0,1);this.ǃOdT.a===ie||(this.ǃOdT.a=ie,this.ǃJiW(),this.ǃYQ())}ǃOO$(){return this.ǃOdT.a}ǃny(){return this.ǃJil()?ǃJ.ǃRf(this.ǃOdT.a+this.ǃJat(),0,1):this.ǃOdT.a}ǃJiW(){this.ǃJil()?(this.ǃJiD.ǃ_d(this.ǃOdT),this.ǃJiD.a=this.ǃny()):this.ǃJiD.set(this.ǃOdT),this.ǃJiD.ǃSX()}ǃfe(){return this.ǃJiD}ǃsI(ie){if(ǃJ.ǃJO(ie),!this.ǃtH().ǃIT())throw new Error(_477);if(!ǃHD.ǃJep.has(ie))throw new Error("invalid blend mode");this.ǃJii===ie||(this.ǃJii=ie,this.ǃJia=this.ǃJii===_475,this.ǃYQ())}ǃsr(){if(!this.ǃtH().ǃIT())throw new Error(_477);return this.ǃJii}ǃJaB(){return this.ǃJia}ǃfV(ie){if(ǃJ.ǃk(ie,ǃJ.ǃRN.ǃ$X),this.ǃJaB()||!this.ǃng().ǃOfK())ie.ǃfD();else{let ae=ie.ǃOXL(this.ǃsr());ie.ǃOXz(ae.ǃOXk,ae.ǃOXV)}}ǃJGg(){return this.ǃf$().ǃJGg()}*ǃJaL(){for(let ie of this.ǃuL.ǃJKL())yield ie.ǃOOw(this)}*ǃJaz(){for(let ie of this.ǃuL.ǃdp())yield ie.ǃOOw(this)}ǃfz(ie,ae){ǃJ.ǃFt(ie),ǃJ.ǃFt(ae),this.ǃOFV&&this.ǃJNU.ǃfz(ie,ae),this.ǃJak()&&ae.ǃSe.ǃEw()}ǃOCZ(ie,ae){ǃJ.ǃFt(ie),ǃJ.ǃFt(ae),this.ǃOFV&&this.ǃJNU.ǃOCZ(ie,ae)}ǃSx(ie){ie?this.ǃJiw++:0ye.ǃJot()));let re=[this.ǃOOJ(),this.ǃOOf(),0,this.ǃOOX(),this.ǃOOR(),0,this.ǃOOc(),this.ǃOO$(),this.ǃJaq(),this.ǃJaM(),ae,0,de];this.ǃtH().ǃJGF()&&re.push(this.ǃJNU.ǃDJ().ǃJot());let oe=super.ǃJot(ie);return oe[0]=re,oe}ǃIh(ie){ǃJ.ǃBA(ie);let ae=super.ǃIh(ie),de={x:this.ǃXx,y:this.ǃXA,width:this.ǃtu,height:this.ǃt_,originX:this.ǃOgs,originY:this.ǃOHJ,color:this.ǃOdT.toJSON()};if(this.ǃOH_()&&(de.angle=this.ǃXv),this.ǃtH().ǃIT()){const re=this.ǃsr();re!==_475&&(de.blendMode=re);let oe={},ye=!1;for(let Oe of this.ǃuL.ǃdp())oe[Oe.ǃyg()]=Oe.ǃOOw(this).ǃIh(),ye=!0;ye&&(ae.effects=oe)}return ae.world=de,ae}ǃIP(ie,ae){this.ǃJiK(ie,ae);const de=!!(ae&&ae.ǃOni),re=ie.world;if(this.ǃOOy(re.x),this.ǃOOS(re.y),this.ǃRC(re.width,re.height),this.ǃSu(re.originX),this.ǃS_(re.originY),this.ǃOH_()&&this.ǃOOt(re.angle),this.ǃtH().ǃIT()&&(this.ǃsI(re.blendMode||_475),ie.effects)){const oe=ie.effects;for(const[ye,Oe]of Object.entries(oe)){const le=this.ǃuL.ǃJGU(ye);if(!le)if(de)continue;else throw new Error(`cannot find effect type '${ye}'`);le.ǃOOw(this).ǃIP(Oe)}}this.ǃOdT.ǃONI(re.color),this.ǃJiW(),this.ǃJio(ie)}ǃJeT(ie){super.ǃJeT(ie);let ae=ie.ǃOCp("world");this.ǃOOy(ae.ǃOpf("x")),this.ǃOOS(ae.ǃOpf("y")),this.ǃcY(ae.ǃOpf("width")),this.ǃcQ(ae.ǃOpf("height")),this.ǃSu(ae.ǃOpS("hotspotX",0.5)),this.ǃS_(ae.ǃOpS("hotspotY",0.5)),this.ǃOH_()&&ae.ǃOpC("angle")&&this.ǃOOt(ae.ǃOpf("angle")),this.ǃtH().ǃIT()&&ie.ǃOpC("blend-mode")&&this.ǃsI(ǃOcw.ǃJew(ie.ǃOpJ("blend-mode"))),this.ǃtH().ǃJGF()&&ie.ǃOpC("tilemap-data")&&this.ǃJNU.ǃOug(ie.ǃOCp("tilemap-data")),this.ǃsk(ae.ǃOpS("opacity",1));let de=ie.ǃOpO("effect-instances");if(de)for(let re of de.children("effect-instance")){let oe=re.ǃOpg("type"),ye=this.ǃuL.ǃJGU(oe);if(!ye)throw new Error(`missing effect type name '${oe}'`);ye.ǃOOw(this).ǃJeT(re)}}static ǃob(ie,ae){let de=ie.ǃSj().ǃbh(),re=ae.ǃSj().ǃbh();if(de>re)return 1;return dethis.ǃJaQ(),this.ǃJaj=_479}ǃyY(){for(let Oe of this.ǃOCj())Oe.ǃyY();-1!==this.ǃJaw&&clearTimeout(this.ǃJaw),ǃJ.ǃDl(this.ǃJaD),this.ǃJaD=null,this.ǃJai=null,this.ǃJaY=null,this.ǃuL=null,super.ǃyY()}ǃHH(Oe,le){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),this.ǃJaF(),this.ǃtu=Math.floor(Oe),this.ǃt_=Math.floor(le),this.ǃJHo=this.ǃtu,this.ǃJaT=this.ǃt_,ǃJ.ǃDl(this.ǃJaD),this.ǃJaD=Array(this.ǃtu);for(let Je=0;Jethis.ǃtu&&(this.ǃtu=0)),this.ǃt_!==le&&(Je?this.ǃJas(le):this.ǃJpO(le-this.ǃt_),this.ǃt_=le,0>this.ǃt_&&(this.ǃt_=0))}ǃOuS(Oe,le,Je,ue,pe,he,ge,me){if(ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),ǃJ.ǃaB(Je),Je===de)return!1;if(ue=!!ue,pe=!!pe,he=!!he,ge=!!ge,me=!!me,Oe>=this.ǃJHo)return!1;if(le>=this.ǃJaT)return!1;let ve=this.ǃJaD[Oe][le];return(!ǃJ.ǃLR(Je)||0>Je)&&ve?(me&&ǃJ.ǃLR(Je)?ve.ǃJpJ(Je):ve.ǃHH(),ge||this.ǃJpy(),!0):(ǃJ.ǃLR(Je)&&0<=Je&&this.ǃuL&&!this.ǃJai.has(Je)&&this.ǃJai.set(Je,ǃJ.ǃb(ǃmY)),!ve&&ǃJ.ǃLR(Je)&&0<=Je||!ve&&me?(this.ǃJaD[Oe][le]=ǃJ.ǃb(ǃJ.ǃDw,this,Oe,le,Je,ue,pe,he),ge||this.ǃJpy(),!0):(ve&&ǃJ.ǃLR(Je)&&0<=Je||ve&&me)&&ve.ǃJpf(Je,ue,pe,he)&&(ve.Set(Je,ue,pe,he),ge||this.ǃJpy(),!0))}ǃpn(Oe,le){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le);let Je=this.ǃJaD[Oe][le];if(Je)return Je}ǃEq(Oe,le){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le);let Je=this.ǃpn(Oe,le);if(Je)return Je.ǃbh()}ǃJpS(Oe){ǃJ.ǃaM(Oe);let le=!1;for(let Je=0,ue;Je=this.ǃJHo){pe?me.push(ue?de:-1):me.push(null);continue}if(Ue>=this.ǃJaT){pe?me.push(ue?de:-1):me.push(null);continue}let Ee=this.ǃpn(be,Ue);Ee?pe?me.push(Ee.ǃbh()):me.push(Ee.ǃDj()):pe?me.push(ue?de:-1):me.push(new ǃJ.ǃDw(this,be,Ue,ue?de:-1,!1,!1,!1))}he.push(me)}return he}ǃak(Oe,le,Je,ue,pe,he,ge){ǃJ.ǃXq(Oe),ǃJ.ǃXq(le),ǃJ.ǃaM(Je),ǃJ.ǃaB(ge),ue=!!ue,pe=!!pe,he=!!he;let me=this.ǃiO(Je);for(let ve=0,be;ve=this.ǃJHo)&&!(Rn>=this.ǃJaT)){let Cn=this.ǃpn(Nn,Rn);if(!Cn&&ǃJ.ǃLR(Ee)&&0<=Ee)return!0;if(me){let Dn=be[Ue];if(Cn&&Cn.ǃJpf(Ee,Dn.ǃTK(),Dn.ǃTo(),Dn.ǃTe()))return!0}else if(Cn&&Cn.ǃJpf(Ee,ue,pe,he))return!0}}}}return!1}ǃiO(Oe){if(ǃJ.ǃDW(Oe),!Oe)return!1;for(let le=0,Je;leOe===Je.ǃbh();for(let Je of this.ǃOCj(le))yield Je}*ǃOCj(Oe){switch(ǃJ.ǃUg(Oe),this.ǃJaj){case _479:for(let le=0,Je;le>>=0,Je.push(ve)}else Je.push(0);return Oe?Je:Je.join(",")}ǃOCw(Oe,le=_478){if(ǃJ.ǃKw(Oe,Array,Uint32Array),ǃJ.ǃJO(le),!re.includes(le))throw new Error("invalid tilemap data source");for(let Je=0,ue=Oe.length;Je=this.ǃJaD.length?this.ǃJad(Oe-this.ǃJaD.length):this.ǃJaD.splice(Oe),this.ǃtu=Oe,this.ǃJHo=Oe}ǃJas(Oe){if(ǃJ.ǃXq(Oe),assert(0=this.ǃJaD[0].length)this.ǃJpO(Oe-this.ǃJaD[0].length);else for(let le=0;le=Oe)){Oe=Math.floor(Oe);for(let le=0;le=Oe)){for(let le=0;leparseInt(ve,10)+1);for(let ve=0,be=me.length;veoe)throw new Error("invalid layout width");this.ǃtu===oe||(this.ǃtu=oe,this.ǃYQ())}ǃfG(){return this.ǃt_}ǃcQ(oe){if(ǃJ.ǃXq(oe),oe=Math.floor(oe),2>oe)throw new Error("invalid layout height");this.ǃt_===oe||(this.ǃt_=oe,this.ǃYQ())}ǃdi(){return this.ǃJpu}ǃda(oe){oe=!!oe;this.ǃJpu===oe||(this.ǃJpu=oe,this.ǃYQ())}ǃNC(oe){if(ǃJ.ǃq$(oe,ǃbY),oe&&oe.ǃng()!==this.ǃng())throw new Error("event sheet from wrong project");this.ǃwg===oe||(this.ǃwg=oe||null,this.ǃYQ())}ǃcX(){return this.ǃwg&&this.ǃwg.ǃXb()?this.ǃwg:null}ǃVM(){return this.ǃJpm}ǃkp(){return this.ǃJpm.ǃJfr()}*ǃKl(){for(let oe of this.ǃkp())oe.ǃJpo()&&(yield oe)}ǃOOB(){return this.ǃJpm.ǃJLK()}*ǃKT(){for(let oe of this.ǃOOB())oe.ǃJpo()&&(yield oe)}ǃJpL(){return this.ǃJpm.ǃJLo()}ǃke(){let oe=0;for(let ye of this.ǃkp())++oe;return oe}ǃJB_(){return ǃJ.ǃUe(this.ǃOOB())}ǃOOq(oe){ǃJ.ǃJO(oe),oe=oe.toLowerCase();for(let ye of this.ǃkp())if(ǃJ.ǃO$X(oe,ye.ǃyg()))return ye;return null}ǃJpe(oe){return ǃJ.ǃJO(oe),!!this.ǃOOq(oe)}ǃJBo(oe){for(let ye of this.ǃkp())if(oe===ye)return!0;return!1}ǃJpr(){let oe=0,ye="",Oe=lang("model.project.new-layer-name");do ye=Oe.replace("{0}",oe),++oe;while(this.ǃJpe(ye));return ye}ǃVR(){if(app.ǃJS()&&this.ǃke()>=app.ǃVX())throw new Error(_482);let oe=ǃJ.ǃb(ǃkL,this);return this.ǃJpm.ǃCK(oe),this.ǃYQ(),oe}ǃVg(){if(app.ǃJS()&&this.ǃke()>=app.ǃVX())throw new Error(_482);let oe=ǃJ.ǃb(ǃkL,this);return this.ǃJpm.ǃJLM(oe),this.ǃYQ(),oe}ǃV$(oe,ye){ǃJ.ǃXq(oe),ǃJ.ǃXq(ye);for(let Oe of this.ǃKT()){let le=Oe.ǃV$(oe,ye);if(le)return le}return null}ǃoq(oe){ǃJ.ǃk(oe,ǃJ.Rect);for(let ye of this.ǃKT()){let Oe=ye.ǃoq(oe);if(Oe)return Oe}return null}ǃORh(oe,ye){ǃJ.ǃXq(oe),ǃJ.ǃXq(ye);let Oe=[];for(let le of this.ǃKl())ǃJ.ǃXn(Oe,le.ǃORh(oe,ye));return Oe}ǃoK(oe){ǃJ.ǃk(oe,ǃJ.Rect);let ye=[];for(let Oe of this.ǃKl())ǃJ.ǃXn(ye,Oe.ǃoK(oe));return ye}*ǃOSH(){for(const oe of this.ǃkp())yield*oe.ǃur()}ǃJpI(oe){if(ǃJ.ǃk(oe,ǃoa),oe instanceof ǃej)return this.ǃJEz(oe);if(oe instanceof ǃeW)return this.ǃJpN(oe);throw new Error(_483)}*ǃJEz(oe){ǃJ.ǃk(oe,ǃej);for(const ye of this.ǃOSH())ye.ǃf$()===oe&&(yield ye)}*ǃJpN(oe){ǃJ.ǃk(oe,ǃeW);for(const ye of this.ǃOSH())oe.ǃPn(ye.ǃf$())&&(yield ye)}*ǃJpG(oe){ǃJ.ǃk(oe,Plugin);for(const ye of this.ǃOSH())ye.ǃtH()===oe&&(yield ye)}*ǃOnC(){for(const oe of this.ǃKl())yield*oe.ǃur()}ǃop(oe){if(ǃJ.ǃk(oe,ǃoa),oe instanceof ǃej)return this.ǃJpE(oe);if(oe instanceof ǃeW)return this.ǃJpT(oe);throw new Error(_483)}*ǃJpE(oe){ǃJ.ǃk(oe,ǃej);for(const ye of this.ǃOnC())ye.ǃf$()===oe&&(yield ye)}*ǃJpT(oe){ǃJ.ǃk(oe,ǃeW);for(const ye of this.ǃOnC())oe.ǃPn(ye.ǃf$())&&(yield ye)}*ǃOnt(oe){ǃJ.ǃk(oe,Plugin);for(const ye of this.ǃOnC())ye.ǃtH()===oe&&(yield ye)}ǃJpD(){return new Set([...this.ǃOSH()].map(oe=>oe.ǃf$()))}ǃJpi(oe){ǃJ.ǃk(oe,ǃej);const ye=oe.ǃJEU();return ye.ǃJiB(this),this.ǃng().ǃBZ()||ye.ǃyQ(),this.ǃJpt.push(ye),this.ǃYQ(),ye}*ǃJpa(){for(const oe of this.ǃJpt)oe.ǃXb()&&(yield oe)}ǃJpp(oe){ǃJ.ǃk(oe,ǃej);let ye=this.ǃJp$.get(oe);if("undefined"!=typeof ye)return ye;ye=[];for(let Oe of this.ǃOSH())Oe.ǃf$()===oe&&(Oe.ǃJid(ye.length),ye.push(Oe));return this.ǃJp$.set(oe,ye),ye}ǃJij(oe){ǃJ.ǃq$(oe,ǃej),oe?this.ǃJp$.delete(oe):this.ǃJp$.clear()}ǃOgy(oe){return ǃJ.ǃk(oe,ǃKY),this.ǃJpp(oe.ǃf$()),oe.ǃJis()}ǃOgf(oe,ye){ǃJ.ǃk(oe,ǃej),ǃJ.ǃXq(ye),ye=Math.floor(ye);let Oe=this.ǃJpp(oe);return 0>ye||ye>=Oe.length?null:Oe[ye]}ǃJBV(oe){ǃJ.ǃXq(oe);for(let ye of this.ǃOSH())if(ye.ǃoW()===oe)return ye}ǃso(){return this.ǃng().ǃJKG()||this.ǃJGg()}ǃOX_(){return this.ǃJpM}ǃfz(oe,ye){ǃJ.ǃFt(oe),ǃJ.ǃFt(ye);let Oe=ye.ǃSe,le=this.ǃfI(),Je=this.ǃfG(),ue=this.ǃdP(),pe=this.ǃds(),he=this.ǃUl.ǃdO(),ge=this.ǃUl.ǃdy();oe.ǃbi(Oe.ǃPY("--layoutview-margin-color")),oe.ǃRk(),this.ǃJpM=null;let me=null,ve=this.ǃso();ve&&(this.ǃJpM=app.ǃRB().ǃOXO("linear"===this.ǃng().ǃ_S()),me=oe.ǃOX_(),oe.ǃOfV(this.ǃJpM),oe.ǃOXC(0,0,0,0));for(let Ue of this.ǃkp())Ue.ǃkF()&&Ue.ǃfz(oe,ye);if(ve){let Ue=[...this.ǃJKL()];if(ye.ǃOyS||(Ue.length=0),this.ǃJpw(Ue)){if(oe.ǃOfV(me),1===Ue.length){let Ee=Ue[0],Le=Ee.ǃdw();oe.ǃOXS(Le.ǃOXn(oe)),de.set(0,0,Oe.ǃOny()/oe.ǃfI(),Oe.ǃOnf()/oe.ǃfG()),ae.set(0,0,this.ǃfI(),this.ǃfG()),oe.ǃOXM(null,ie,ae,de,ae,1/ae.width(),1/ae.height(),Oe.ǃSo(),0,ye.ǃOyf,Ee.ǃOXB(null))}else oe.ǃSc();oe.ǃfD(),oe.ǃRk(),oe.ǃOXm(this.ǃJpM),oe.ǃOXb(this.ǃJpM),app.ǃRB().ǃOXJ(this.ǃJpM)}else ǃJ.ǃOXy(oe,ye,this,null,me,Ue)}Oe.ǃOfg(oe),oe.ǃfD(),oe.ǃSc();let be=app.ǃRB().ǃOXv();if(oe.ǃfK(be),oe.ǃfo(Oe.ǃPY(_484)),oe.ǃJ$w(he,ge,0,ge,0,he/ee),oe.ǃJ$w(he,ge,he,0,0,ge/ee),oe.ǃfi(),oe.ǃfK(null),oe.ǃfo(Oe.ǃPY("--layoutview-border-color")),oe.ǃOgN(0,0,le,Je),ue>=te&&pe>=te){oe.ǃfo(Oe.ǃPY(_484));let Ue=-ue+ne,Ee=-pe+ne,Le=le+ue-ne,we=Je+pe-ne;oe.ǃSE(Ue,Ee,Ue+te,Ee),oe.ǃSE(Ue,Ee,Ue,Ee+te),oe.ǃSE(Le,Ee,Le-te,Ee),oe.ǃSE(Le,Ee,Le,Ee+te),oe.ǃSE(Le,we,Le-te,we),oe.ǃSE(Le,we,Le,we-te),oe.ǃSE(Ue,we,Ue+te,we),oe.ǃSE(Ue,we,Ue,we-te)}this.ǃJpM=null}ǃJpw(oe){if(0===oe.length)return!0;let ye=oe[0],Oe=ye.ǃdw();return 1===oe.length&&!Oe.ǃOnP()}ǃOfe(oe,ye){oe.ǃfi(),oe.ǃfK(null),oe.ǃfo(new ǃJ.ǃSR(1,0,0,1));for(let Oe of this.ǃkp())Oe.ǃkF()&&Oe.ǃOfe(oe,ye)}ǃN_(){let oe=this.ǃIh({mode:"copy",ǃIl:!1}),ye=ǃJ.ǃb(re,this.ǃng());return ye.ǃIP(oe),ye.ǃJGm(oe),ye.ǃJpY(oe.layers),ye}ǃJot(oe){ǃJ.ǃk(oe,ǃOmT);let ye=[...this.ǃkp()].map(ue=>ue.ǃJot(oe)),Oe=this.ǃcX(),le=[...this.ǃJpa()].map(ue=>ue.ǃJot(oe)),Je=[...this.ǃJKL()].map(ue=>ue.ǃJot(!0));return[this.ǃyg(),this.ǃfI(),this.ǃfG(),this.ǃdi(),Oe?Oe.ǃyg():null,this.ǃJLH(),ye,le,Je]}static ǃJpQ(oe,ye,Oe){ǃJ.ǃk(Oe,ǃJ.ǃJLO);const le=`layouts\\${ye.toLowerCase()}.uistate.json`,Je=ǃJ.ǃb(re,oe);return Oe.ǃOpo(`layouts\\${ye.toLowerCase()}.json`).then(ue=>ǃJ.ǃgi(()=>{Je.ǃIP(ue),Je.ǃJGm(ue),Je.ǃJpY(ue.layers),Je.ǃJpj(ue["nonworld-instances"])})).then(()=>Oe.ǃJLJ(le)).then(ue=>{return ue?Oe.ǃOpo(le).then(pe=>Je.ǃNF(pe)).then(()=>Je):Je})}ǃJor(){return{width:this.ǃtu,height:this.ǃt_,unboundedScrolling:this.ǃJpu,eventSheet:this.ǃcX()?this.ǃcX().ǃyg():null}}ǃIh(oe){ǃJ.ǃBA(oe);let ye=oe&&oe.mode||"",Oe=this.ǃyg();if("copy"===ye)do Oe=ǃJ.ǃOGA(Oe);while(this.ǃng().ǃJkP(Oe));let le={name:Oe,layers:[...this.ǃkp()].map(Je=>Je.ǃIh(oe))};return"copy"!==ye&&(le.sid=this.ǃJLH(),le["nonworld-instances"]=[...this.ǃJpa()].map(Je=>Je.ǃIh(oe))),this.ǃJG_(le),Object.assign(le,this.ǃJor())}ǃJow(oe){this.ǃcY(oe.width),this.ǃcQ(oe.height),this.ǃda(oe.unboundedScrolling),this.ǃJp_&&this.ǃNC(oe.eventSheet?this.ǃng().ǃMj(oe.eventSheet):null)}ǃIP(oe){this.ǃyo(oe.name),oe.hasOwnProperty("sid")&&this.ǃJLC(oe.sid),this.ǃJpq=oe.eventSheet,this.ǃJow(oe)}ǃJpY(oe){for(let ye of oe){let Oe=ǃJ.ǃb(ǃkL,this);Oe.ǃJpF(ye),this.ǃJpm.ǃCK(Oe)}}ǃJpj(oe){if(oe)for(let ye of oe){let Oe=ye.type,le=this.ǃUl.ǃOnD(Oe);if(!le)throw new Error(`cannot find object type named '${Oe}'`);let Je=this.ǃJpi(le);Je.ǃIP(ye)}}ǃBs(oe,ye,Oe){ǃJ.ǃJO(oe),this.ǃJpB.ǃBs(oe,ye,Oe)}ǃLf(oe,ye){return ǃJ.ǃJO(oe),this.ǃJpB.ǃLf(oe,ye)}ǃMl(oe){oe=!!oe,this.ǃJpB.ǃWO(oe)}ǃNW(oe){oe=!!oe,this.ǃJpB.ǃln(oe)}ǃJoY(){return this.ǃJpB.ǃIh()}ǃJoQ(oe){oe&&(this.ǃdd(oe.marginWidth),this.ǃsO(oe.marginHeight),this.ǃsU(oe.showCollisionPolygons),this.ǃsu(oe.showTranslucentInactiveLayers))}ǃNa(){return this.ǃJpB.ǃIh()}ǃNF(oe){this.ǃJpB.ǃIP(oe)}ǃwR(){return this.ǃJpB.ǃwR()}ǃdP(){return this.ǃJpB.ǃdP()}ǃdd(oe){this.ǃJpB.ǃdd(oe)}ǃds(){return this.ǃJpB.ǃds()}ǃsO(oe){this.ǃJpB.ǃsO(oe)}ǃsH(){return this.ǃJpB.ǃsH()}ǃsU(oe){this.ǃJpB.ǃsU(oe)}ǃsC(){return this.ǃJpB.ǃsC()}ǃsu(oe){this.ǃJpB.ǃsu(oe)}static ǃJpW(oe,ye,Oe){ǃJ.ǃk(oe,ǃHD),ǃJ.ǃFt(ye),ǃJ.ǃFt(Oe);let le=`Layouts\\${ye.ǃKP()}`,Je=Oe.ǃOpz(le);if(!Je)throw new Error(`layout XML file '${le}' is missing`);return Oe.ǃOpV(Je).then(ǃJ.ǃpj.Document.ǃpQ).then(ue=>{let pe=ǃJ.ǃb(re,oe);return pe.ǃJpZ(ue),pe})}ǃJpZ(oe){ǃJ.ǃk(oe,ǃJ.ǃpj.Document);let ye=oe.ǃpF();if("c2layout"!==ye.ǃOad())throw new Error("expected c2layout tag");this.ǃyo(ye.ǃKP("name")),ye.ǃOpC("sid")&&this.ǃJLC(ye.ǃOpf("sid"));let Oe=ye.ǃOCp("size");this.ǃcY(Oe.ǃOpJ("width")),this.ǃcQ(Oe.ǃOpJ("height"));let le=ye.ǃOCp("margins");this.ǃdd(le.ǃOpJ("horizontal")),this.ǃsO(le.ǃOpJ("vertical")),this.ǃda(ye.ǃOpX("unbounded-scrolling",!1)),ye.ǃOpC("event-sheet")&&(this.ǃJpq=ye.ǃKP("event-sheet"));let Je=ye.ǃOCp("layers");for(let pe of Je.children("layer")){let he=ǃJ.ǃb(ǃkL,this);he.ǃJpZ(pe),this.ǃJpm.ǃCK(he)}ye.ǃOpC("effects")&&this.ǃJGb(ye,!0);let ue=ye.ǃOpO("nonworld-instances");if(ue)for(let pe of ue.children("instance")){let he=pe.ǃOpg("type"),ge=this.ǃUl.ǃOnD(he);if(!ge)throw new Error(`cannot find object type named '${he}'`);let me=this.ǃJpi(ge);me.ǃJeT(pe)}}}}{const _485="layoutfolderadd";window.ǃew=class ee extends ǃel{constructor(te,ne){super(te,ne,ǃJs),this.ǃex()&&(this.ǃOYj=lang("ui.bars.project.items.layouts"))}ǃCK(te){if(ǃJ.ǃk(te,ǃJs),te.ǃJIZ)throw new Error("layout already belongs to folder");if(this.ǃUl.ǃJkP(te.ǃyg()))throw new Error(`layout name '${te.ǃyg()}' already used`);te.ǃJIZ=this,super.ǃCK(te),app.ǃJBk(te,"layoutadd"),te.ǃYQ()}ǃIN(){let te=ǃJ.ǃb(ee,this.ǃUl,this);return this.ǃJLc.push(te),app.ǃJpl(te,_485),this.ǃYQ(),te}ǃJLb(){app.ǃJpl(this,_485),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJpl(this,"layoutfolderremove")}ǃJLD(te){return te.ǃyg()}ǃJeH(te,ne){ǃJ.ǃFt(te),ǃJ.ǃk(ne,ǃJ.ǃJLO),this.ǃex()||this.ǃyo(te.name);let ie=[];for(let de of te.subfolders){let re=this.ǃIN();ie.push(re.ǃJeH(de,ne))}let ae=[];for(let de of te.items)ae.push(ǃJs.ǃJpQ(this.ǃng(),de,ne));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(let re of de)this.ǃCK(re);return this})}ǃJeI(te,ne){ǃJ.ǃk(te,ǃJ.ǃpj.Element),ǃJ.ǃk(ne,ǃJ.ǃOcO),this.ǃex()||this.ǃyo(te.ǃOpg("name"));let ie=[];for(let de of te.children("layout-folder")){let re=this.ǃIN();ie.push(re.ǃJeI(de,ne))}let ae=[];for(let de of te.children("layout"))ae.push(ǃJs.ǃJpW(this.ǃng(),de,ne));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(let re of de)this.ǃCK(re);return this})}}}{const _486="global",_487="reverse",_488="forward",_489="unexpected argument",_490="instance from different layer",_491="cannot move to overriden layer",_492="instance from different global layer",_493="wrong arguments, second and third arguments must be specified",ee=0.25,te=["self",_486],ne=[_488,_487];let ie=new ǃJ.Rect,ae=new ǃJ.Rect;window.ǃkL=class de extends ǃOXf{constructor(re){super(re.ǃng()),ǃJ.ǃk(re,ǃJs),this.ǃOJD=re,this.ǃJIZ=null,this.ǃOYj=this.ǃOJD.ǃJpr(),this.ǃJNX=[],this.ǃJJI={ǃJpx:!0,color:new ǃJ.ǃSR(1,1,1,1),ǃJpA:new ǃJ.ǃSR(1,1,1,1),backgroundColor:new ǃJ.ǃSR(1,1,1,1),ǃJph:!0,ǃJpv:1,ǃJpP:1,ǃJpd:1,ǃJps:!1,ǃJwO:!1,ǃJwJ:"normal"},this.ǃJwy=new ǃJ.Rect,this.ǃJwf=new ǃJ.Rect,this.ǃJpM=null,this.ǃOuH=-1,this.ǃJwS=!1,this.ǃJwn=0,this.ǃOJD.ǃJpk(),this.ǃJwX=ǃJ.ǃb(ǃOJo,this),this.ǃJwR=null}ǃyY(){this.ǃJwX.ǃyY(),this.ǃJwX=null}ǃOCo(){return"layer"}ǃrG(){if(!this.ǃJIZ)throw new Error("layer not yet added to folder");return this.ǃJIZ}ǃJLG(re){ǃJ.ǃk(re,ǃJpb),this.ǃJIZ=re,this.ǃOJD.ǃJpk()}ǃ_w(){return this.ǃOJD}ǃYQ(){this.ǃOJD.ǃYQ()}ǃJiF(){this.ǃJwS=!1}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃJLb(){this.ǃOJD.ǃJpk(),app.ǃJBm(this,"layeradd"),this.ǃYQ()}ǃJLm(){this.ǃYQ(),this.ǃOJD.ǃJpk(),app.ǃJBm(this,"layerremove")}ǃcN(){}ǃbh(){return this.ǃOJD.ǃJpV(),this.ǃOuH}ǃKx(){return this.ǃOJD.ǃJpV(),this.ǃOJD.ǃke()-1-this.ǃOuH}ǃJpK(re){ǃJ.ǃXq(re),this.ǃOuH=re}ǃJpo(){return!this.ǃkw()&&this.ǃkF()}ǃog(){return!!this.ǃJwR&&this.ǃJwR.ǃqk()&&ǃJ.ǃO$X(this.ǃJwR.ǃyg(),this.ǃyg())}ǃse(){return this.ǃog()?this.ǃJwR:this}ǃJea(re){ǃJ.ǃk(re,de),this.ǃJwR=re}ǃJei(){this.ǃJwR=null}ǃOOr(){return this.ǃog()?this.ǃJwR.ǃOOr():this.ǃJJI}ǃyg(){return this.ǃOYj}ǃyo(re){if(ǃJ.ǃJO(re),re=ǃJ.ǃOrV(re),this.ǃOYj!==re){if(!ǃJ.ǃOrz(re))throw new Error("invalid name");if(!ǃJ.ǃO$X(this.ǃOYj,re)&&this.ǃ_w().ǃJpe(re))throw new Error(`layer name '${re}' already used`);this.ǃOYj=re,this.ǃYQ(),this.ǃng().ǃJBw(),app.ǃJBm(this,"layernamechange"),app.ǃJLq(this,"projectobjectnamechange")}}ǃVy(re,oe){return ǃJ.ǃJO(re),ǃJ.ǃLA(oe),ǃJ.ǃS.ǃT("model.layout.layer.errors"),re=ǃJ.ǃOrV(re),ǃJ.ǃOrz(re)?!ǃJ.ǃO$X(re,this.ǃyg())&&this.ǃ_w().ǃJpe(re)?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(oe,"warning",lang(".name-used.title"),ǃra(".name-used.message",re),{align:"bottom"}),void ǃJ.ǃS.ǃOu()):void(this.ǃyo(re),ǃJ.ǃS.ǃOu()):(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(oe,"warning",lang(".name-invalid.title"),lang(".name-invalid.message"),{align:"bottom"}),void ǃJ.ǃS.ǃOu())}ǃsm(re){re=!!re;this.ǃOOr().ǃJpx===re||(this.ǃOOr().ǃJpx=re,this.ǃYQ())}ǃs_(){return this.ǃOOr().ǃJpx}ǃxb(re){ǃJ.ǃk(re,ǃJ.ǃSR),this.ǃJwg(re.r,re.ǃONo,re.b)}ǃJwg(re,oe,ye){ǃJ.ǃXq(re),ǃJ.ǃXq(oe),ǃJ.ǃXq(ye),re=ǃJ.ǃRf(re,0,1),oe=ǃJ.ǃRf(oe,0,1),ye=ǃJ.ǃRf(ye,0,1);this.ǃOOr().backgroundColor.ǃONm(re,oe,ye)||(this.ǃOOr().backgroundColor.ǃONC(re,oe,ye),this.ǃYQ())}ǃPT(){return new ǃJ.ǃSR(this.ǃOOr().backgroundColor)}ǃJwH(){return this.ǃOOr().backgroundColor.r}ǃJwU(){return this.ǃOOr().backgroundColor.ǃONo}ǃJwC(){return this.ǃOOr().backgroundColor.b}ǃsk(re){ǃJ.ǃXq(re),re=ǃJ.ǃRf(re,0,1);this.ǃOOr().color.a===re||(this.ǃOOr().color.a=re,this.ǃJiW(),this.ǃYQ())}ǃny(){return this.ǃOOr().color.a}ǃJiW(){this.ǃOOr().ǃJpA.set(this.ǃOOr().color),this.ǃOOr().ǃJpA.ǃSX()}ǃfe(){return this.ǃOOr().ǃJpA}ǃNu(re){re=!!re;this.ǃOOr().ǃJph===re||(this.ǃOOr().ǃJph=re,this.ǃYQ())}ǃsz(){return this.ǃOOr().ǃJph}ǃsM(re){ǃJ.ǃXq(re);this.ǃOOr().ǃJpv===re||(this.ǃOOr().ǃJpv=re,this.ǃYQ())}ǃsq(){return this.ǃOOr().ǃJpv}ǃsL(re){ǃJ.ǃXq(re);this.ǃOOr().ǃJpP===re||(this.ǃOOr().ǃJpP=re,this.ǃYQ())}ǃsB(){return this.ǃOOr().ǃJpP}ǃs$(re){ǃJ.ǃXq(re);this.ǃOOr().ǃJpd===re||(this.ǃOOr().ǃJpd=re,this.ǃYQ())}ǃst(){return this.ǃOOr().ǃJpd}ǃsK(re){re=!!re;this.ǃOOr().ǃJps===re||(this.ǃOOr().ǃJps=re,this.ǃYQ())}ǃsV(){return this.ǃOOr().ǃJps}ǃso(){return this.ǃsV()||1!==this.ǃny()||1!==this.ǃJwu()||"normal"!==this.ǃsr()||this.ǃJGg()}ǃsc(re){re=!!re;this.ǃOOr().ǃJwO===re||(this.ǃOOr().ǃJwO=re,this.ǃYQ())}ǃsb(){return this.ǃOOr().ǃJwO}ǃsI(re){if(ǃJ.ǃJO(re),!ǃHD.ǃJep.has(re))throw new Error("invalid blend mode");this.ǃOOr().ǃJwJ===re||(this.ǃOOr().ǃJwJ=re,this.ǃYQ())}ǃsr(){return this.ǃOOr().ǃJwJ}*ǃJw_(){yield*this.ǃJNX}*ǃJwm(){for(let re=this.ǃJNX.length-1,oe;0<=re;--re)oe=this.ǃJNX[re],oe.ǃXb()&&(yield oe)}ǃJwb(){return this.ǃse().ǃJNX}*ǃJwc(){for(let re of this.ǃse().ǃJNX)re.ǃXb()&&(yield re)}*ǃJwt(){let re=this.ǃse().ǃJNX;for(let oe=re.length-1,ye;0<=oe;--oe)ye=re[oe],ye.ǃXb()&&(yield ye)}*ǃur(){for(let re of this.ǃJwc())re.ǃXb()&&(yield re)}*ǃJGX(){yield*this.ǃse().ǃJNX}*ǃKD(){for(let re of this.ǃJwt())re.ǃXb()&&(yield re)}*ǃoM(re,oe=_486){ǃJ.ǃk(re,ǃJ.Rect),ǃJ.ǃJO(oe);for(let ye of this.ǃJwc())ye.ǃoq(re,oe)&&(yield ye)}*ǃJw$(re,oe=_486){ǃJ.ǃk(re,ǃJ.Rect),ǃJ.ǃJO(oe);for(let ye of this.ǃJwt())ye.ǃoq(re,oe)&&(yield ye)}*ǃJwq(re=_486,oe=_488){if(ǃJ.ǃJO(re),ǃJ.ǃJO(oe),!te.includes(re))throw new Error(_489);if(!ne.includes(oe))throw new Error(_489);re===_486?oe===_488?yield*this.ǃJwc():oe===_487&&(yield*this.ǃJwt()):"self"===re&&(yield*this.ǃJNX)}ǃV$(re,oe,ye=_486){ǃJ.ǃXq(re),ǃJ.ǃXq(oe),ǃJ.ǃJO(ye);for(let Oe of this.ǃJwq(ye,_487))if(Oe.ǃV$(re,oe))return Oe;return null}ǃoq(re,oe=_486){ǃJ.ǃk(re,ǃJ.Rect),ǃJ.ǃJO(oe);for(let ye of this.ǃJwq(oe,_487))if(ye.ǃoq(re))return re;return null}ǃORh(re,oe,ye=_486){ǃJ.ǃXq(re),ǃJ.ǃXq(oe),ǃJ.ǃJO(ye);let Oe=[];for(let le of this.ǃJwq(ye,_488))le.ǃV$(re,oe)&&Oe.push(le);return Oe}ǃoK(re,oe=_486){ǃJ.ǃk(re,ǃJ.Rect),ǃJ.ǃJO(oe);let ye=[];for(let Oe of this.ǃJwq(oe,_488))Oe.ǃoq(re)&&ye.push(Oe);return ye}ǃJEu(re){if(ǃJ.ǃk(re,ǃKY),this.ǃog()){if(re.ǃSj()!==this.ǃJwR)throw new Error(_492);}else if(re.ǃSj()!==this)throw new Error(_490);this.ǃJwb().includes(re)||(this.ǃJwS&&re.ǃOQl(this.ǃJwn++),this.ǃJwb().push(re),re.ǃJiQ(),this.ǃYQ())}ǃJwM(re){if(ǃJ.ǃk(re,ǃKY),this.ǃog()){if(re.ǃSj()!==this.ǃJwR)throw new Error(_492);}else if(re.ǃSj()!==this)throw new Error(_490);let oe=this.ǃJwb().indexOf(re);if(0>oe)throw new Error("instance is not part of layer");this.ǃJwb().splice(oe,1),re.ǃJiQ(),this.ǃJiF(),this.ǃYQ()}ǃJiP(){if(!this.ǃJwS){let re=0;for(let oe of this.ǃJwc())oe.ǃOQl(re++);this.ǃJwn=re,this.ǃJwS=!0}}ǃOOL(){return this.ǃJiP(),this.ǃJwn}ǃOnz(re){ǃJ.ǃk(re,Set);let oe=ǃJ.ǃPS(this.ǃJwb(),ye=>re.has(ye));oe.length&&(ǃJ.ǃXn(this.ǃJwb(),oe),this.ǃJwS=!1,this.ǃJwB(),this.ǃYQ())}ǃOnV(re){ǃJ.ǃk(re,Set);let oe=ǃJ.ǃPS(this.ǃJwb(),ye=>re.has(ye));oe.length&&(ǃJ.ǃXn(oe,this.ǃJwb()),ǃJ.ǃmx(this.ǃJwb(),oe),this.ǃJwS=!1,this.ǃJwB(),this.ǃYQ())}ǃJiv(re,oe){if(ǃJ.ǃk(re,ǃKY),ǃJ.ǃk(oe,de),this.ǃog())throw new Error(_491);if(this.ǃng()!==oe.ǃng())throw new Error("cannot move to different project");if(oe!==this){let ye=this.ǃJNX.indexOf(re);if(0>ye)throw new Error("instance not on this layer");this.ǃJNX.splice(ye,1),oe.ǃJNX.push(re),re.ǃJih(oe),this.ǃJwS=!1,oe.ǃJwS=!1,this.ǃOJD.ǃJij(),this.ǃYQ(),oe.ǃYQ()}}ǃot(re,oe,ye){if(ǃJ.ǃbw(re,window.ǃKY),ǃJ.ǃq$(oe,window.ǃKY),ǃJ.ǃUV(ye),this.ǃog())throw new Error(_491);for(let le of re)le.ǃSj().ǃJwM(le),le.ǃJih(this);let Oe=this.ǃJwL(oe,ye);this.ǃJNX.splice(Oe,0,...re),this.ǃOJD.ǃJij(),this.ǃJiF(),this.ǃYQ()}ǃJwB(){this.ǃse().ǃ_w().ǃJij()}ǃJwL(re,oe){if(ǃJ.ǃq$(re,window.ǃKY),ǃJ.ǃUV(oe),re&&!this.ǃJwb().includes(re))throw new Error("pivot instance is not part of the layer");if(!re&&oe)throw new Error(_493);if(re&&!oe)throw new Error(_493);let ye=re?re.ǃoo():0;if("before"===oe||"undefined"==typeof oe)return ye+1;if("after"===oe)return ye;throw new Error("unexpected 'where' value. Only 'before' and 'after' are valid values")}ǃJwz(){return this.ǃJwb().slice(0)}ǃJwk(re){ǃJ.ǃbw(re,ǃKY),ǃJ.ǃmx(this.ǃJwb(),re),this.ǃJwS=!1;for(let oe of this.ǃJwb())this.ǃog()?oe.ǃJih(this.ǃJwR):oe.ǃJih(this);this.ǃJwB(),app.ǃJBm(this,"layerinstancelistset")}ǃJwV(re){ǃJ.ǃk(re,ǃkT);let oe=re.ǃOnO(),ye=re.ǃOnJ();this.ǃJwy.set(re.ǃOfQ(0),re.ǃOfj(0),re.ǃOfQ(oe),re.ǃOfj(ye));let Oe=this.ǃJwy.width()*ee,le=this.ǃJwy.height()*ee;this.ǃJwf.ǃRV(this.ǃJwy),this.ǃJwf.ǃ_E(Oe,le)}ǃSQ(){return this.ǃJwy}ǃOX_(){return this.ǃJpM}ǃfz(re,oe){if(this.ǃkF()){if(this.ǃog())return void this.ǃJwR.ǃfz(re,oe);const ye=this.ǃng(),Oe=oe.ǃSe,le=oe.ǃOyS;this.ǃJwV(Oe),Oe.ǃOfg(re),this.ǃJpM=null;let Je=null,ue=re.ǃOX_(),pe=this.ǃso();re.ǃfD(),pe&&(this.ǃJpM=app.ǃRB().ǃOXO("linear"===ye.ǃ_S()),ue=this.ǃJpM,Je=this.ǃOJD.ǃOX_(),re.ǃOfV(this.ǃJpM),re.ǃOXC(0,0,0,0)),this.ǃsz()||(re.ǃfi(),re.ǃfo(this.ǃOOr().backgroundColor),re.ǃOgI(0,0,this.ǃOJD.ǃfI(),this.ǃOJD.ǃfG()));let he=this.ǃJwy,ge=this.ǃJwf;for(let me of this.ǃur()){let ve=he.ǃX$(me.ǃR_());if(me.ǃJaV(ve),!ve&&!me.ǃJak()){me.ǃJaO(ge);continue}me.ǃJGg()&&le?this.ǃJwK(re,oe,me,ue):(re.ǃSc(),me.ǃfz(re,oe))}if(re.ǃOXS(0),pe){let me=[...this.ǃJKL()];if(le||(me.length=0),this.ǃJwo(me)){if(re.ǃOfV(Je),1===me.length){let ve=me[0],be=ve.ǃdw();re.ǃOXS(be.ǃOXn(re)),ae.set(0,0,Oe.ǃOny()/re.ǃfI(),Oe.ǃOnf()/re.ǃfG());let Ue=this.ǃJwy;re.ǃOXM(null,ie,Ue,ae,Ue,1/Ue.width(),1/Ue.height(),Oe.ǃSo(),0,oe.ǃOyf,ve.ǃOXB(null))}else re.ǃSc();if(this.ǃ_w().ǃsC()?Oe.ǃka()===this?re.ǃfo(this.ǃfe()):re.ǃfo(this.ǃJwe()):re.ǃfo(this.ǃfe()),le){const ve=re.ǃOXL(this.ǃsr());re.ǃOXz(ve.ǃOXk,ve.ǃOXV)}else re.ǃfD();re.ǃOXm(this.ǃJpM),re.ǃOXb(this.ǃJpM),app.ǃRB().ǃOXJ(this.ǃJpM)}else ǃJ.ǃOXy(re,oe,this,null,Je,me),Oe.ǃOfg(re)}this.ǃJpM=null}}ǃJwo(re){if(0===re.length)return!0;let oe=re[0],ye=oe.ǃdw();return 1===re.length&&!ye.ǃOnP()&&!ye.ǃOnd()&&!ye.ǃOns()&&1===this.ǃny()&&1===this.ǃJwu()}ǃJwr(re,oe){let ye=re[0],Oe=ye.ǃdw();return 1===re.length&&!Oe.ǃOnP()&&!Oe.ǃOnd()&&!Oe.ǃOns()&&!Oe.ǃJwI()&&1===oe.ǃny()&&!oe.ǃtH().ǃOnP()}ǃJwK(re,oe,ye,Oe){let le=ye.ǃf$().ǃJEV();this.ǃJwr(le,ye)?this.ǃJwN(re,oe,ye,le[0]):(ǃJ.ǃOXy(re,oe,ye.ǃf$(),ye,Oe,le),oe.ǃSe.ǃOfg(re))}ǃJwN(re,oe,ye,Oe){let le=Oe.ǃdw(),Je=oe.ǃSe;re.ǃOXS(le.ǃOXn(re)),ye.ǃfV(re);let ue=100,pe=100,he=ye.ǃOXt();if(he&&he.ǃOX$()){ae.ǃRV(he.ǃSM());let ge=he.ǃOXq();ue=ge.ǃfI(),pe=ge.ǃfG()}else ae.set(0,0,0,0);re.ǃOXM(null,ie,this.ǃJwy,ae,ye.ǃR_(),1/ue,1/pe,Je.ǃSo(),0,oe.ǃOyf,Oe.ǃOXB(ye)),ye.ǃfz(re,oe)}ǃOfe(re,oe){if(this.ǃkF())for(let ye of this.ǃur())ye.ǃORd()&&ye.ǃOCZ(re,oe)}ǃJot(re){ǃJ.ǃk(re,ǃOmT);let oe=[...this.ǃur()].map(le=>le.ǃJot(re)),ye=ǃHD.ǃJep.get(this.ǃsr()),Oe=[...this.ǃse().ǃJKL()].map(le=>le.ǃJot(!0));return[this.ǃyg(),this.ǃbh(),this.ǃJLH(),this.ǃs_(),this.ǃPT().ǃONB(),this.ǃsz(),this.ǃsq(),this.ǃsB(),this.ǃny(),this.ǃsV(),this.ǃsb(),this.ǃst(),ye,0,oe,Oe]}ǃJor(){return{isInitiallyVisible:this.ǃOOr().ǃJpx,color:this.ǃOOr().color.toJSON(),backgroundColor:this.ǃOOr().backgroundColor.toJSON(),isTransparent:this.ǃOOr().ǃJph,parallaxX:this.ǃOOr().ǃJpv,parallaxY:this.ǃOOr().ǃJpP,scaleRate:this.ǃOOr().ǃJpd,forceOwnTexture:this.ǃOOr().ǃJps,useRenderCells:this.ǃOOr().ǃJwO,blendMode:this.ǃOOr().ǃJwJ}}ǃIh(re){ǃJ.ǃBA(re);let oe=re&&re.mode||"",ye={name:this.ǃOYj,instances:[...this.ǃur()].map(Oe=>Oe.ǃIh(re))};return"copy"!==oe&&(ye.sid=this.ǃJLH()),this.ǃJG_(ye),Object.assign(ye,this.ǃJor())}ǃJow(re){this.ǃsm(re.isInitiallyVisible),this.ǃOOr().color.ǃONI(re.color),this.ǃJiW(),this.ǃOOr().backgroundColor.ǃONI(re.backgroundColor),this.ǃNu(re.isTransparent),this.ǃsM(re.parallaxX),this.ǃsL(re.parallaxY),this.ǃs$(re.scaleRate),this.ǃsK(re.forceOwnTexture),this.ǃsc(re.useRenderCells),this.ǃsI(re.blendMode)}ǃIP(re){this.ǃyo(re.name),re.hasOwnProperty("sid")&&this.ǃJLC(re.sid),this.ǃJow(re)}ǃJpF(re){this.ǃIP(re),this.ǃJGm(re);let oe=this.ǃng().ǃBZ();for(let ye of re.instances){let Oe=ye.type,le=this.ǃUl.ǃOnD(Oe);if(!le)throw new Error(`cannot find object type named '${Oe}'`);let Je=le.ǃOSz(this);Je.ǃIP(ye),oe||Je.ǃyQ()}}ǃJoY(){return this.ǃJwX.ǃIh()}ǃJoQ(re){this.ǃkd(re.visibleInEditor),this.ǃkv(re.locked),this.ǃsG(re.parallaxInEditor),this.ǃsE(re.isGlobal)}ǃNa(){return this.ǃJwX.ǃIh()}ǃNF(re){this.ǃJwX.ǃIP(re)}ǃBs(re,oe){ǃJ.ǃJO(re),this.ǃJwX.ǃBs(re,oe)}ǃLf(re){return ǃJ.ǃJO(re),this.ǃJwX.ǃLf(re)}ǃNW(re){re=!!re,this.ǃJwX.ǃln(re)}ǃkd(re){this.ǃJwX.ǃkd(re)}ǃkF(){return this.ǃJwX.ǃJBT()}ǃkv(re){this.ǃJwX.ǃkv(re)}ǃkw(){return this.ǃJwX.ǃJBD()}ǃsG(re){this.ǃJwX.ǃsG(re)}ǃsN(){return this.ǃJwX.ǃJBi()}ǃsE(re){this.ǃJwX.ǃJBp(re)}ǃqk(){return this.ǃJwX.ǃJBa()}ǃJBq(re){this.ǃJwX.ǃsk(re)}ǃJwu(){return this.ǃJwX.ǃny()}ǃJwe(){return this.ǃJwX.ǃfe()}ǃJpZ(re){if(ǃJ.ǃk(re,ǃJ.ǃpj.Element),"layer"!==re.ǃOad())throw new Error("expected layer tag");this.ǃOYj=re.ǃOpg("name"),re.ǃOpR("sid")&&this.ǃJLC(re.ǃOpH("sid")),this.ǃsm(re.ǃOpn("initially-visible"));let oe=new ǃJ.ǃSR;oe.ǃONL(re.ǃKP("background-color")),this.ǃxb(oe),this.ǃsk(re.ǃOpf("opacity")),this.ǃNu(re.ǃOpn("transparent"));let ye=re.ǃOCp("parallax");this.ǃsM(ye.ǃOpf("x")),this.ǃsL(ye.ǃOpf("y")),this.ǃs$(re.ǃOpS("zoom-rate",1)),this.ǃsK(re.ǃOpX("force-own-texture",!1)),this.ǃsE(re.ǃOpX(_486,!1)),this.ǃsc(re.ǃOpX("use-render-cells",!1)),this.ǃsI(ǃOcw.ǃJew(re.ǃOpy("blend-mode")));let Oe=re.ǃOCp("instances");for(let le of Oe.children("instance")){let Je=le.ǃOpg("type"),ue=this.ǃUl.ǃOnD(Je);if(!ue)throw new Error(`cannot find object type named '${Je}'`);let pe=ue.ǃOSz(this);pe.ǃJeT(le)}re.ǃOpC("effects")&&this.ǃJGb(re,!0)}}}{const _494="layer already belongs to folder";window.ǃJpb=class extends ǃel{constructor(te,ne){super(te.ǃng(),ne,ǃkL),ǃJ.ǃk(te,ǃJs),this.ǃOJD=te,this.ǃex()&&(this.ǃOYj=lang("model.layout.layer.name-plural"))}ǃYQ(){this.ǃOJD.ǃYQ()}ǃCK(te){if(ǃJ.ǃk(te,ǃkL),te.ǃJIZ)throw new Error(_494);if(this.ǃOJD.ǃJpe(te.ǃyg()))throw new Error(`layer name '${te.ǃyg()}' already used`);te.ǃJIZ=this,super.ǃCK(te),app.ǃJBm(te,"layeradd")}ǃJLM(te){if(ǃJ.ǃk(te,ǃkL),te.ǃJIZ)throw new Error(_494);if(this.ǃOJD.ǃJpe(te.ǃyg()))throw new Error(`layer name '${te.ǃyg()}' already used`);te.ǃJIZ=this,super.ǃJLM(te),app.ǃJBm(te,"layeradd")}ǃVz(te,ne,ie,ae){super.ǃVz(te,ne,ie,ae),this.ǃOJD.ǃJpk(),app.ǃJBm(te,"layermove")}ǃIu(te,ne,ie,ae){super.ǃIu(te,ne,ie,ae),this.ǃOJD.ǃJpk()}ǃJLb(){app.ǃJwG(this,"layerfolderadd"),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJwG(this,"layerfolderremove")}}}{let ee=!1;window.ǃbY=class te extends ǃco{constructor(ne){super(ne),this.ǃJIZ=null,this.ǃOYj=this.ǃUl.ǃJVf(),this.ǃJGc=this.ǃOYj,this.ǃOaF=ǃJ.ǃb(ǃFx,this),this.ǃJwE=!0,this.ǃOPY=!1,this.ǃJwT=new ǃJ.ǃgX(()=>this.ǃJwD(),50),this.ǃOxZ=this.ǃng().ǃJBR()}ǃyY(){this.ǃOxZ=null,this.ǃJwT.ǃyY(),this.ǃJwT=null,this.ǃOaF.ǃyY(),this.ǃOaF=null,this.ǃJIZ=null}ǃOCo(){return"event-sheet"}ǃrG(){if(!this.ǃJIZ)throw new Error("event sheet not yet added to folder");return this.ǃJIZ}ǃJLG(ne){ǃJ.ǃk(ne,ǃeY),this.ǃJIZ=ne}ǃ_w(){let ne=this.ǃng();for(let ie of ne.ǃQS())if(ie.ǃcX()===this)return ie}ǃIr(){return this.ǃOPY}ǃYQ(){this.ǃng().ǃBZ()||(app.ǃJBA(this,"eventsheetchange"),this.ǃOPY||(this.ǃOPY=!0,this.ǃng().ǃJkR(!0),app.ǃJBA(this,"eventsheetmarkchanged")))}ǃJkU(){this.ǃOPY&&(this.ǃOPY=!1,app.ǃJBA(this,"eventsheetunmarkchanged"))}ǃJLu(){super.ǃJLu()}ǃJL_(){super.ǃJL_()}ǃJLb(){this.ǃng().ǃFV(),app.ǃJBA(this,"eventsheetadd"),this.ǃYQ(),this.ǃng().ǃYQ()}ǃJLm(){this.ǃng().ǃFV(),app.ǃJBA(this,"eventsheetremove"),this.ǃYQ(),this.ǃng().ǃYQ()}ǃcN(){}ǃJwD(){this.ǃJwE&&(assert(!ee,"recursing in to _UpdateEventNumbers()"),ee=!0,this.ǃOaF.ǃJwi(0),this.ǃOaF.ǃJwa(0),this.ǃJwE=!1,ee=!1)}ǃJwp(){this.ǃJwE=!0}ǃJww(){this.ǃJwT.ǃHp()}ǃyg(){return this.ǃOYj}ǃyo(ne){if(ǃJ.ǃJO(ne),ne=ǃJ.ǃOrV(ne),this.ǃOYj!==ne){if(!ǃJ.ǃOrz(ne))throw new Error("invalid name");if(!ǃJ.ǃO$X(this.ǃOYj,ne)&&this.ǃng().ǃJVy(ne))throw new Error(`event sheet name '${ne}' already used`);this.ǃOYj=ne,this.ǃng().ǃBZ()&&(this.ǃJGc=ne),this.ǃYQ(),this.ǃng().ǃWW(),app.ǃJBA(this,"eventsheetnamechange"),app.ǃJLq(this,"projectobjectnamechange")}}ǃVy(ne,ie){return ǃJ.ǃJO(ne),ǃJ.ǃLA(ie),ne=ǃJ.ǃOrV(ne),ǃJ.ǃS.ǃT("model.event-sheet.errors"),ǃJ.ǃOrz(ne)?!ǃJ.ǃO$X(ne,this.ǃyg())&&this.ǃng().ǃJVy(ne)?(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ie,"warning",lang(".name-used.title"),ǃra(".name-used.message",ne),{align:"bottom"}),void ǃJ.ǃS.ǃOu()):void(this.ǃyo(ne),ǃJ.ǃS.ǃOu()):(ǃJ.ǃU.ǃUu.ǃFr.ǃHa(ie,"warning",lang(".name-invalid.title"),lang(".name-invalid.message"),{align:"bottom"}),void ǃJ.ǃS.ǃOu())}ǃJoZ(ne){return ǃJ.ǃUV(ne),ne=(ne||this.ǃyg()).toLowerCase(),`eventSheets\\${ne}.json`}ǃJoW(ne){this.ǃJGc===this.ǃyg()||(this.ǃJGc&&(ne.add(this.ǃJoZ(this.ǃJGc)),ne.add(this.ǃJoZ(this.ǃJGc+".uistate"))),this.ǃJGc=this.ǃyg())}ǃJox(ne){!this.ǃXb()&&this.ǃJGc&&(ne.add(this.ǃJoZ(this.ǃJGc)),ne.add(this.ǃJoZ(this.ǃJGc+".uistate")),this.ǃJGc="")}ǃbj(){return this.ǃOaF}ǃJVo(){return this.ǃOaF.ǃJwY()}*includes(){for(let ne of this.ǃOaF.ǃJwQ())ne instanceof ǃbr&&(yield ne)}ǃJwj(ne){ǃJ.ǃk(ne,te);for(let ie of this.includes())if(ie.ǃWk()===ne)return!0;return!1}ǃWu(ne){ǃJ.ǃq$(ne,ǃFo),ne||(ne=this.ǃOaF);let ie=[...ne.children()],ae=null,de=!1;for(let re=0,oe=ie.length,ye;reǃJ.ǃgi(()=>{re.ǃIP(oe)})).then(()=>ae.ǃJLJ(de)).then(oe=>{return oe?ae.ǃOpo(de).then(ye=>re.ǃNF(ye)).then(()=>re):re})}static ǃJwx(ne,ie,ae){ǃJ.ǃk(ne,ǃHD),ǃJ.ǃFt(ie),ǃJ.ǃFt(ae);let de=`Event sheets\\${ie.ǃKP()}`,re=ae.ǃOpz(de);if(!re)throw new Error(`event sheet XML file '${de}' is missing`);return ae.ǃOpV(re).then(ǃJ.ǃpj.Document.ǃpQ).then(oe=>{let ye=ǃJ.ǃb(te,ne);return ye.ǃJpZ(oe),ye})}ǃJpZ(ne){ǃJ.ǃk(ne,ǃJ.ǃpj.Document);let ie=ne.ǃpF();if("c2eventsheet"!==ie.ǃOad())throw new Error("expected c2eventsheet tag");this.ǃyo(ie.ǃKP("name")),this.ǃOaF.ǃJpZ(ie.ǃOCp("events"))}}}{const _496="eventsheetfolderadd";window.ǃeY=class ee extends ǃel{constructor(te,ne){super(te,ne,ǃbY),this.ǃex()&&(this.ǃOYj=lang("ui.bars.project.items.event-sheets"))}ǃCK(te){if(ǃJ.ǃk(te,ǃbY),te.ǃJIZ)throw new Error("event sheet already belongs to folder");if(this.ǃUl.ǃJVy(te.ǃyg()))throw new Error(`event sheet name '${te.ǃyg()}' already used`);te.ǃJIZ=this,super.ǃCK(te),app.ǃJBA(te,"eventsheetadd"),te.ǃYQ()}ǃIN(){let te=ǃJ.ǃb(ee,this.ǃUl,this);return this.ǃJLc.push(te),app.ǃJwA(te,_496),this.ǃYQ(),te}ǃJLb(){app.ǃJwA(this,_496),this.ǃYQ()}ǃJLm(){this.ǃYQ(),app.ǃJwA(this,"eventsheetfolderremove")}ǃJLD(te){return te.ǃyg()}ǃJeC(te,ne){ǃJ.ǃFt(te),ǃJ.ǃk(ne,ǃJ.ǃJLO),this.ǃex()||this.ǃyo(te.name);let ie=[];for(let de of te.subfolders){let re=this.ǃIN();ie.push(re.ǃJeC(de,ne))}let ae=[];for(let de of te.items)ae.push(ǃbY.ǃJwl(this.ǃng(),de,ne));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(let re of de)this.ǃCK(re);return this})}ǃJeN(te,ne){ǃJ.ǃk(te,ǃJ.ǃpj.Element),ǃJ.ǃk(ne,ǃJ.ǃOcO),this.ǃex()||this.ǃyo(te.ǃOpg("name"));let ie=[];for(let de of te.children("event-folder")){let re=this.ǃIN();ie.push(re.ǃJeN(de,ne))}let ae=[];for(let de of te.children("event-sheet"))ae.push(ǃbY.ǃJwx(this.ǃng(),de,ne));return Promise.all(ie).then(()=>Promise.all(ae)).then(de=>{for(let re of de)this.ǃCK(re);return this})}}}"use strict",window.ǃce=class ee extends ǃco{constructor(te,ne){ǃJ.ǃk(te,ǃbY),ǃJ.ǃq$(ne,ee),super(te.ǃng()),this.ǃwg=te,this.ǃOFZ=ne,this.ǃJwh=new Set,this.ǃJwv=ǃJ.ǃb(ǃJBY,this),this.ǃXl=!0}ǃyY(){this.ǃJwh.clear(),this.ǃJwv.ǃyY(),this.ǃJwv=null,this.ǃOFZ=null,this.ǃwg=null,super.ǃyY()}ǃOCo(){return"event-object"}ǃDj(){ǃJ.ǃZZ()}ǃXb(){return this.ǃXl&&super.ǃXb()}ǃCc(te){let ne=this.ǃXb();this.ǃXl=!!te;let ie=this.ǃXb();!ne&&ie?this.ǃJLb():ne&&!ie&&this.ǃJLm()}accept(te){ǃJ.ǃk(te,ǃJVH);let ne=te.ǃJwP(this);this.ǃJwd(te),te.ǃJws(this,ne)}ǃJwd(){}ǃcX(){return this.ǃwg}ǃoH(){return this.ǃOFZ}ǃyX(){ǃJ.ǃZZ()}ǃZi(te){ǃJ.ǃk(te,ǃQz),assert(!this.ǃJwh.has(te),"already added view"),this.ǃJwh.add(te)}ǃZw(te){ǃJ.ǃk(te,ǃQz),assert(this.ǃJwh.has(te),"view not added"),this.ǃJwh.delete(te)}ǃJBx(){for(let te of this.ǃJwh)te.ǃ$D()}ǃJYO(te){ǃJ.ǃXq(te);for(let ne of this.ǃJwh)ne.ǃly(te)}ǃJYJ(){return[...this.ǃWZ()][0]}ǃQD(te){ǃJ.ǃk(te,ǃwS);for(let ne of this.ǃJwh)if(ne.ǃZs()===te)return ne;return null}ǃWZ(){return this.ǃJwh.values()}ǃYz(){ǃJ.ǃZZ()}ǃJYy(te){for(let ne of this.ǃJwh)ne.ǃZl(te)}ǃJLb(){this.ǃJYy(!1),app.ǃJLq(this,"projectobjectundelete"),this.ǃYQ()}ǃJLm(){this.ǃJYy(!0),app.ǃJLq(this,"projectobjectdelete"),this.ǃYQ()}ǃFd(){return!1}ǃWO(){ǃJ.ǃZZ()}ǃEy(){return!0}ǃZu(){}ǃZJ(){ǃJ.ǃZZ()}ǃYQ(){this.ǃng().ǃBZ()||(this.ǃwg.ǃYQ(),this.ǃJBx())}ǃJot(){return null}ǃIh(){ǃJ.ǃZZ()}ǃIP(){ǃJ.ǃZZ()}ǃNa(){return this.ǃJwv.ǃIh()}ǃNF(te){this.ǃJwv.ǃIP(te)}ǃLf(te){return this.ǃJwv.ǃLf(ǃJBY.ǃJBZ,te)}ǃNW(te){te=!!te,this.ǃJwv.ǃln(te)}},"use strict";{function ee(){return te||(te=new Map([["group",ǃbz],["comment",ǃbV],["variable",ǃbo],["include",ǃbr],["block",ǃqg]])),te}let te=null;window.ǃbd=class extends ǃce{constructor(ie,ae){ǃJ.ǃk(ie,ǃbY),ǃJ.ǃq$(ae,ǃFo),super(ie,ae),this.ǃJYf=-1,this.ǃJYS=-1,this.ǃJYn=!1}ǃyY(){super.ǃyY()}ǃJwi(ie){return ǃJ.ǃXq(ie),this.ǃJYf=ie++,ie}ǃJYX(){return this.ǃcX().ǃJwD(),assert(-1!==this.ǃJYf,"no sequence number assigned"),this.ǃJYf}static ǃQj(ie,ae){return ie.ǃJYX()-ae.ǃJYX()}ǃJwa(ie){ǃJ.ǃXq(ie);let ae=ie++;return this.ǃJYS!==ae&&(this.ǃJYS=ae,this.ǃJYO(this.ǃJYS)),ie}ǃcO(){return this.ǃcX().ǃJwD(),this.ǃJYS}ǃJLb(){super.ǃJLb();let ie=this.ǃoH();ie&&1===ie.ǃJYR()&&ie.ǃJBx(),this.ǃcX().ǃJwp(),this.ǃcX().ǃJww()}ǃJLm(){super.ǃJLm();let ie=this.ǃoH();ie&&0===ie.ǃJYR()&&ie.ǃJBx(),this.ǃcX().ǃJwp(),this.ǃcX().ǃJww()}ǃqt(ie){this.ǃJwv.ǃqt(ie)}ǃQI(){return this.ǃJwv.ǃJBF()}ǃjt(){return!0}ǃjM(ie){if(ie=!!ie,this.ǃJYn!==ie){if(app.ǃJS()&&ie)return void app.ǃJn(15);if(ie&&!this.ǃjq())throw new Error("branch not breakable");this.ǃJYn=ie,this.ǃYQ();let ae=this.ǃcX();ae.ǃJwZ(),ae.ǃJwW(this)}}ǃQT(){return!app.ǃJS()&&this.ǃJYn}ǃjq(){return!this.ǃFi()&&!this.ǃJYg()}ǃxv(){return!this.ǃoH().ǃoH()}*ǃlO(){for(let ie=this.ǃoH();ie;)yield ie,ie=ie.ǃoH()}ǃFe(ie){ǃJ.ǃk(ie,ǃFo);for(let ae of this.ǃlO())if(ae===ie)return!0;return!1}ǃQA(ie){ǃJ.ǃk(ie,Set);for(let ae of this.ǃlO())if(ie.has(ae))return!0;return!1}*children(){}*ǃJYH(){}*ǃJwQ(){}*ǃJYU(){}ǃAo(){return this.ǃoH().ǃJYC(this,!0)}ǃJYu(){return this.ǃoH().ǃJYC(this,!1)}ǃJY_(){return this.ǃoH().ǃJYm(this)}ǃbs(){return this.ǃoH().ǃJYb(this)}ǃqE(){let ie=this.ǃJY_(),ae=this.ǃbs();if(ie&&ae){let de=this.ǃJYX(),re=ie.ǃJYX(),oe=ae.ǃJYX(),ye=Math.abs(re-de),Oe=Math.abs(oe-de);return yede)throw new Error("cannot find child to insert by");ie&&++de,this.ǃOFl.splice(de,0,te)}else this.ǃOFl.push(te);this.ǃYQ(),this.ǃcX().ǃJwp();let ae=[];for(let de of this.ǃWZ()){let re=null;ne&&(re=ne.ǃQD(de.ǃZs()),ie&&(re=re.ǃZW())),ae.push(te.ǃYz(de,re))}return this.ǃng().ǃJkq(),Promise.all(ae)}ǃFk(){return ǃJ.ǃUe(this.children())}ǃJYC(te,ne){ǃJ.ǃk(te,ǃbd),ne=!!ne;let ie=this.ǃOFl.indexOf(te);if(0>ie)throw new Error(_498);return ne?ie++:ie--,0>ie||ie>=this.ǃOFl.length?null:this.ǃOFl[ie]}ǃJYm(te){ǃJ.ǃk(te,ǃbd);let ne=this.ǃOFl.indexOf(te);if(0>ne)throw new Error(_498);do--ne;while(0ne?null:this.ǃOFl[ne]}ǃJYb(te){ǃJ.ǃk(te,ǃbd);let ne=this.ǃOFl.indexOf(te);if(0>ne)throw new Error(_498);do++ne;while(ne=this.ǃOFl.length?null:this.ǃOFl[ne]}ǃKv(){return!!this.ǃFk()}ǃJYR(){return[...this.children()].length}*children(){for(let te of this.ǃJYH())te.ǃXb()&&(yield te)}*ǃJYq(){for(let te of this.children())te.ǃEy()&&(yield te)}*ǃJYH(){for(let te of this.ǃOFl)yield te}*ǃJwQ(){for(let te of this.children())yield te,yield*te.ǃJwQ()}*ǃJYU(){for(let te of this.ǃJYH())yield te,yield*te.ǃJYU()}ǃQr(){return this.ǃJYc||this.ǃJBW(),!!this.ǃJYc.length}ǃJBW(){this.ǃJYc=[...this.ǃqq()]}ǃQe(){return this.ǃJYc||this.ǃJBW(),this.ǃJYc}*ǃqq(){for(let te of this.children())te.ǃQI()&&(yield te),te instanceof ee&&(yield*te.ǃqq())}ǃQE(){return this.ǃJYt||this.ǃJwZ(),!!this.ǃJYt.length}ǃJwZ(){this.ǃJYt=[...this.ǃJYM()]}ǃQG(){return this.ǃJYt||this.ǃJwZ(),this.ǃJYt}*ǃJYM(){for(let te of this.children())te.ǃQT()&&(yield te),te instanceof ee&&(yield*te.ǃJYM())}*ǃJwY(){for(let te of this.children())te instanceof ǃbo&&(yield te)}*ǃJYB(){for(let te of this.ǃJwQ())te instanceof ǃbo&&(yield te)}*ǃJVk(){for(let te of this.children())te instanceof ee&&(yield*te.ǃJYB())}*ǃJVK(){for(let te=this;!(te instanceof ǃFx);)yield*te.ǃJwY(),te=te.ǃoH()}*ǃJYL(){yield*this.ǃJVK(),yield*this.ǃng().ǃJVo()}ǃJwd(te){if(!te.ǃJYz())for(let ne of te.ǃJYk()?this.ǃJYH():this.children())if(ne.accept(te),te.ǃJYz())return}ǃJYV(te){return this.ǃOFl.length?ǃJ.ǃgi(()=>{let ne=[];for(let ie of this.ǃJYH()){let ae=ie.ǃYz(te);ae.then&&ne.push(ae)}return Promise.all(ne)}):Promise.resolve(this)}ǃJYK(){for(let te of this.ǃJwQ())te.ǃJBx()}ǃJwi(te){ǃJ.ǃXq(te),te=super.ǃJwi(te);for(let ne of this.children())te=ne.ǃJwi(te);return te}ǃJwa(te){ǃJ.ǃXq(te),te=super.ǃJwa(te);for(let ne of this.children())te=ne.ǃJwa(te);return te}ǃFl(te){ǃJ.ǃk(te,ǃbd);let ne=this.ǃOFl.indexOf(te);assert(0<=ne,"cannot find row in parent");for(let ae=ne+1,de=this.ǃOFl.length,re;aeie.ǃZJ(te)).join("\n");return ne&&(ne="\n"+ne),ne}ǃJYe(te){ǃJ.ǃk(te,ǃOmT);let ne=[];for(let ie of this.ǃJYq()){let ae=ie.ǃJot(te);ae&&ne.push(ae)}return ne}ǃJYr(te){return ǃJ.ǃBA(te),[...this.children()].map(ne=>ne.ǃIh(te))}ǃJYI(te){if(ǃJ.ǃQv(te),!!te)for(let ne of te)this.ǃkY(ǃbd.ǃZU(ne,this))}ǃJYN(){return[...this.children()].map(te=>te.ǃNa())}ǃJYG(te){let ne=[...this.children()];for(let ie=0;iene)}ǃJot(te){return ǃJ.ǃk(te,ǃOmT),this.ǃJYe(te)}ǃIh(te){return ǃJ.ǃBA(te),this.ǃJYr(te)}ǃIP(te){this.ǃJYI(te)}ǃNa(){let te=super.ǃNa();return te.eventsUIState=this.ǃJYN(),te}ǃNF(te){super.ǃNF(te),this.ǃJYG(te.eventsUIState)}ǃJpZ(te){if(!te)throw new Error("missing root events element");this.ǃJYE(te)}},"use strict";{const _499="event-comment";window.ǃbV=class ee extends ǃbd{constructor(te){ǃJ.ǃk(te,ǃFo),super(te.ǃcX(),te),this.ǃJYT="",this.ǃJYD=!0,this.ǃJYi=ǃJ.ǃb(ǃJ.ǃSR),this.ǃJYa=!0,this.ǃJYp=ǃJ.ǃb(ǃJ.ǃSR)}ǃyY(){super.ǃyY()}ǃOCo(){return _499}ǃYz(te,ne){return ǃJ.ǃk(te,ǃlJ),ǃJ.ǃq$(ne,ǃwf),ǃJ.ǃb(ǃjC,this,te,ne)}ǃDj(te,ne){ǃJ.ǃk(te,ǃFo),ǃJ.ǃFt(ne);let ie=ǃJ.ǃb(ee,te);return ie.ǃjM(this.ǃQT()),ie.ǃqt(this.ǃQI()),ie.ǃJYT=this.ǃJYT,ie.ǃJYD=this.ǃJYD,ie.ǃJYi=this.ǃJYi.clone(),ie.ǃJYa=this.ǃJYa,ie.ǃJYp=this.ǃJYp.clone(),ie}ǃJwa(te){return ǃJ.ǃXq(te),te}ǃZJ(te){return ǃJ.ǃXq(te),`${" ".repeat(te)}// ${this.ǃcC()}`}ǃjq(){return!1}ǃyX(){return app.ǃJt(_499)}ǃxH(te){ǃJ.ǃJO(te);this.ǃJYT===te||(this.ǃJYT=te,this.ǃYQ())}ǃcC(){return this.ǃJYT}ǃxu(te){te=!!te;this.ǃJYD===te||(this.ǃJYD=te,this.ǃYQ())}ǃx_(te){ǃJ.ǃk(te,ǃJ.ǃSR);this.ǃJYi.ǃON_(te)||(this.ǃJYi.set(te),this.ǃYQ())}ǃxO(){return this.ǃJYD?"":this.ǃJYi.ǃONq()}ǃxm(te){te=!!te;this.ǃJYa===te||(this.ǃJYa=te,this.ǃYQ())}ǃxb(te){ǃJ.ǃk(te,ǃJ.ǃSR);this.ǃJYp.ǃON_(te)||(this.ǃJYp.set(te),this.ǃYQ())}ǃxJ(){return this.ǃJYa?"":this.ǃJYp.ǃONq()}ǃIh(te){ǃJ.ǃBA(te);let ne=super.ǃIh(te);return ne=Object.assign(ne,{eventType:"comment",text:this.ǃcC()}),this.ǃJYD||(ne["text-color"]=this.ǃJYi.toJSON()),this.ǃJYa||(ne["background-color"]=this.ǃJYp.toJSON()),ne}ǃIP(te){super.ǃIP(te),this.ǃJYT=te.text,this.ǃJYD=!te.hasOwnProperty("text-color"),this.ǃJYD||this.ǃJYi.ǃONI(te["text-color"]),this.ǃJYa=!te.hasOwnProperty("background-color"),this.ǃJYa||this.ǃJYp.ǃONI(te["background-color"])}ǃJpZ(te){assert("comment"===te.ǃOad(),"tag name should be 'comment'"),this.ǃJYT=te.ǃKP()}}}{const _500="string",_501="number",_502="boolean",ee=new Set([_502,_501,_500]);window.ǃbo=class te extends ǃbd{constructor(ne){ǃJ.ǃk(ne,ǃFo),super(ne.ǃcX(),ne),this.ǃJYw="Variable1",this.ǃJYY=_501,this.ǃJYQ="0",this.ǃJYj="",this.ǃJch=!1,this.ǃJYF=!1}ǃyY(){super.ǃyY()}ǃOCo(){return"event-variable"}ǃYz(ne,ie){return ǃJ.ǃk(ne,ǃlJ),ǃJ.ǃq$(ie,ǃwf),ǃJ.ǃb(ǃFh,this,ne,ie)}ǃDj(ne,ie){ǃJ.ǃk(ne,ǃFo),ǃJ.ǃFt(ie),ǃJ.ǃJO(ie.mode);let ae=ǃJ.ǃb(te,ne),de=this.ǃJYw;if("copy"===ie.mode){let re=ne;for(ne.ǃoH()||(re=null);this.ǃng().ǃJVM(de,re,!1);)de=ǃJ.ǃOGA(de)}return ae.ǃjM(this.ǃQT()),ae.ǃqt(this.ǃQI()),ae.ǃJYw=de,ae.ǃJYY=this.ǃJYY,ae.ǃJYQ=this.ǃJYQ,ae.ǃJYj=this.ǃJYj,ae.ǃJch=this.ǃJch,ae.ǃJYF=this.ǃJYF,ae}ǃZu(){let ne=this.ǃoH();for(this.ǃxv()&&(ne=null);this.ǃng().ǃJVM(this.ǃJYw,ne,!1);)this.ǃJYw=ǃJ.ǃOGA(this.ǃJYw)}ǃJwa(ne){return ǃJ.ǃXq(ne),ne}ǃVS(){super.ǃVS(),this.ǃng().ǃFV()}ǃFq(){super.ǃFq(),this.ǃng().ǃFV()}ǃc_(){ǃJ.ǃS.ǃT("model.event-sheet.event-variable");let ne=this.ǃqk()?lang(".global-sp"):lang(".local-sp"),ie=this.ǃJtM()?lang(".static-sp"):"",ae=this.ǃJYW()?lang(".constant-sp"):"",de=lang("model.data-type."+this.ǃqL()).toLowerCase(),re=this.ǃqz(),oe=this.ǃOUP();this.ǃqL()===_502&&(oe=lang("common.boolean."+oe).toLowerCase());let ye=ǃra(".description",ne,ie,ae,de,re,oe);return ǃJ.ǃS.ǃOu(),ye}ǃZJ(ne){return ǃJ.ǃXq(ne),`${" ".repeat(ne)}| ${this.ǃc_().ǃcu()}`}ǃjq(){return!1}ǃyX(){return app.ǃJt(this.ǃqk()?"global-variable":"local-variable")}ǃqk(){return!this.ǃoH().ǃoH()}ǃxV(){return this.ǃqk()?null:this.ǃoH()}ǃJYZ(ne){ǃJ.ǃq$(ne,ǃFo);const ie=this.ǃxV();if(!ie)return!0;if(!ne)return!1;do{if(ne===ie)return!0;ne=ne.ǃoH()}while(ne);return!1}ǃW_(ne){if(ǃJ.ǃJO(ne),ne=ǃoa.ǃOnw(ne),this.ǃJYw!==ne){if(!ǃJ.ǃO$X(this.ǃJYw,ne)&&this.ǃng().ǃJVM(ne,this.ǃxV(),!1))throw new Error("event variable name '"+ne+"' already in use");this.ǃJYw=ne,this.ǃYQ();const ie=this.ǃng();ie.ǃWW(),ie.ǃYQ(),ie.ǃJkb()}}ǃqz(){return this.ǃJYW()?this.ǃJYw.toUpperCase():this.ǃJYw}ǃWm(ne){if(ǃJ.ǃJO(ne),!ee.has(ne))throw new Error("invalid event variable type");this.ǃJYY===ne||(this.ǃJYY=ne,this.ǃYQ(),this.ǃJYl(this.ǃOUP()))}ǃqL(){return this.ǃJYY}ǃJYl(ne){ǃJ.ǃJO(ne),this.ǃJYY===_501?ne=parseFloat(ne).toString():this.ǃJYY===_502&&(ne="true"===ne.toLowerCase()?"true":"false");this.ǃJYQ===ne||(this.ǃJYQ=ne,this.ǃYQ())}ǃOUP(){return this.ǃJYQ}ǃWb(ne){this.ǃJYY===_500?this.ǃJYl(ne):this.ǃJYY===_501?this.ǃJYl(ne.toString()):this.ǃJYl(ne?"true":"false")}ǃJYx(){return this.ǃJYY===_500?this.ǃJYQ:this.ǃJYY===_501?parseFloat(this.ǃJYQ):"true"===this.ǃJYQ}ǃWc(ne){ǃJ.ǃJO(ne);this.ǃJYj===ne||(this.ǃJYj=ne,this.ǃYQ())}ǃxz(){return this.ǃJYj}ǃxo(ne){return ne=!!ne,this.ǃJch===ne?void 0:this.ǃqk()?void(this.ǃJch=!1):void(this.ǃJch=ne,this.ǃYQ())}ǃJtM(){return this.ǃJch}ǃWt(ne){ne=!!ne;this.ǃJYF===ne||(this.ǃJYF=ne,this.ǃYQ())}ǃJYW(){return this.ǃJYF}static ǃJYA(ne,ie){let ae=ne.ǃqz().toLowerCase(),de=ie.ǃqz().toLowerCase();return ae>de?1:ae`}ǃjq(){return!1}ǃWK(te){if(ǃJ.ǃk(te,ǃbY),te===this.ǃcX())throw new Error("cannot include own event sheet");this.ǃJYv===te||(this.ǃJYv=te,this.ǃYQ())}ǃWk(){return this.ǃJYv}ǃqV(){return this.ǃJYv.ǃyg()}ǃyX(){return app.ǃJt("event-sheet")}ǃJot(){return[2,this.ǃWk().ǃyg(),!1]}ǃIh(te){ǃJ.ǃBA(te);let ne=super.ǃIh(te);return Object.assign(ne,{eventType:"include",includeSheet:this.ǃWk().ǃyg()})}ǃIP(te){super.ǃIP(te),this.ǃJYP=te.includeSheet}ǃJpZ(te){assert("include"===te.ǃOad(),"tag name should be 'include'"),this.ǃJYP=te.ǃKP(),assert(this.ǃJYP,_504)}}}"use strict",window.ǃbz=class ee extends ǃFo{constructor(te){ǃJ.ǃk(te,ǃFo),super(te.ǃcX(),te),this.ǃJyB="",this.ǃOdA="",this.ǃJYd=!0,this.ǃOR$=!0,this.ǃJYD=!0,this.ǃJYi=ǃJ.ǃb(ǃJ.ǃSR),this.ǃJYa=!0,this.ǃJYp=ǃJ.ǃb(ǃJ.ǃSR)}ǃyY(){super.ǃyY()}ǃOCo(){return"event-group"}ǃYz(te,ne){ǃJ.ǃk(te,ǃlJ),ǃJ.ǃq$(ne,ǃwf);let ie=ǃJ.ǃb(ǃQ_,this,te,ne);return this.ǃJYV(ie)}ǃDj(te,ne){ǃJ.ǃk(te,ǃFo),ǃJ.ǃFt(ne),ǃJ.ǃJO(ne.mode);let ie=ǃJ.ǃb(ee,te),ae=this.ǃJyB;if("copy"===ne.mode)for(;this.ǃng().ǃJVG(ae);)ae=ǃJ.ǃOGA(ae);return ie.ǃjM(this.ǃQT()),ie.ǃqt(this.ǃQI()),ie.ǃJyB=ae,ie.ǃOdA=this.ǃOdA,ie.ǃJYd=this.ǃJYd,ie.ǃOR$=this.ǃOR$,ie.ǃJYD=this.ǃJYD,ie.ǃJYi=this.ǃJYi.clone(),ie.ǃJYa=this.ǃJYa,ie.ǃJYp=this.ǃJYp.clone(),this.ǃJY$(ie,ne),ie}ǃZu(){for(;this.ǃng().ǃJVG(this.ǃJyB);)this.ǃJyB=ǃJ.ǃOGA(this.ǃJyB)}ǃFd(){return!0}ǃWO(te){te=!!te;this.ǃOR$===te||(this.ǃOR$=te,this.ǃYQ())}ǃEy(){return this.ǃOR$}ǃZJ(te){ǃJ.ǃXq(te);let ne=`${"----".repeat(te)}[${this.ǃcH()}]`;return ne+=this.ǃJYo(te+1),ne}ǃyX(){return app.ǃJt("closed-folder")}ǃWH(te){ǃJ.ǃJO(te);this.ǃJyB===te||(this.ǃJyB=te,this.ǃYQ())}ǃcH(){return this.ǃJyB}ǃye(te){ǃJ.ǃJO(te);this.ǃOdA===te||(this.ǃOdA=te,this.ǃYQ())}ǃcU(){return this.ǃOdA}ǃWU(te){te=!!te;this.ǃJYd===te||(this.ǃJYd=te,this.ǃYQ())}ǃxi(){return this.ǃJYd}ǃxu(te){te=!!te;this.ǃJYD===te||(this.ǃJYD=te,this.ǃYQ())}ǃx_(te){ǃJ.ǃk(te,ǃJ.ǃSR);this.ǃJYi.ǃON_(te)||(this.ǃJYi.set(te),this.ǃYQ())}ǃxO(){return this.ǃJYD?"":this.ǃJYi.ǃONq()}ǃxm(te){te=!!te;this.ǃJYa===te||(this.ǃJYa=te,this.ǃYQ())}ǃxb(te){ǃJ.ǃk(te,ǃJ.ǃSR);this.ǃJYp.ǃON_(te)||(this.ǃJYp.set(te),this.ǃYQ())}ǃxJ(){return this.ǃJYa?"":this.ǃJYp.ǃONq()}ǃJot(te){ǃJ.ǃk(te,ǃOmT);let ne=[this.ǃxi(),this.ǃcH()],ie=te.ǃJYs({ǃJQO:"System",ǃJQJ:"IsGroupActive"}),ae=[[-1,ie,null,0,!1,!1,!1,0,!1,[[1,[2,this.ǃcH()]]]]],de=te.ǃJoV()?[this.ǃQT(),this.ǃcO(),this.ǃjq()]:null,re=[0,ne,!1,de,this.ǃJLH(),ae,[]],oe=this.ǃJYe(te);return oe.length&&re.push(oe),re}ǃIh(te){ǃJ.ǃBA(te);let ne=te&&te.mode||"",ie=super.ǃIh(te);return ie=Object.assign(ie,{eventType:"group",disabled:!this.ǃEy(),title:this.ǃcH(),description:this.ǃcU(),isActiveOnStart:this.ǃxi(),children:this.ǃJYr(te)}),"copy"!==ne&&(ie.sid=this.ǃJLH()),this.ǃJYD||(ie["text-color"]=this.ǃJYi.toJSON()),this.ǃJYa||(ie["background-color"]=this.ǃJYp.toJSON()),ie}ǃIP(te){super.ǃIP(te),te.hasOwnProperty("sid")&&this.ǃJLC(te.sid),this.ǃWO(!te.disabled),this.ǃJyB=te.title,this.ǃOdA=te.description,this.ǃJYd=!!te.isActiveOnStart,this.ǃJYD=!te.hasOwnProperty("text-color"),this.ǃJYD||this.ǃJYi.ǃONI(te["text-color"]),this.ǃJYa=!te.hasOwnProperty("background-color"),this.ǃJYa||this.ǃJYp.ǃONI(te["background-color"]),this.ǃJYI(te.children)}ǃNa(){let te=super.ǃNa();return te.children=this.ǃJYN(),te}ǃNF(te){if(super.ǃNF(te),!!te.hasOwnProperty("children")){let ne=[...this.children()],ie=te.children;for(let ae=0;ae{1===this.ǃJYR()&&this.ǃJBx()})}ǃYz(te,ne){ǃJ.ǃk(te,ǃlJ),ǃJ.ǃq$(ne,ǃwf);let ie=ǃJ.ǃb(ǃQC,this,te,ne);return this.ǃJYV(ie)}ǃJYV(te){let ne=ǃJ.ǃgi(()=>{for(let ae of this.ǃJQR())ae.ǃYz(te);for(let ae of this.ǃJQg())ae.ǃYz(te);te.ǃ$D()}),ie=super.ǃJYV(te);return Promise.all([ne,ie])}ǃDj(te,ne){ǃJ.ǃk(te,ǃFo),ǃJ.ǃFt(ne);let ie=ǃJ.ǃb(ee,te);ie.ǃJQS=this.ǃJQS,ie.ǃOR$=this.ǃOR$,ie.ǃjM(this.ǃQT()),ie.ǃqt(this.ǃQI());for(let ae of this.ǃZn())ie.ǃJQy.push(ae.ǃDj(ie,ne));for(let ae of this.ǃZX())ie.ǃJQf.push(ae.ǃDj(ie,ne));return this.ǃJY$(ie,ne),ie}ǃJLb(){super.ǃJLb(),this.ǃJQn=!0,this.ǃJQX=!0}ǃJwd(te){if(!te.ǃJYz()){if(te.ǃJQH()){for(let ne of te.ǃJYk()?this.ǃJQR():this.ǃZn())if(ne.accept(te),te.ǃJYz())return;for(let ne of te.ǃJYk()?this.ǃJQg():this.ǃZX())if(ne.accept(te),te.ǃJYz())return}super.ǃJwd(te)}}ǃIU(){return!ǃJ.ǃUe(this.ǃZn())&&!ǃJ.ǃUe(this.ǃZX())&&!ǃJ.ǃUe(this.children())}ǃFN(te){ǃJ.ǃq$(te,ǃbq);for(let ne of this.ǃZn())if(ne!==te&&ne.ǃFE())return!0;return!1}ǃAs(){for(let te of this.ǃZn())if(te.ǃAs())return!0;return!1}ǃFd(){return!0}ǃWO(te){te=!!te;this.ǃOR$===te||(this.ǃOR$=te,this.ǃYQ())}ǃEy(){return this.ǃOR$}ǃZJ(te){ǃJ.ǃXq(te);let ne="";const ie=this.ǃqK(),ae=this.ǃFI();let de=[...this.ǃZn()];ne=de.length?de.map(ye=>ye.ǃZJ(te,ae&&ye!==ie)).join("\n"):"+ "+lang("model.event-sheet.text-format.no-conditions"),ne+="\n";let re=[...this.ǃZX()];re.length?ne+=re.map(ye=>ye.ǃZJ(te)).join("\n"):!this.ǃKv()&&(ne+="-> "+lang("model.event-sheet.text-format.no-actions"));let oe=this.ǃJYo(te+1);return oe&&(ne+="\n"+oe),ne+="\n",ne}*ǃZn(){for(let te of this.ǃJQR())te.ǃXb()&&(yield te)}*ǃJQU(){for(let te of this.ǃZn())te.ǃEy()&&(yield te)}*ǃJQR(){for(let te of this.ǃJQy)yield te}ǃAB(){let te=0;for(let ne of this.ǃZn())++te;return te}ǃJQC(){let te=0;for(let ne of this.ǃZX())++te;return te}ǃAL(){let te=0;for(let ne of this.ǃZn())ne.ǃFE()&&++te;return te}ǃFD(te){if(ǃJ.ǃq$(te,ǃbq),this.ǃFI())return!1;for(let ne of this.ǃZn())if(ne!==te&&!ne.ǃqo().ǃFT())return!0;return!1}*ǃZX(){for(let te of this.ǃJQg())te.ǃXb()&&(yield te)}*ǃJQu(){for(let te of this.ǃZX())te.ǃEy()&&(yield te)}*ǃJQg(){for(let te of this.ǃJQf)yield te}*ǃJYM(){for(let te of this.ǃJQy)te.ǃQT()&&(yield te);for(let te of this.ǃJQf)te.ǃQT()&&(yield te);for(let te of this.children())te.ǃQT()&&(yield te),te instanceof ǃFo&&(yield*te.ǃJYM())}ǃqK(){return ǃJ.ǃUe(this.ǃZn())}ǃJQ_(){return ǃJ.ǃUe(this.ǃZX())}ǃFm(){return!!this.ǃqK()}ǃJQm(){return!!this.ǃJQ_()}ǃJQb(){this.ǃJQn=!0}ǃJQc(){this.ǃJQX=!0}ǃJQt(){if(this.ǃJQn){let te=1;for(let ne of this.ǃZn())ne.ǃJQ$(te++);this.ǃJQn=!1}}ǃJQq(){if(this.ǃJQX){let te=1;for(let ne of this.ǃZX())ne.ǃJQ$(te++);this.ǃJQX=!1}}ǃjF(te,ne,ie){if(ǃJ.ǃk(te,ǃbq),ǃJ.ǃq$(ne,ǃbq),ie=!!ie,!this.ǃFI()){if(this.ǃFG()&&te.ǃFE())throw new Error(_507);ne&&ne.ǃFE()&&!ie&&(ie=!0)}else if(!this.ǃFN()&&this.ǃFG()&&te.ǃFE())throw new Error(_507);if(te.ǃFE()&&!this.ǃFI()&&(ne=this.ǃqK(),ie=!1),ne){let ae=this.ǃJQy.indexOf(ne);if(0>ae)throw new Error(_506);ie&&++ae,this.ǃJQy.splice(ae,0,te)}else this.ǃJQy.push(te);this.ǃJQb();for(let ae of this.ǃWZ()){let de=null;ne&&(de=ne.ǃQD(ae.ǃZs()),ie&&(de=de.ǃZW())),te.ǃYz(ae,de)}this.ǃYQ()}ǃjQ(te,ne,ie){if(ǃJ.ǃk(te,ǃbB),ǃJ.ǃq$(ne,ǃbB),ie=!!ie,ne){let ae=this.ǃJQf.indexOf(ne);if(0>ae)throw new Error(_506);ie&&++ae,this.ǃJQf.splice(ae,0,te)}else this.ǃJQf.push(te);this.ǃJQc();for(let ae of this.ǃWZ()){let de=null;ne&&(de=ne.ǃQD(ae.ǃZs()),ie&&(de=de.ǃZW())),te.ǃYz(ae,de)}this.ǃYQ()}ǃFZ(te){ǃJ.ǃk(te,ǃQW);let ne=te instanceof ǃbq?this.ǃJQy:this.ǃJQf;let ie=ne.indexOf(te);assert(0<=ie,"cannot find action/condition in block");for(let ae=ie+1,de=ne.length,re;aeoe.ǃJot(te)),ie=[...this.ǃJQu()].map(oe=>oe.ǃJot(te)),ae=te.ǃJoV()?[this.ǃQT(),this.ǃcO(),this.ǃjq()]:null,de=[0,null,this.ǃFI(),ae,this.ǃJLH(),ne,ie],re=this.ǃJYe(te);return re.length&&de.push(re),de}ǃIh(te){ǃJ.ǃBA(te);let ne=te&&te.mode||"",ie=super.ǃIh(te);ie=Object.assign(ie,{eventType:"block",conditions:[...this.ǃZn()].map(de=>de.ǃIh(te)),actions:[...this.ǃZX()].map(de=>de.ǃIh(te))}),"copy"!==ne&&(ie.sid=this.ǃJLH()),this.ǃEy()||(ie.disabled=!0);let ae=this.ǃJYr(te);return ae.length&&(ie.children=ae),this.ǃFI()&&(ie.isOrBlock=!0),ie}ǃIP(te){super.ǃIP(te),te.hasOwnProperty("sid")&&this.ǃJLC(te.sid),this.ǃWO(!te.disabled),te.isOrBlock&&this.ǃAr(!0);for(let ne of te.conditions)this.ǃjF(ǃbq.ǃZR(ne,this));for(let ne of te.actions)this.ǃjQ(ǃbB.ǃZR(ne,this));this.ǃJYI(te.children)}ǃNa(){let te=super.ǃNa();return te.children=this.ǃJYN(),te}ǃNF(te){if(super.ǃNF(te),!!te.hasOwnProperty("children")){let ne=[...this.children()],ie=te.children;for(let ae=0;aeae?1:(assert(te.ǃcR()===ne.ǃcR(),"expected same event block"),te.ǃcg()-ne.ǃcg())}*ǃWz(){for(let te of this.ǃOoY)yield te}ǃqr(){return this.ǃOoY.length}ǃqI(te){if(ǃJ.ǃXq(te),te=Math.floor(te),0>te||te>=this.ǃOoY.length)throw new RangeError("invalid parameter index");return this.ǃOoY[te]}ǃZg(){for(const te of this.ǃOoY)te.ǃJQo()}static ǃhR(te,ne){ǃJ.ǃCl(te),ǃJ.ǃCl(ne);let ie=ǃJ.ǃOrp(te),ae=ǃJ.ǃOrp(ne);return ǃJ.ǃsF(ie,ae)}ǃjM(te){if(te=!!te,this.ǃJYn!==te){if(app.ǃJS()&&te)return void app.ǃJn(15);if(te&&!this.ǃjq())throw new Error("branch not breakable");this.ǃJYn=te,this.ǃYQ();let ne=this.ǃcX();ne.ǃJwZ(),ne.ǃJwW(this)}}ǃQT(){return!app.ǃJS()&&this.ǃJYn}ǃjq(){return this.ǃAJ.ǃjq()}ǃjt(){return!1}ǃIh(te){ǃJ.ǃBA(te);let ne=te&&te.mode||"",ie={id:this.ǃJQB.ǃdQ(),objectClass:this.ǃJIW.ǃyg()};if("copy"!==ne&&(ie.sid=this.ǃJLH()),this.ǃEy()||(ie.disabled=!0),this.ǃQT()&&(ie.breakpoint=!0),this.ǃJN$&&(ie.behaviorType=this.ǃJN$.ǃyg()),this.ǃOoY.length){let ae={};for(let de of this.ǃWz())ae[de.ǃhb().ǃdQ()]=de.ǃIh();ie.parameters=ae}return ie}ǃJQe(te){if(ǃJ.ǃBA(te),!!te)for(let[ne,ie]of Object.entries(te))if(this.ǃJQB.ǃJQr(ne)){let Nn=this.ǃJQB.ǃJQI(ne).ǃbh();assert(0<=Nn&&Nn