"use strict";
!function(e){const t="undefined";if("object"==typeof exports&&t!=typeof ǃskH)ǃskH.exports=e();else if("function"==typeof ǃskV&&ǃskV.ǃske)ǃskV([],e);else{var s;s=t==typeof window?t==typeof global?t==typeof self?this:self:global:window,s.localforage=e()}}(function(){return function t(s,n,l){function i(o,d){if(!n[o]){if(!s[o]){var a="function"==typeof ǃskf&&ǃskf;if(!d&&a)return a(o,!0);if(e)return e(o,!0);var r=new Error("Cannot find module '"+o+"'");throw r.code="MODULE_NOT_FOUND",r}var S=n[o]={exports:{}};s[o][0].call(S.exports,function(e){var t=s[o][1][e];return i(t||e)},S,S.exports,t,s,n,l)}return n[o].exports}for(var e="function"==typeof ǃskf&&ǃskf,o=0;ot[0]&&(l=1),t[8]>t[3*l+l]&&(l=2);var i=(l+1)%3,d=(l+2)%3;n=o(t[3*l+l]-t[3*i+i]-t[3*d+d]+1),e[l]=0.5*n,n=0.5/n,e[3]=(t[3*i+d]-t[3*d+i])*n,e[i]=(t[3*i+l]+t[3*l+i])*n,e[d]=(t[3*d+l]+t[3*l+d])*n}return e},p.ǃsVz=function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},p.ǃses=a.ǃses,p.ǃol=a.ǃol,e.exports=p},function(i,a,p){var f=p(1),m={};m.create=function(){var e=new f.ǃsVj(3);return e[0]=0,e[1]=0,e[2]=0,e},m.clone=function(e){var t=new f.ǃsVj(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},m.ǃsVO=function(e,t,s){var n=new f.ǃsVj(3);return n[0]=e,n[1]=t,n[2]=s,n},m.ǃd_=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},m.set=function(e,t,s,n){return e[0]=t,e[1]=s,e[2]=n,e},m.add=function(e,t,s){return e[0]=t[0]+s[0],e[1]=t[1]+s[1],e[2]=t[2]+s[2],e},m.ǃsVL=function(e,t,s){return e[0]=t[0]-s[0],e[1]=t[1]-s[1],e[2]=t[2]-s[2],e},m.sub=m.ǃsVL,m.multiply=function(e,t,s){return e[0]=t[0]*s[0],e[1]=t[1]*s[1],e[2]=t[2]*s[2],e},m.ǃsVr=m.multiply,m.ǃdU=function(e,t,s){return e[0]=t[0]/s[0],e[1]=t[1]/s[1],e[2]=t[2]/s[2],e},m.ǃseg=m.ǃdU,m.ceil=function(e,t){return e[0]=n(t[0]),e[1]=n(t[1]),e[2]=n(t[2]),e},m.floor=function(e,t){return e[0]=s(t[0]),e[1]=s(t[1]),e[2]=s(t[2]),e},m.min=function(e,s,n){return e[0]=t(s[0],n[0]),e[1]=t(s[1],n[1]),e[2]=t(s[2],n[2]),e},m.max=function(e,t,s){return e[0]=r(t[0],s[0]),e[1]=r(t[1],s[1]),e[2]=r(t[2],s[2]),e},m.round=function(t,s){return t[0]=e(s[0]),t[1]=e(s[1]),t[2]=e(s[2]),t},m.scale=function(e,t,s){return e[0]=t[0]*s,e[1]=t[1]*s,e[2]=t[2]*s,e},m.ǃsez=function(e,t,s,n){return e[0]=t[0]+s[0]*n,e[1]=t[1]+s[1]*n,e[2]=t[2]+s[2]*n,e},m.ǃseI=function(e,t){var s=t[0]-e[0],n=t[1]-e[1],l=t[2]-e[2];return o(s*s+n*n+l*l)},m.ǃseT=m.ǃseI,m.ǃseL=function(e,t){var s=t[0]-e[0],n=t[1]-e[1],l=t[2]-e[2];return s*s+n*n+l*l},m.ǃsfs=m.ǃseL,m.length=function(e){var t=e[0],s=e[1],n=e[2];return o(t*t+s*s+n*n)},m.ǃseJ=m.length,m.ǃser=function(e){var t=e[0],s=e[1],n=e[2];return t*t+s*s+n*n},m.ǃsem=m.ǃser,m.ǃsfS=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},m.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e},m.normalize=function(e,t){var s=t[0],n=t[1],l=t[2],i=s*s+n*n+l*l;return 0>>18,n[1]=128|(258048&l)>>>12,n[2]=128|(4032&l)>>>6,n[3]=128|63&l):2048e||this.ǃsfi<=e||0>t||this.ǃsfi<=t)throw new Error(e+","+t);return this.ǃgm[e][t]},ǃsfu:function(){return this.ǃsfi},ǃsfn:function(){this.ǃsfb(!1,this.ǃsfx())},ǃsfb:function(e,s){this.ǃsfi=4*this.ǃsfX+17,this.ǃgm=Array(this.ǃsfi);for(var n=0;n
",R=X(t),i.ǃsnp.ǃsjM=R}();var k;typeof window.getComputedStyle==x?typeof document.documentElement.currentStyle==x?h.ǃs_U("No means of obtaining computed style properties found"):k=function(s,e){return s.currentStyle?s.currentStyle[e]:""}:k=function(s,e){return G(s).getComputedStyle(s,null)[e]},C.prototype={ǃsjF:null,ǃsjo:function(){return!!this.ǃsjG},next:function(){var s=this.ǃsjF=this.ǃsjG,n,e;if(this.ǃsjF)if(n=s.firstChild)this.ǃsjG=n;else{for(e=null;s!==this.root&&!(e=s.nextSibling);)s=s.parentNode;this.ǃsjG=e}return this.ǃsjF},detach:function(){this.ǃsjF=this.ǃsjG=this.root=null}},W.prototype={ǃol:function(t){return!!t&&this.node===t.node&&this.offset==t.offset},ǃsjK:function(){return"[DomPosition("+e(this.node)+":"+this.offset+")]"},toString:function(){return this.ǃsjK()}},Q.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},Q.prototype.toString=function(){return this.message},i.ǃsjE={ǃsjv:B,ǃsjQ:function(s){var e;return typeof s.namespaceURI==x||null===(e=s.namespaceURI)||"http://www.w3.org/1999/xhtml"==e},parentElement:function(s){var e=s.parentNode;return 1==e.nodeType?e:null},ǃsjX:w,ǃsjk:function(t){switch(t.nodeType){case 7:case 10:return 0;case 3:case 8:return t.length;default:return t.childNodes.length;}},ǃsji:t,ǃsjA:n,ǃsjh:function(s,e){return n(s,e,!0)},ǃsjY:K,ǃsjw:r,ǃsju:function(s){if(!s)return!1;var n=s.nodeType;return 3==n||8==n},ǃsjn:u,ǃsjb:function(s,e,t){var n=s.cloneNode(!1);if(n.deleteData(0,e),s.deleteData(e,s.length-e),u(n,s),t)for(var l=0,o;o=t[l++];)o.node==s&&o.offset>e?(o.node=n,o.offset-=e):o.node==s.parentNode&&o.offset>w(s)&&++o.offset;return n},ǃsjx:c,ǃsjp:G,ǃsjc:function(t){if(typeof t.contentWindow!=x)return t.contentWindow;if(typeof t.contentDocument!=x)return t.contentDocument.defaultView;throw h.ǃs_I("getIframeWindow: No Window object found for iframe element")},ǃsja:E,ǃs_D:P,ǃsjq:F,ǃsjy:function(s,e,t){var n;if(s?b.ǃs_f(s,"nodeType")?n=1==s.nodeType&&"iframe"==s.tagName.toLowerCase()?E(s):c(s):F(s)&&(n=s.document):n=document,!n)throw e.ǃs_I(t+"(): Parameter must be a Window object or DOM node");return n},ǃsj$:function(s){for(var e;e=s.parentNode;)s=e;return s},ǃsjH:function(o,e,n,d){var i,s,a,r,S;if(o==n)return e===d?0:d>e?-1:1;if(i=K(n,o,!0))return e<=w(i)?-1:1;if(i=K(o,n,!0))return w(i)
1
",s.collapse(e,2),s.setStart(e.firstChild,0),le=1==(""+s).length,j.removeNode(e),s.removeAllRanges()}();var ie={ǃsDj:!0,ǃsDC:!0,ǃsDD:!0,ǃsDP:!0,ǃsDd:""},oe={ǃsDj:!!0,ǃsDC:!ne,ǃsDD:!le,ǃsDP:!0},de={ǃsDZ:{ǃsDk:/[a-z0-9]+('[a-z0-9]+)*/gi,ǃsDi:!1,ǃsDc:t}},ae={ǃsD_:!1,ǃsDN:null,ǃsDe:!1,wrap:!1,direction:"forward",wordOptions:null,characterOptions:null},re={wordOptions:null,characterOptions:null},Se={wordOptions:null,characterOptions:null,trim:!1,ǃsDO:!0,ǃsDU:!0},ue={wordOptions:null,characterOptions:null,direction:"forward"},ce=j.ǃsjf,pe;!function(){var s=document.createElement("table"),e=z(document);e.appendChild(s),pe="block"==ce(s,"display"),e.removeChild(s)}();var fe={table:"table",caption:"table-caption",ǃsDB:"table-column-group",ǃsDt:"table-column",ǃsDJ:"table-header-group",ǃsDr:"table-row-group",ǃsDm:"table-footer-group",ǃsDg:"table-row",ǃsDz:"table-cell",ǃsDI:"table-cell"};m.prototype={get:function(t){return this.ǃseX.hasOwnProperty(t)?this.ǃseX[t]:null},set:function(s,e){return this.ǃseX[s]=e}};var me=0,he=0,ge={ǃsDT:function(s){var e=this.positions;return e.get(s)||e.set(s,new P(this,s))},toString:function(){return"[NodeWrapper("+j.ǃsje(this.node)+")]"}};C.prototype=ge;var ve="EMPTY",be="NON_SPACE",we="UNCOLLAPSIBLE_SPACE",Ke="COLLAPSIBLE_SPACE",Ge="TRAILING_SPACE_BEFORE_BLOCK",Ee="TRAILING_SPACE_IN_BLOCK",ye="TRAILING_SPACE_BEFORE_BR",xe="PRE_LINE_TRAILING_SPACE_BEFORE_LINE_BREAK",Le="INCLUDED_TRAILING_LINE_BREAK_AFTER_BR";G(ge,{ǃsjw:x("isCharacterDataNode",j.ǃsjw,"node"),ǃsjX:x("nodeIndex",j.ǃsjX,"node"),ǃsfQ:x("nodeLength",j.ǃsjk,"node"),ǃsDL:x("containsPositions",function(t){return j.ǃsjw(t)||!/^(area|base|basefont|br|col|frame|hr|img|input|isindex|link|meta|param)$/i.test(t.nodeName)},"node"),ǃsPs:x("isWhitespace",f,"node"),ǃsPS:x("isCollapsedWhitespace",h,"node"),ǃsPl:x("computedDisplay",s,"node"),isCollapsed:x("collapsed",g,"node"),ǃsPG:x("ignored",y,"node"),next:x("nextPos",c,"node"),ǃsPW:x("previous",p,"node"),ǃsPM:x("textNodeInfo",function(s){var l=null,o=!1,d=ce(s.parentNode,"whiteSpace"),a="pre-line"==d;return a?(l=Y,o=!0):("normal"==d||"nowrap"==d)&&(l=_,o=!0),{node:s,text:s.data,ǃsPF:l,ǃsPo:o,ǃsPK:a}},"node"),ǃsPE:x("hasInnerText",function(s,e){for(var t=this.session,n=t.ǃsDT(s.parentNode,this.ǃsjX()+1),l=t.ǃsDT(s,0),i=e?n:l,o=e?l:n;i!==o;){if(i.ǃsPv(),i.ǃsPQ())return!0;i=e?i.ǃsDw():i.ǃsDu()}return!1},"node"),ǃsPX:x("isRenderedBlock",function(s){for(var e=s.getElementsByTagName("br"),t=0,n=e.length;n>t;++t)if(!g(e[t]))return!0;return this.ǃsPE()},"node"),ǃsPk:x("trailingSpace",function(s){if("br"==s.tagName.toLowerCase())return"";switch(this.ǃsPl()){case"inline":for(var e=s.lastChild;e;){if(!y(e))return 1==e.nodeType?this.session.ǃsPi(e).ǃsPk():"";e=e.previousSibling}break;case"inline-block":case"inline-table":case"none":case"table-column":case"table-column-group":break;case"table-cell":return"\t";default:return this.ǃsPX(!0)?"\n":"";}return""},"node"),ǃsPA:x("leadingSpace",function(){switch(this.ǃsPl()){case"inline":case"inline-block":case"inline-table":case"none":case"table-column":case"table-column-group":case"table-cell":break;default:return this.ǃsPX(!1)?"\n":"";}return""},"node")});var ke={ǃsDp:"",ǃsPh:ve,ǃsPY:!1,ǃsPv:function(){var S=this;if(!S.ǃsPw){var e=S.node,t=S.offset,n="",p=ve,i=!1;if(0h)return!1;let v=S-t+c-n,b=u-s+p-l,w=n-t,K=l-s,G=c-S,E=p-u,y=e(K*G-E*w);if(e(G*b-E*v)>y)return!1;return e(w*b-K*v)<=y},ǃS.ǃsUa=function(e,t,s,n,l){let i=0,o=0,d=0,a=0;return en&&(n+=1),1e.length||(this.ǃsUR=e[0],this.ǃsU_=e[1],this.ǃsUj=e[2],this.ǃsUC=4<=e.length?e[3]:1)}set r(e){this.ǃsUd(e)}get r(){return this.ǃsUZ()}set ǃsBQ(e){this.ǃsUN(e)}get ǃsBQ(){return this.ǃsUO()}set b(e){this.ǃsUU(e)}get b(){return this.ǃsUB()}set a(e){this.ǃsUt(e)}get a(){return this.ǃsUJ()}ǃsBX(e,t){switch(e){case 0:this.ǃsUd(t);break;case 1:this.ǃsUN(t);break;case 2:this.ǃsUU(t);break;case 3:this.ǃsUt(t);break;default:throw new RangeError("invalid color index");}}ǃsBk(e){switch(e){case 0:return this.ǃsUZ();case 1:return this.ǃsUO();case 2:return this.ǃsUB();case 3:return this.ǃsUJ();default:throw new RangeError("invalid color index");}}},ǃS.ǃqf.ǃsBi=Object.freeze(ǃS.ǃX(ǃS.ǃqf,1,1,1,1)),ǃS.ǃqf.ǃsBA=Object.freeze(ǃS.ǃX(ǃS.ǃqf,0,0,0,1)),ǃS.ǃqf.ǃsBh=Object.freeze(ǃS.ǃX(ǃS.ǃqf,0,0,0,0))}"use strict",ǃS.Rect=class{constructor(e,t,s,n){this.ǃsBY=0,this.ǃsBw=0,this.ǃsBu=0,this.ǃsBn=0,e instanceof ǃS.Rect?this.ǃd_(e):this.set(e||0,t||0,s||0,n||0)}set(e,t,s,n){this.ǃsBY=+e,this.ǃsBw=+t,this.ǃsBu=+s,this.ǃsBn=+n}ǃd_(e){this.ǃsBY=e.ǃsBY,this.ǃsBw=e.ǃsBw,this.ǃsBu=e.ǃsBu,this.ǃsBn=e.ǃsBn}clone(){return new ǃS.Rect(this.ǃsBY,this.ǃsBw,this.ǃsBu,this.ǃsBn)}static ǃsBb(e,t){var s=Math.min,n=Math.max;ǃS.ǃF(e,ǃS.Rect),ǃS.ǃF(t,ǃS.Rect);const l=new ǃS.Rect;return l.ǃxH(s(e.ǃsBY,t.ǃsBY)),l.ǃRW(s(e.ǃsBw,t.ǃsBw)),l.ǃRM(n(e.ǃsBu,t.ǃsBu)),l.ǃRF(n(e.ǃsBn,t.ǃsBn)),l}static ǃqG(e){return ǃS.ǃbJ(e),new ǃS.Rect(e.left,e.top,e.right,e.bottom)}ǃol(e){return this.ǃsBY===e.ǃsBY&&this.ǃsBw===e.ǃsBw&&this.ǃsBu===e.ǃsBu&&this.ǃsBn===e.ǃsBn}ǃxH(e){this.ǃsBY=+e}ǃuA(){return this.ǃsBY}ǃRW(e){this.ǃsBw=+e}ǃx_(){return this.ǃsBw}ǃRM(e){this.ǃsBu=+e}ǃuw(){return this.ǃsBu}ǃRF(e){this.ǃsBn=+e}ǃxR(){return this.ǃsBn}toArray(){return[this.ǃsBY,this.ǃsBw,this.ǃsBu,this.ǃsBn]}ǃsUH(){return new Float64Array(this.toArray())}ǃsUV(e,t){e[t++]=this.ǃsBY,e[t++]=this.ǃsBw,e[t++]=this.ǃsBu,e[t]=this.ǃsBn}ǃsBx(e,t){e[t++]=this.ǃsBY,e[t++]=this.ǃsBw,e[t++]=this.ǃsBu,e[t++]=this.ǃsBw,e[t++]=this.ǃsBu,e[t++]=this.ǃsBn,e[t++]=this.ǃsBY,e[t]=this.ǃsBn}width(){return this.ǃsBu-this.ǃsBY}height(){return this.ǃsBn-this.ǃsBw}ǃPK(){return(this.ǃsBY+this.ǃsBu)/2}ǃuQ(){return(this.ǃsBw+this.ǃsBn)/2}offset(e,t){this.ǃsBY+=+e,this.ǃsBw+=+t,this.ǃsBu+=+e,this.ǃsBn+=+t}offsetLeft(e){this.ǃsBY+=+e}offsetTop(e){this.ǃsBw+=+e}ǃsKb(e){this.ǃsBu+=+e}ǃsBp(e){this.ǃsBn+=+e}ǃsBc(e){if(ǃS.ǃsQ(e),"x"!==e)throw new Error("invalid axis, only 'x' supported");this.ǃsBn=this.ǃsBwt?s(10*t)/10:s(t),ǃsR(n+"megabytes",t)}if(et?s(10*t)/10:s(t),ǃsR(n+"gigabytes",t)}else{let t=e/u;return t=10>t?s(10*t)/10:s(t),ǃsR(n+"terabytes",t)}};const c={ǃsJD:!1,ǃsJP:!0,ǃsJd:!0,ǃsJZ:!0,ǃsJN:!0};ǃS.ǃsJO=function(e,t){var s=Math.floor;t=Object.assign({},c,t),ǃS.ǃW.ǃw("common.time");const n=[];if(t.ǃsJP){const t=s(e/(24*3600));0n)return;if(100>=e.length&&-1===e.indexOf("\n")){let t=this.ǃsrH(s,e);if(t<=n)return void this.ǃsry.push({text:e,width:t})}let i;"word"===l?(this.ǃsrV(e),i=t):i=[...e],this.ǃsre(i,s,n,l),ǃS.ǃso(t)}ǃsrV(e){let s="",n=0;for(;nǃS.ǃK.ǃsrd(e.ǃsrZ()))}static ǃsrN(e,t){return t?t.startsWith("http:")||t.startsWith("https:")?t:(console.warn(`[LANG] Failed to find '${s}' string ${e}'`),`[${t}]`):t}static ǃlB(s){if(ǃS.ǃsQ(s),assert(t,"English language not initialised"),e){let n=e.ǃsrO(s);return n===i?(n=t.ǃsrO(s),n===i?n:ǃS.ǃW.ǃsrN(s,n)):n}return t.ǃsrO(s)}static ǃsrU(s,n){return ǃS.ǃsQ(s),ǃS.ǃwL(n),e?e.ǃsrB(n):t.ǃsrB(n)}static ǃsrt(e){return ǃS.ǃsQ(e),new ǃS.ǃs$(ǃS.ǃW.ǃlB(e))}static ǃsrJ(e){return!!ǃS.ǃW.ǃlB(e).match(/{\d+}|\{{1}.+\}{1}/g)}static ǃsrr(e){ǃS.ǃsb(e);const t=[];for(const s of e)"number"==typeof s?t.push(ǃS.ǃW.ǃPG(s)):t.push(s);return t}static ǃPG(s,n){return ǃS.ǃDF(s),n=Object.assign({},d,n),s.toLocaleString((e||t).ǃsSf(),n)}static ǃsrm(e,...t){return ǃS.ǃsQ(e),1===t.length&&ǃS.ǃgx(t[0])?ǃS.ǃsJC(ǃS.ǃW.ǃlB(e),t[0]):ǃS.ǃsJj(ǃS.ǃW.ǃlB(e),...ǃS.ǃW.ǃsrr(t))}static ǃsrg(e,...t){return ǃS.ǃsQ(e),new ǃS.ǃs$(ǃS.ǃsJj(ǃS.ǃW.ǃlB(e),...ǃS.ǃW.ǃsrr(t)))}static ǃsrz(e,t,...s){ǃS.ǃsQ(e),ǃS.ǃWh(t);const n=t&&"number"==typeof t.ǃsc?Math.floor(t.ǃsc):0;if(0>n||n>=s.length)throw new RangeError("invalid plural index");const l=s[n];if("number"!=typeof l)throw new TypeError("expected number for pluralising string");const i=ǃS.ǃW.ǃsrU(e,l),o=ǃS.ǃsJj(ǃS.ǃW.ǃlB(e+"."+i),...ǃS.ǃW.ǃsrr(s));return t&&t.ǃlw?new ǃS.ǃs$(o):o}static ǃsab(){let e=o.length,t=e-1;for(;0<=t&&!("."!==o[t][0]);--t);0>t&&(t=0);let s="";for(;te||e>=t.length?!1:t[e]}},window.addEventListener("keydown",ǃS.ǃnE.ǃqh),window.addEventListener("keyup",ǃS.ǃnE.ǃ_v),window.addEventListener("blur",ǃS.ǃnE.ǃszN)}{let e=new Set;ǃS.ǃNo=class{constructor(){throw new TypeError("static class")}static ǃNF(t){if(ǃS.ǃwL(t),e.has(t))throw new Error("pointer already captured");e.add(t)}static ǃsW(t){if(ǃS.ǃwL(t),!e.has(t))throw new Error("pointer not captured");e.delete(t)}static ǃszU(t){return ǃS.ǃwL(t),e.has(t)}}}{function e(e){a=o&&0==r?requestIdleCallback(t,{timeout:i}):setTimeout(t,e)}function t(t){if(a=-1,!d.length)return;let i=performance.now(),S=i,u=0,c=0;do s(d.shift()),S=performance.now(),++u,c=1.1*((S-i)/u);while(d.length&&(o&&0==r&&"undefined"!=typeof t?c=this.ǃsIb)return;this.ǃsIp++;let e=this.ǃsIx.shift();e.ǃszB().then((t)=>{e.resolve(t),this.ǃsIp--,this.ǃsIc()}).catch((t)=>{e.reject(t),this.ǃsIp--,this.ǃsIc()})}},"use strict",ǃS.ǃsS=class{constructor(e,t,s){ǃS.ǃuS(e),ǃS.ǃwL(t),ǃS.ǃxQ(s),this.ǃsIl=e,this.ǃsI$=t,this.ǃsIH=s||2*t,this.ǃsIV=-1,this.ǃsIe=-Infinity,this.ǃsIf=()=>this.ǃsIR(),this.ǃsI_=!1,this.ǃsIj=!1,this.ǃsIC=null}ǃ_P(e){this.ǃsIj=!!e}ǃsID(){return ǃS.ǃszt.ǃszJ()?this.ǃsIH:this.ǃsI$}ǃSY(...e){if(-1===this.ǃsIV){this.ǃsIC=e;let t=ǃS.ǃszL(),s=t-this.ǃsIe,n=this.ǃsID();s>=n&&this.ǃsIj?(this.ǃsIe=t,this.ǃsIP()):this.ǃsIV=window.setTimeout(this.ǃsIf,Math.max(n-s,4))}}ǃsIP(){this.ǃsI_=!0,this.ǃsIl(...this.ǃsIC),this.ǃsI_=!1}ǃvZ(){this.ǃsI_||(this.ǃsId(),this.ǃsIe=ǃS.ǃszL())}ǃsIR(){this.ǃsIV=-1,this.ǃsIe=ǃS.ǃszL(),this.ǃsIP()}ǃsId(){-1!==this.ǃsIV&&(window.clearTimeout(this.ǃsIV),this.ǃsIV=-1)}ǃsW(){this.ǃsId(),this.ǃsIl=null,this.ǃsIC=null,this.ǃsIf=null}},"use strict",ǃS.ǃsST={},ǃS.ǃsST.Document=class{constructor(){this.ǃsIZ=null,this.ǃsIN=null}static ǃsVb(e){ǃS.ǃsQ(e);let t=new ǃS.ǃsST.Document;return t.ǃsIO(e)}static ǃsyd(e){return new Promise((t)=>{let s=new FileReader;s.onload=(s)=>ǃS.ǃsST.Document.ǃsVb(s.target.result).then(t),s.readAsText(e)})}ǃsIO(e,t){return ǃS.ǃsQ(e),ǃS.ǃuF(t),ǃS.ǃhp(()=>{const s=new DOMParser;return this.ǃsIZ=s.parseFromString(e,t||"text/xml"),this.ǃsIN=new ǃS.ǃsST.Element(this.ǃsIZ.documentElement,this.ǃsIZ),this})}ǃoY(){return this.ǃsIZ}ǃwc(){return this.ǃsIN}ǃsVc(){return new Blob([this.ǃsIU(!0)],{type:"text/xml"})}ǃsIB(){return new XMLSerializer().serializeToString(this.ǃsIZ)}ǃsIU(e){e=!!e;let t="",s=/(>)(<)(\/*)/g,n=0,l=this.ǃsIB().replace(s,"$1\r\n$2$3");for(let s of l.split("\r\n")){let e=0;s.match(/.+<\/\w[^>]*>$/)?e=0:s.match(/^<\/\w/)?0!=n&&(n-=1):s.match(/^<\w[^>]*[^\/]>.*$/)?e=1:e=0;let l="";for(let e=0;e
",t+=lang(".time-remaining-label");let l=-1;if(2>this.ǃSMm.length)t+=lang(".calculating");else{let e=this.ǃSFs();0===e?t+=lang(".stalled"):(l=(this.ǃSMg-this.ǃSMJ)/e,l=5*Math.round(l/5),t+=5>l?lang("common.time.a-few-seconds"):ǃS.ǃsJO(l,{ǃsJD:!0}))}this.ǃSMO.innerHTML=t,ǃS.ǃW.ǃSi(),this.ǃSWI()}ǃSMS(){window.clearInterval(this.ǃsIV),this.ǃsIV=-1,super.ǃSMS()}ǃslG(){}ǃsXo(){}};ǃS.ǃK.ǃDs.ǃslw.addEventListener("load",function(){ǃS.ǃK.ǃlt.ǃslu("Download",n)})}{const e=ǃS.ǃs(),t=e.getElementById("openPopupWindowDialog"),s=ǃS.ǃl(e.URL);ǃS.ǃW.ǃG(s+"lang");const n=ǃS.ǃK.ǃlt.ǃSFG=class extends ǃS.ǃK.ǃlt{constructor(){super(t),this.ǃSM$=this.ǃslS("openPopupWindowMessage"),this.ǃSFW=this.ǃslS("openPopupWindowTryAgain"),this.ǃSFW.onclick=()=>this.ǃslG(),this.ǃsXF=this.ǃslS("openPopupWindowCancel"),this.ǃsXF.onclick=()=>this.ǃsXo(),this.ǃSMU="",this.ǃSFM=null,this.ǃSGc=!1}ǃmH(){this.ǃpa(lang("ui.dialogs.openPopupWindow.caption")),ǃS.ǃW.ǃw("ui.dialogs.openPopupWindow"),this.ǃSM$.textContent=lang(".body"),this.ǃsXF.textContent=lang("common.cancel"),this.ǃSFW.textContent=lang(".try-again"),ǃS.ǃW.ǃSi()}ǃAW(e,t){return this.ǃSMU=e,this.ǃSFM=t,super.ǃAW(t.ǃSlb)}ǃslG(){const e=Object.assign({},this.ǃSFM);e.ǃSlp=!1,ǃS.ǃK.ǃsnx.ǃsnb(this.ǃSMU,e).then((e)=>{e&&this.ǃsQV(e)})}};ǃS.ǃK.ǃDs.ǃslw.addEventListener("load",function(){ǃS.ǃK.ǃlt.ǃslu("OpenPopupWindow",n)})}{const e=ǃS.ǃs(),t=e.getElementById("fontPickerDialog"),s=250,n={ǃAp:"",ǃAc:"",ǃAa:20,ǃAq:[],ǃAy:""},l=ǃS.ǃK.ǃlt.ǃSFF=class extends ǃS.ǃK.ǃlt{constructor(){super(t),this.ǃsGE=this.ǃslS("okButton"),this.ǃsGE.onclick=()=>this.ǃslG(),this.ǃsXF=this.ǃslS("cancelButton"),this.ǃsXF.onclick=()=>this.ǃsXo(),this.ǃSFo=this.ǃslS("fontPickerLocalHeaderText"),this.ǃSFK=this.ǃslS("localFontSelect"),this.ǃSFK.addEventListener("change",()=>this.ǃSFE()),this.ǃSFv=this.ǃslS("additionalFontSection"),this.ǃSFQ=this.ǃslS("fontPickerAdditionalHeaderText"),this.ǃSFX=this.ǃslS("additionalFontSelect"),this.ǃSFX.addEventListener("change",()=>this.ǃSFk()),this.ǃSFi=this.ǃslS("sampleTextHeader"),this.ǃSFA=this.ǃslS("sampleText"),this.ǃSFh="",this.ǃSFY=this.ǃslS("fontPickerMorePreview"),this.ǃSFY.onclick=()=>this.ǃSFw(),this.ǃSFu="",this.ǃSFn="",this.ǃSFb=!1,this.ǃhi=!1,this.ǃSGc=!1}ǃmH(){ǃS.ǃW.ǃw("ui.dialogs.std.font-picker"),this.ǃpa(lang(".caption")),this.ǃSFo.textContent=lang(".loading-message"),this.ǃsGE.textContent=lang("common.ok"),this.ǃsXF.textContent=lang("common.cancel"),this.ǃSFY.textContent=lang(".more-preview"),ǃS.ǃW.ǃSi()}ǃAW(e,t){ǃS.ǃbJ(e),e=Object.assign({},n,e),ǃS.ǃsQ(e.ǃAp),ǃS.ǃsQ(e.ǃAc),ǃS.ǃsb(e.ǃAq),ǃS.ǃsQ(e.ǃAy),this.ǃSFb||this.ǃhi||this.ǃSFx(),this.ǃSFu=e.ǃAp||"",this.ǃSFn=this.ǃSFu,this.ǃSFh=e.ǃAc||"";let l=e.ǃAa;return 72=s.left&&et&&(e=t)}this.ǃSo$(`${e}px`),this.ǃRh.ǃcQ(!0),this.ǃRh.ǃsAq()}else this.ǃSKh=e,this.ǃqK.style.height=`${e}px`,this.ǃsAq();this.ǃSoH()}ǃSor(){super.ǃSor(),this.ǃSSm(-1),this.ǃSoQ&&(this.ǃSoU(),this.ǃSoQ=""),this.ǃSEX(),this.ǃRh&&this.ǃRh.ǃsAq(),ǃS.ǃK.ǃbx.ǃSlh()}ǃSoy(e){super.ǃSoy(e),e&&(this.ǃSoQ=e.ǃSos(),this.ǃSop=!0,e.ǃSoa()&&(this.ǃSKZ=e))}ǃhE(){if(!this.ǃSop)return;const e=new ǃS.Event("beforeundock");e.ǃWx=this,this.dispatchEvent(e),this.ǃSEQ(!0);let n=null,l=null;this.ǃSKE()&&(l=this.ǃSog.ǃuX(),this.ǃRh=this.ǃSog.ǃlc(),this.ǃSoQ=this.ǃSog.ǃSos(),this.ǃSog.ǃSKt(this),1===this.ǃSog.ǃWE()&&(n=this.ǃSog),this.ǃSog=null);let i="left"===this.ǃSoQ||"right"===this.ǃSoQ;""===this.ǃSoQ&&(i=this.ǃRh.ǃSFd());let o=this.ǃRh.ǃSFZ();if(o&&o.ǃSov()){let e=o.ǃSos();i="left"===e||"right"===e}l||(l=this.ǃuX());let d;i?(d=l.right-l.left,d>window.innerWidth/2&&(d=window.innerWidth/2)):(d=l.bottom-l.top,d>window.innerHeight/2&&(d=window.innerHeight/2)),0>=d&&(d=t),this.ǃRh.ǃSFT(this),this.ǃSKa(),this.ǃRh.ǃcQ(),this.ǃSKq(),this.ǃSoU(),this.ǃSKU(),this.ǃSKB(this.ǃSKP,this.ǃSKD,d,s),this.ǃSo$(`${d}px`),o&&o.ǃSov()&&o.ǃSoQ?this.ǃSoQ=o.ǃSoQ:!this.ǃSoQ&&(this.ǃSoQ=i?"left":"top"),document.body.appendChild(this.ǃqK),this.ǃSop=!1,this.ǃSom=!1,this.ǃsAq(),this.ǃRh=this.ǃRh.ǃSof(),this.ǃRh.ǃSoj(),n&&!n.ǃSoa()&&(n.ǃSKJ()?this.ǃRh.ǃSoc(n):ǃS.ǃK.ǃo.ǃSFI.ǃSEk(n)),this.ǃGL(),this.ǃSEQ(!1),this.ǃRh.ǃSoZ();const a=new ǃS.Event("afterundock");a.ǃWx=this,this.dispatchEvent(a),this.ǃqK.setAttribute("role","complementary")}ǃSp(e,t,s){var n=Math.min,l=Math.max;if(ǃS.ǃSd(e,ǃS.ǃK.ǃo),ǃS.ǃuF(t),ǃS.ǃSd(s,ǃS.ǃK.ǃo.ǃGm),this.ǃSop)return;if(ǃS.ǃSx.ǃSb)return this.ǃSoQ="left"===t||"top"===t?"left":"right",void this.ǃSKz();if(!e&&!t&&!s&&this.ǃSKZ)return this.ǃSKZ.ǃGg(this),void this.ǃSKZ.ǃGz(this);const i=new ǃS.Event("beforedock");i.ǃWx=this,this.dispatchEvent(i),this.ǃSEQ(!0),e||(e=this.ǃRh),e.ǃY()||(e=ǃS.ǃK.ǃ_t.ǃSEi(),assert(e&&e.ǃY(),"Nowhere to dock this pane to"));let o=t;if(t||(this.ǃSoQ=""),s&&s.ǃSov()){let e=s.ǃSos();e&&(o=e)}e.ǃSFd()?"top"===o?o="left":"bottom"===o&&(o="right"):"left"===o?o="top":"right"===o&&(o="bottom");let d=this.ǃuX(),a=d.right-d.left;this.ǃRh=e,s&&s.ǃSov()?"left"===o||"right"===o?s.ǃSon()?a=n(s.ǃEu()/2,l(a,this.ǃSGQ())):(a=l(s.ǃEu()/2,this.ǃSGQ()),s.ǃXV(s.ǃEu()/2)):("top"===o||"bottom"===o)&&(s.ǃSon()?a=n(s.ǃEn()/2,l(a,this.ǃSGX())):(a=l(s.ǃEn()/2,this.ǃSGX()),s.ǃXe(s.ǃEn()/2))):!s&&("left"===o||"right"===o?a=n(this.ǃRh.ǃEu()/2,a):("top"===o||"bottom"===o)&&(a=n(this.ǃRh.ǃEn()/2,a))),this.ǃSKr(o),this.ǃSop=!0,document.body.removeChild(this.ǃqK),t&&this.ǃSo$(`${a}px`),this.ǃSEX(),this.ǃRh.ǃSFL(this,s,t),this.ǃRh.ǃcQ(),ǃS.ǃK.ǃbx.ǃSlh(),this.ǃSEQ(!1);const r=new ǃS.Event("afterdock");r.ǃWx=this,this.dispatchEvent(r),this.ǃqK.setAttribute("role","section")}ǃVZ(){this.ǃhE(),this.ǃwo()}ǃGL(){this.ǃSKE()?(this.ǃSog.ǃGz(this),this.ǃSog.ǃGL()):super.ǃGL()}ǃSEA(e){var t=Math.max;if(e=!!e,!(!this.ǃSov()||this.ǃSKJ()||this.ǃSKm())){e&&(this.ǃiE(this.ǃSKD,!0),this.ǃiQ(this.ǃSKP,!0));let s=this.ǃuX(),n=window.innerWidth,l=window.innerHeight;s.right>n&&this.ǃiE(t(this.ǃbi()-(s.right-n),0),!0),0>s.left&&this.ǃiE(this.ǃbi()-s.left,!0),s.bottom>l&&this.ǃiQ(t(this.ǃbV()-(s.bottom-l),0),!0),0>s.top&&this.ǃiQ(this.ǃbV()-s.top,!0)}}ǃSEh(){let t=new ǃS.Event("activate");t.ǃWx=this,this.dispatchEvent(t)}ǃSEW(t){let s=new ǃS.Event("displaystylechange");s.ǃWx=this,s.visible=t,this.dispatchEvent(s)}ǃSGo(e,t){if(ǃS.ǃwL(e),ǃS.ǃwL(t),this.ǃSKE()||!this.ǃSoQ)return"";let s=this.ǃuX(),n=ǃS.ǃK.ǃSSY(),l=2*n,i="";if(e>s.left+n&ðis.ǃSwM(),this.ǃSwF=!0,this.ǃSwo=(t)=>this.ǃSwK(t),this.ǃSwE=0,this.ǃSwv=0,this.ǃhJ=-1,this.ǃhr=0,this.ǃhm=0,this.ǃSik=!1,this.ǃYY=null,this.ǃYu=null,this.ǃSwQ=null,this.ǃSwX=0,this.ǃSwk=0,this.ǃcZ=(t)=>this.ǃYC(t),this.ǃyK=(t)=>this.ǃyE(t),this.ǃaj=()=>this.ǃaC(),this.ǃSwi=null,this.ǃcD=!1,this.ǃcN=(t)=>this.ǃcO(t),this.ǃSwA=null,this.ǃSwh=null,this.ǃqd=null,this.ǃSwY=null,this.ǃSww=null,this.ǃSMn=null,this.ǃSwu=null,this.ǃSwn=null,this.ǃSib=null,this.ǃSwb=null,this.ǃSwx=null,this.ǃSwp=null,this.ǃSwc=-1,this.ǃaE()||(this.ǃqK=ǃS.ǃK.ǃhY("ui-treeitem",this.ǃSWs.ǃSwa(),null,null,null,o),this.ǃqK.setAttribute("role","treeitem"),this.ǃqK.addEventListener("contextmenu",this.ǃcN),!this.enable&&this.ǃqK.setAttribute("disable",""),this.ǃyo=ǃS.ǃX(ǃS.ǃK.ǃGo,this.ǃWB.ǃSYf().ǃSQk(),this.ǃqK),this.ǃSwi=ǃS.ǃK.ǃhY("div",this.ǃqK,null,"tree-item-wrap"),this.ǃSwq().addEventListener("UIDoubleTap",this.ǃcZ),this.ǃqd=ǃS.ǃX(ǃS.ǃK.ǃGo,this.ǃSXa||this.ǃWB.ǃSYe(),this.ǃSwi),this.ǃSwY=(t)=>this.ǃSwy(t),this.ǃqd.ǃY().addEventListener("UIPointerDown",this.ǃSwY),this.ǃSww=ǃS.ǃK.ǃhY("span",this.ǃSwi,null,"tree-item-name"),this.ǃSww.textContent=this.ǃsMN,this.ǃSwb=()=>this.ǃSw$(),this.ǃcd=(t)=>this.ǃYj(t),this.ǃSwq().addEventListener("UIPointerDown",this.ǃcd),this.ǃYY=(t)=>this.ǃYw(t),this.ǃYu=(t)=>this.ǃYn(t)),this.ǃGj=!1}ǃSwH(e){e=!!e,this.ǃSwS=e}ǃTw(){return this.ǃSwS}ǃFA(){this.ǃaN(),this.ǃSws=!0;for(let e=this.ǃSWS.length-1,t;0<=e;--e)t=this.ǃSWS[e],t.ǃSwH(!0),t.ǃsW();ǃS.ǃso(this.ǃSWS),this.ǃSws=!1,this.ǃSwV()}ǃSWP(e){if(ǃS.ǃF(e,ǃS.ǃK.ǃi.ǃFj),!this.ǃSws){let t=this.ǃSWS.indexOf(e);assert(0<=t,"cannot find child to remove"),this.ǃSWS.splice(t,1),this.ǃSWS.length||this.ǃSwV()}}ǃsW(e){if(this.ǃaE()&&!e)throw new Error("root item cannot be removed");this.ǃSwe(),this.ǃSwo=null,this.ǃSwf(),this.ǃaN(),this.ǃFa(!1),this.ǃWB.ǃSYB()===this&&(1<=this.ǃWB.ǃIJ()?this.ǃWB.ǃSYU(this.ǃWB.ǃra()):this.ǃWB.ǃSYU(null)),this.ǃFA(),this.ǃaj=null,this.ǃSwb=null,this.ǃaE()||(this.ǃSwq().removeEventListener("UIDoubleTap",this.ǃcZ),this.ǃSwq().removeEventListener("UIPointerDown",this.ǃcd),this.ǃoY().removeEventListener("UIPointerMove",this.ǃYY),this.ǃoY().removeEventListener("UIPointerUp",this.ǃYu)),this.ǃyo&&(this.ǃyo.ǃY().removeEventListener("UITap",this.ǃyK),this.ǃyo.ǃsW(),this.ǃyo=null),this.ǃSwl&&(ǃS.ǃK.ǃYz(this.ǃSwl),this.ǃSwl=null),this.ǃSww&&(ǃS.ǃK.ǃYz(this.ǃSww),this.ǃSww=null),this.ǃSwQ&&(ǃS.ǃK.ǃYz(this.ǃSwQ),this.ǃSwQ=null),this.ǃSwA&&(this.ǃSwA.removeEventListener("change",this.ǃSwh),this.ǃSwh=null,ǃS.ǃK.ǃYz(this.ǃSwA),this.ǃSwA=null),this.ǃqd&&(this.ǃqd.ǃY().removeEventListener("UIPointerDown",this.ǃSwY),this.ǃSwY=null,this.ǃqd.ǃsW(),this.ǃqd=null),this.ǃSwi&&(ǃS.ǃK.ǃYz(this.ǃSwi),this.ǃSwi=null),this.ǃqK&&(this.ǃqK.removeEventListener("contextmenu",this.ǃcN),ǃS.ǃK.ǃYz(this.ǃqK),this.ǃqK=null),this.ǃcN=null,this.ǃcZ=null,this.ǃcd=null,this.ǃYY=null,this.ǃYu=null,this.ǃSwW=null,this.ǃyK=null,this.ǃSWs&&this.ǃSWs.ǃSWP(this),this.ǃaE()||this.ǃWB.ǃSYZ(this,"itemremove"),this.ǃSXa=null,this.ǃSKx=null,this.ǃWB=null,this.ǃSWs=null,ǃS.ǃsW(this)}ǃY(){return this.ǃqK}ǃrj(){return this.ǃSwi}ǃSwq(){return this.ǃWB.ǃSYP()?this.ǃqK:this.ǃSwi}ǃFW(){return this.ǃWB}ǃoY(){return this.ǃqK.ownerDocument}ǃxJ(e){e=!!e;this.enable===e||(this.enable=e,this.enable?this.ǃqK.setAttribute("disable",""):this.ǃqK.removeAttribute("disable"))}ǃxr(){return this.enable}*ǃSYt(){this.ǃaE()||(yield this);for(const e of this.ǃSWS)yield*e.ǃSYt()}*ǃSYJ(){if(this.ǃaE()||(yield this),this.ǃFr())for(const e of this.ǃSWS)yield*e.ǃSYJ()}*children(){for(let e of this.ǃSWS)yield e}ǃYj(t){let e=t.detail;e.ǃbp!==ǃS.ǃba.ǃbc||(this.ǃWB.ǃSYZ(this,"itemdown"),this.ǃSwq().setAttribute("pointerheld",""),this.ǃoY().addEventListener("UIPointerMove",this.ǃYY),this.ǃoY().addEventListener("UIPointerUp",this.ǃYu),this.ǃhJ=e.id,this.ǃhr=e.clientX,this.ǃhm=e.clientY,this.ǃSik=!1)}ǃYw(t){let e=t.detail;if(e.id===this.ǃhJ){if(this.ǃWB.ǃSYD()&&!this.ǃSik&&ǃS.ǃbO(this.ǃhr,this.ǃhm,e.clientX,e.clientY)>=10)if(this.ǃSwq().removeAttribute("pointerheld",""),this.ǃWB.ǃSYZ(this,"dragstart")){this.ǃSik=!0,this.ǃSwe(),this.ǃWB.ǃSYU(this),this.ǃFc()||this.ǃlU();for(let e of this.ǃWB.ǃoQ())e.ǃSwq().setAttribute("dragged","");1===this.ǃWB.ǃIJ()?(this.ǃSwQ=this.ǃSwi.cloneNode(!0),this.ǃSwQ.removeAttribute("selected"),this.ǃSwQ.setAttribute("drag-thumbnail","")):(this.ǃSwQ=this.ǃSww.cloneNode(!0),this.ǃSwQ.setAttribute("drag-thumbnail",""),this.ǃSwQ.textContent=ǃsp("ui.controls.tree.multi-select-drag-tooltip",null,this.ǃWB.ǃIJ()));let e=ǃS.ǃsOK(this.ǃqK,"dialog");if(e){e.appendChild(this.ǃSwQ);let t=ǃS.ǃK.ǃlt.ǃSWu(e);this.ǃSwX=t.ǃSMi(),this.ǃSwk=t.ǃSMA()}else this.ǃoY().body.appendChild(this.ǃSwQ);this.ǃWB.ǃM_()}else return this.ǃhJ=-1,this.ǃoY().removeEventListener("UIPointerMove",this.ǃYY),this.ǃoY().removeEventListener("UIPointerUp",this.ǃYu),void(this.ǃFc()||this.ǃlU());this.ǃSik&&(t.preventDefault(),this.ǃWB.ǃSYL(this,"dragmove",e.clientX,e.clientY),this.ǃSwQ.style.left=`${e.clientX-this.ǃSwX}px`,this.ǃSwQ.style.top=`${e.clientY-this.ǃSwk}px`,this.ǃWB.ǃMC(e.clientX,e.clientY))}}ǃSwK(t){this.ǃSwE=t.detail.clientX,this.ǃSwv=t.detail.clientY}ǃYn(t){let e=t.detail;if(e.id===this.ǃhJ)if(this.ǃSwq().removeAttribute("pointerheld",""),this.ǃoY().removeEventListener("UIPointerMove",this.ǃYY),this.ǃoY().removeEventListener("UIPointerUp",this.ǃYu),this.ǃSik){this.ǃSik=!1,this.ǃhJ=-1;for(let e of this.ǃWB.ǃoQ())e.ǃSwq().removeAttribute("dragged");ǃS.ǃK.ǃYz(this.ǃSwQ),this.ǃSwQ=null,this.ǃWB.ǃSYq(),this.ǃWB.ǃSYL(this,"drop",e.clientX,e.clientY)}else{if(t.target===this.ǃSwA)return;this.ǃWB.ǃSY_()&&this.ǃFc()&&1===this.ǃWB.ǃIJ()&&this.ǃox(e.clientX,e.clientY,"label")&&(this.ǃSwe(),t.target!==this.ǃqd.ǃY()&&(this.ǃSwE=e.clientX,this.ǃSwv=e.clientY,this.ǃoY().addEventListener("UIPointerMove",this.ǃSwo),this.ǃSwG=setTimeout(this.ǃSwW,700))),this.ǃWB.ǃSYZ(this,"itemclick");let s=this.ǃWB.ǃSYB();if(this.ǃWB.ǃSYj()){let e=ǃS.ǃnE.ǃnK(),t=ǃS.ǃnE.ǃDG(ǃS.ǃnw.ǃNT);if(e&&t&&s)return this.ǃWB.ǃSYr(this,s),this.ǃFc()&&this.ǃWB.ǃSYU(this),this.ǃWB.ǃSYC()&&this.ǃSwR(!0),void this.ǃWB.ǃSYZ(this,"afteritemclick");if(e){let e=!this.ǃFc();return this.ǃFa(e),this.ǃFc()&&this.ǃWB.ǃSYU(this),this.ǃWB.ǃSYC()&&this.ǃSwR(e),void this.ǃWB.ǃSYZ(this,"afteritemclick")}if(t&&s)return this.ǃWB.ǃFY(!0),this.ǃWB.ǃSYr(this,s),this.ǃWB.ǃSYC()&&(this.ǃSwR(!0),s.ǃSwR(!0)),void this.ǃWB.ǃSYZ(this,"afteritemclick")}this.ǃWB.ǃSYU(this),this.ǃSw_(!1),this.ǃWB.ǃFY(),this.ǃFa(!0),this.ǃSw_(!0),this.ǃWB.ǃSYC()&&this.ǃSwR(!0),this.ǃWB.ǃSYZ(this,"afteritemclick")}}ǃSwR(e){if(e=!!e,this.ǃFt())for(let t of this.children())t.ǃFa(e)}ǃYC(){this.ǃSwe(),this.ǃWB.ǃSYZ(this,"itemdoubletap")&&this.ǃSwl&&this.ǃaU(!0)}ǃSwy(t){this.ǃSwe(),t.detail.ǃbp!==ǃS.ǃba.ǃbc||this.ǃWB.ǃSYZ(this,"itemiconclick")||t.stopPropagation()}ǃFF(e){if(ǃS.ǃuS(e),e(this))return this;for(let t=0,s;tthis.ǃSYM&&(this.ǃSYM=app.ǃGK()),this.ǃSwz=l.itemType,this.ǃSwI=l.ǃSwr,this.ǃSYo=!!l.ǃWr,this.ǃSwT=[],this.ǃSYh=new Set,this.ǃSwL=[],t&&"ui-iconview"===t.tagName.toLowerCase()?(this.ǃSWs=t.parentElement,this.ǃqK=t):(this.ǃSWs=t,this.ǃqK=ǃS.ǃK.ǃhY("ui-iconview",this.ǃSWs)),this.ǃqK.setAttribute(this.ǃSwI,""),this.ǃcd=(t)=>this.ǃYj(t),this.ǃqK.addEventListener("UIPointerDown",this.ǃcd),this.ǃqK.setAttribute("tabindex",0),this.ǃSiE=()=>this.ǃSYX(),this.ǃSiv=()=>this.ǃSYk(),this.ǃqK.addEventListener("focus",this.ǃSiE),this.ǃqK.addEventListener("blur",this.ǃSiv),this.ǃqA=(t)=>this.ǃqh(t),this.ǃSus="",this.ǃSuS=null,this.ǃsiC=new ǃS.ǃsS(()=>this.ǃSul(),100),this.ǃsiC.ǃ_P(!0),this.ǃSuG=!1,this.ǃSuW=ǃS.ǃK.ǃhY("div",null,null,"iconViewNoSearchResults"),this.ǃSuM=!1,this.ǃSuF=ǃS.ǃK.ǃhY("div",this.ǃqK,null,"iconViewNoItems"),this.ǃSuF.textContent=l.ǃSwm||lang("ui.controls.icon-view.no-items-showing"),this.ǃSuo=!0,this.ǃSFC=null}ǃsW(){this.ǃsF(),this.ǃoY().removeEventListener("keydown",this.ǃqA),this.ǃqA=null,this.ǃSuS=null,this.ǃsiC.ǃsW(),this.ǃsiC=null,this.ǃqK.removeEventListener("UIPointerDown",this.ǃcd),this.ǃcd=null,ǃS.ǃK.ǃYz(this.ǃSuF),this.ǃSuF=null,ǃS.ǃK.ǃYz(this.ǃSuW),this.ǃSuW=null,this.ǃqK.removeEventListener("focus",this.ǃSiE),this.ǃqK.removeEventListener("blur",this.ǃSiv),this.ǃSiE=null,this.ǃSiv=null,ǃS.ǃK.ǃYz(this.ǃqK),this.ǃqK=null,this.ǃSWs=null,super.ǃsW()}ǃyt(e){ǃS.ǃwq(e),this.ǃSWs!==e&&(this.ǃSWs&&this.ǃSWs.removeChild(this.ǃqK),this.ǃSWs=e,this.ǃSWs.appendChild(this.ǃqK))}ǃoY(){return this.ǃqK.ownerDocument}ǃSuK(e){if(ǃS.ǃF(e,ǃS.ǃK.ǃi.ǃSuE),e.ǃSuv()!==this)throw new Error("item from different icon view")}ǃsF(){for(let e of this.ǃSwL)e.ǃs$r();ǃS.ǃso(this.ǃSwL);for(let e of this.ǃSwT)e.ǃs$r();ǃS.ǃso(this.ǃSwT),this.ǃSYh.clear(),this.ǃSuQ()}ǃSuX(e){this.ǃSuK(e),e.ǃs$r(),this.ǃSwT.splice(this.ǃSwT.indexOf(e),1),this.ǃSuQ()}ǃSYe(){return this.ǃSYM}ǃSuk(){return this.ǃSwI}ǃSYj(){return this.ǃSYo}ǃSui(e){e=!!e;this.ǃSYo===e||(!e&&this.ǃFY(),this.ǃSYo=e)}ǃY(){return this.ǃqK}ǃuX(){return this.ǃSFC||(this.ǃSFC=this.ǃqK.getBoundingClientRect()),this.ǃSFC}ǃlo(){return this.ǃSWs}ǃKC(){return this.ǃSwT}*ǃSYJ(){for(const e of this.ǃSwT)e.ǃAX()||(yield e)}ǃSuA(){return this.ǃSwT.length}ǃSuh(e){return ǃS.ǃwL(e),e=Math.floor(e),0>e||e>=this.ǃSwT.length?null:this.ǃSwT[e]}ǃSuY(){return ǃS.ǃum(this.ǃKC())}ǃSuw(e){this.ǃSuK(e);let t=this.ǃSuu(e)-1;return ǃS.ǃsNT(t,this.ǃSwT)?this.ǃSwT[t]:null}ǃSun(e){this.ǃSuK(e);let t=this.ǃSuu(e)+1;return ǃS.ǃsNT(t,this.ǃSwT)?this.ǃSwT[t]:null}ǃSub(){return"static"===this.ǃSwz?ǃS.ǃK.ǃi.ǃSuE:"sortable"===this.ǃSwz?ǃS.ǃK.ǃi.ǃSux:void 0}ǃSup(e){ǃS.ǃuS(e);for(let t of this.ǃSwT)if(e(t))return t;return null}ǃSuc(){this.ǃSwT.reverse();let e=this.ǃqK.firstChild;for(let t=this.ǃqK.children.length-1,s;0n?this.ǃSwT.unshift(i):this.ǃSwT.splice(n,0,i):this.ǃSwT.push(i),this.ǃSuQ(),i}ǃnV(e){if(ǃS.ǃsQ(e),"sortable"===this.ǃSwz)throw new Error("not yet implemented: groups for sortable icon views");let t=ǃS.ǃX(ǃS.ǃK.ǃi.ǃSuf,this,e);return this.ǃSwL.push(t),this.ǃSuQ(),t}ǃSuR(e,t){ǃS.ǃsQ(e),ǃS.ǃWh(t),this.ǃSuG=!1,t&&(this.ǃSuG=!!t.ǃSu_),this.ǃSus=e,this.ǃSuS=null,this.ǃsiC.ǃSY()}ǃSuj(e,t,s){ǃS.ǃuS(e),ǃS.ǃuF(t),ǃS.ǃWh(s),this.ǃSuG=!1,s&&(this.ǃSuG=!!s.ǃSu_),this.ǃSus=t||"",this.ǃSuS=e,this.ǃsiC.ǃSY()}ǃSul(){let e=this.ǃSus.toLowerCase(),t=!1,s=this.ǃSuS,n=!0;for(let l of this.ǃKC())if(s){let e=s(l);l.ǃas(!e),e&&(n&&(this.ǃSuG&&l.ǃlU(),n=!1),t=!0)}else if(e){let s=l.ǃSuC(e);l.ǃas(!s),s&&(n&&(this.ǃSuG&&l.ǃlU(),n=!1),t=!0)}else l.ǃas(!1),t=!0;this.ǃSuD(!t),this.ǃSuS=null;const l=new ǃS.Event("searchresultsupdate");this.dispatchEvent(l)}ǃSuQ(){let e=!this.ǃSwT.length&&!this.ǃSwL.length;this.ǃSuo===e||(this.ǃSuo=e,this.ǃSuo?this.ǃqK.appendChild(this.ǃSuF):ǃS.ǃK.ǃYz(this.ǃSuF))}ǃSuD(e){return this.ǃSuo?void 0:this.ǃSuM===e?void(this.ǃSuM&&(this.ǃSuS&&!this.ǃSus?this.ǃSuW.textContent=lang("ui.controls.icon-view.no-search-results"):this.ǃSuW.textContent=ǃsR("ui.controls.icon-view.no-text-search-results",this.ǃSus))):void(this.ǃSuM=e,this.ǃSuM?(this.ǃqK.appendChild(this.ǃSuW),this.ǃSuW.textContent=this.ǃSuS&&!this.ǃSus?lang("ui.controls.icon-view.no-search-results"):ǃsR("ui.controls.icon-view.no-text-search-results",this.ǃSus)):ǃS.ǃK.ǃYz(this.ǃSuW))}}}"use strict",ǃS.ǃK.ǃi.ǃSuE=class extends ǃS.ǃWC{constructor(e,t,s,n,l,i){ǃS.ǃF(e,ǃS.ǃK.ǃi.ǃSwg),ǃS.ǃSd(t,ǃS.ǃK.ǃW_),ǃS.ǃWf(s),ǃS.ǃxQ(l),ǃS.ǃSd(i,ǃS.ǃK.ǃi.ǃSuf),super(),this.ǃSuP=e,this.ǃSXa=t||null,this.ǃsMN=s,this.ǃSKx=n,this.ǃcD=!1,this.ǃSud=i,this.ǃSuZ=!1,this.ǃhJ=-1,this.ǃhr=0,this.ǃhm=0,this.ǃSFC=null,this.ǃqK=null,this.ǃqK=ǃS.ǃKF(l)?ǃS.ǃK.ǃhY("ui-iconviewitem",this.ǃSuP.ǃY(),null,null,null,l):ǃS.ǃK.ǃhY("ui-iconviewitem",this.ǃSud?this.ǃSud.ǃSuN():this.ǃSuP.ǃY()),this.ǃqE=ǃS.ǃK.ǃhY("div",this.ǃqK,null,"iconViewItemWrap"),this.ǃqd=ǃS.ǃX(ǃS.ǃK.ǃGo,this.ǃSXa||this.ǃSuP.ǃSYe(),this.ǃqE),this.ǃSww=ǃS.ǃK.ǃhY("span",this.ǃqE,null,"iconViewItemText"),ǃS.ǃGN(this.ǃSww,this.ǃsMN),this.ǃcZ=()=>this.ǃSuP.ǃSYZ(this,"itemdoubletap"),this.ǃqK.addEventListener("UIDoubleTap",this.ǃcZ),this.ǃcN=(t)=>this.ǃcO(t),this.ǃqK.addEventListener("contextmenu",this.ǃcN),this.ǃcd=(t)=>this.ǃYj(t),this.ǃqK.addEventListener("UIPointerDown",this.ǃcd),this.ǃYY=(t)=>this.ǃYw(t),this.ǃYu=(t)=>this.ǃYn(t)}ǃs$r(){this.ǃFa(!1),this.ǃqK.removeEventListener("UIPointerDown",this.ǃcd),this.ǃcd=null,this.ǃoY().removeEventListener("UIPointerMove",this.ǃYY),this.ǃYY=null,this.ǃoY().removeEventListener("UIPointerUp",this.ǃYu),this.ǃYu=null,this.ǃqK.removeEventListener("UIDoubleTap",this.ǃcZ),this.ǃcZ=null,this.ǃqK.removeEventListener("contextmenu",this.ǃcN),this.ǃcN=null,ǃS.ǃK.ǃYz(this.ǃSww),this.ǃSww=null,this.ǃqd.ǃsW(),this.ǃqd=null,ǃS.ǃK.ǃYz(this.ǃqE),this.ǃqE=null,ǃS.ǃK.ǃYz(this.ǃqK),this.ǃqK=null,this.ǃSuP=null,this.ǃSXa=null,this.ǃSKx=null,ǃS.ǃsW(this)}ǃoY(){return this.ǃqK.ownerDocument}ǃww(){return this.ǃoY().defaultView}ǃWj(e){ǃS.ǃF(e,ǃS.ǃK.ǃW_),this.ǃqd.ǃWj(e)}ǃLh(e){ǃS.ǃuS(e),this.ǃqd.ǃLh(e)}ǃLR(){this.ǃqd.ǃLR()}ǃYj(t){let e=t.detail;e.ǃbp!==ǃS.ǃba.ǃbc||(this.ǃSSI(),this.ǃqK.setAttribute("pointerheld",""),this.ǃoY().addEventListener("UIPointerMove",this.ǃYY),this.ǃoY().addEventListener("UIPointerUp",this.ǃYu),this.ǃhJ=e.id,this.ǃhr=e.clientX,this.ǃhm=e.clientY)}ǃYw(t){let e=t.detail;e.id!==this.ǃhJ}ǃYn(t){let e=t.detail;if(this.ǃqK&&e.id===this.ǃhJ){if(this.ǃqK.removeAttribute("pointerheld",""),this.ǃoY().removeEventListener("UIPointerMove",this.ǃYY),this.ǃoY().removeEventListener("UIPointerUp",this.ǃYu),this.ǃSuP.ǃSYZ(this,"itemclick"),this.ǃSuP.ǃSYj()){let e=ǃS.ǃnE.ǃnK(),t=ǃS.ǃnE.ǃDG(ǃS.ǃnw.ǃNT);if(e)return void this.ǃFa(!this.ǃFc())}this.ǃSuO(e.clientX,e.clientY)&&this.ǃlU()}}ǃlU(){this.ǃFc()&&1===this.ǃSuP.ǃIJ()||(this.ǃSuP.ǃFY(),this.ǃFa(!0))}ǃTD(){this.ǃFa(!1)}ǃFc(){return this.ǃcD}ǃFa(e){e=!!e;this.ǃcD===e||(e?(this.ǃSuP.ǃSYZ(this,"beforeitemselect"),this.ǃqK.setAttribute("selected",""),this.ǃSuP.ǃSYd(this)):(this.ǃqK.removeAttribute("selected"),this.ǃSuP.ǃSYN(this)),this.ǃcD=e)}ǃY(){return this.ǃqK}ǃSuv(){return this.ǃSuP}ǃSET(e){this.ǃSKx=e}ǃSs(){return this.ǃSKx}ǃuX(){return this.ǃSFC}ǃoI(e){ǃS.ǃWf(e);ǃS.ǃsJ_(this.ǃsMN,e)||(this.ǃsMN=e,ǃS.ǃGN(this.ǃSww,this.ǃsMN))}ǃFJ(){return this.ǃsMN}ǃas(e){e=!!e;this.ǃSuZ===e||(this.ǃSuZ=e,this.ǃSuZ?(this.ǃFa(!1),this.ǃqK.setAttribute("hidden",""),this.ǃSud&&this.ǃSud.ǃSuU(this,!0)):(this.ǃqK.removeAttribute("hidden"),this.ǃSud&&this.ǃSud.ǃSuU(this,!1)))}ǃAX(){return this.ǃSuZ}ǃFo(){ǃS.ǃK.ǃFo(this.ǃqK,this.ǃSuP.ǃY())}ǃSuC(e){return this.ǃsMN.toLowerCase().includes(e)}ǃSSI(){this.ǃSFC=this.ǃqK.getBoundingClientRect()}ǃcO(t){this.ǃlU(),this.ǃSuP.ǃMB(this,t)||(t.preventDefault(),t.stopPropagation())}ǃSuO(e,t){if(ǃS.ǃwL(e),ǃS.ǃwL(t),!this.ǃSFC)return!1;let s=this.ǃSFC;return e>=s.left&&t>=s.top&&e=this.ǃSRe.length)throw new Error("cannot pop last line width - check push/pop pairs");this.ǃSRe.pop(),this.ǃSRV=this.ǃSRe[this.ǃSRe.length-1]}ǃS_c(){this.ǃSRf=0,this.ǃSRR[this.ǃSRR.length-1]=0}ǃS_a(){this.ǃSRf=1,this.ǃSRR[this.ǃSRR.length-1]=0}ǃS_q(){this.ǃSRf=2,this.ǃSRR[this.ǃSRR.length-1]=0}ǃS_y(){if(100<=this.ǃSRR.length)throw new Error("pushed too many line caps - check push/pop pairs");this.ǃSRR.push(0),this.ǃSRf=0}ǃsYX(){if(100<=this.ǃSRR.length)throw new Error("pushed too many line caps - check push/pop pairs");this.ǃSRR.push(1),this.ǃSRf=1}ǃOM(){if(100<=this.ǃSRR.length)throw new Error("pushed too many line caps - check push/pop pairs");this.ǃSRR.push(2),this.ǃSRf=2}ǃOv(){if(1>=this.ǃSRR.length)throw new Error("cannot pop last line cap - check push/pop pairs");this.ǃSRR.pop(),this.ǃSRf=this.ǃSRR[this.ǃSRR.length-1]}ǃjp(e){this.ǃSR_=e,this.ǃSRj[this.ǃSRj.length-1]=e}ǃS_$(){return this.ǃSR_}ǃOW(e){if(100<=this.ǃSRj.length)throw new Error("pushed too many line offsets - check push/pop pairs");this.ǃSRj.push(e),this.ǃSR_=e}ǃOE(){if(1>=this.ǃSRj.length)throw new Error("cannot pop last line offset - check push/pop pairs");this.ǃSRj.pop(),this.ǃSR_=this.ǃSRj[this.ǃSRj.length-1]}ǃswa(e){if(!this.ǃSRC.ǃol(e)){this.ǃSRC.ǃd_(e);const t=this.ǃS_S();t.ǃSee(e),this.ǃSRa=0}}ǃsuX(e,t,s,n){this.ǃSRb>=i-4&&this.ǃSfe();let l=this.ǃSRb;if(2===this.ǃSRa)this.ǃSRp[this.ǃSRc-1].ǃSVI++;else{const e=this.ǃS_S();e.ǃSe_(l),this.ǃSRa=2}const o=this.ǃSRw;o[l++]=e,o[l++]=t,o[l++]=s,o[l++]=n,this.ǃSRb=l}ǃdP(e){if(this.ǃSRx!==e){const t=this.ǃS_S();t.ǃSeC(e),this.ǃSRx=e,this.ǃSRa=0}}ǃEF(){this.ǃdP(0)}ǃKL(){this.ǃdP(2)}ǃOF(){this.ǃdP(3)}ǃsof(){this.ǃdP(4)}ǃsoR(e,t,s,n,l,i,o){if(4!==this.ǃSRx)throw new Error("must set tilemap fill mode first");const d=this.ǃS_S();d.ǃSeO(e,t,s,n,l,i,o),this.ǃSRa=0}ǃS_H(e){const t=this.ǃSeA[e];return t.ǃSVX.ǃSHD()||t.ǃSVk.ǃSHD()}ǃS_V(e){const t=this.ǃSeA[e];return!!(t.ǃSVX.ǃSHD()||t.ǃSVk.ǃSHD()||t.ǃSVH)}ǃS_e(e){return this.ǃSeA[e].ǃSVe}ǃS_f(e){const t=this.ǃSeA[e];return 0!==t.ǃSVa||0!==t.ǃSVy}ǃS_R(e){return this.ǃSeA[e].ǃSVa}ǃS__(e){return this.ǃSeA[e].ǃSVy}ǃS_j(e,t){return this.ǃSeA[e].ǃpu[t][2]}ǃS_C(e){return this.ǃSeA[e].ǃSVR}ǃZG(e,t,n,l,i,o,d,a,r,S,u){const c=this.ǃSeA[this.ǃSRx];if(c.ǃSVc||u.length){const s=this.ǃS_S();if(s.ǃSeP(),c.ǃSVc){const u=s.ǃSVL;u[0]=o,u[1]=d,t.ǃsUV(u,2),u[6]=a,u[7]=r,n.ǃsUV(u,12);const p=s.ǃSes;i.ǃsUV(p,0);const f=p[1];p[1]=p[3],p[3]=f,l.ǃsUV(s.ǃSeS,0),s.ǃSVz=S,c.ǃSVQ.ǃSHD()?(e&&(e=e.ǃSen()),assert(!e||!this.ǃSff||e!==this.ǃSff.ǃSen(),"Warning: setting texture1 to current render texture"),s.ǃSVT=e):s.ǃSVT=null}u.length&&ǃS.ǃsSB(s.ǃSel,u),this.ǃSRa=0}}ǃdm(e,t,s,n){const l=this.ǃS_S();l.ǃSec(e,t,s,n),this.ǃSRa=0}ǃsF(e){const t=this.ǃS_S();t.ǃSep(e),this.ǃSRa=0}ǃdg(e,t,s,n){if(!(0>s||0>n)){const l=this.ǃS_S();l.ǃSey(e,t,s,n),this.ǃSRa=0}}ǃjH(){this.ǃSfe(),this.ǃS_D(),this.ǃSHe.flush(),this.ǃSRJ&&this.ǃSRJ.ǃSfI(this.ǃSfP),this.ǃSfP++}ǃsTt(){return this.ǃSHe.ǃS_P()}ǃfV(){return!this.ǃSHe||this.ǃSHe.isContextLost()}ǃfW(){ǃS.ǃEQ.ǃSeg.ǃfW(),ǃS.ǃEQ.ǃdc.ǃfW(),ǃS.ǃEQ.ǃEv.ǃfW(),this.ǃSRJ&&this.ǃSRJ.ǃsF(),this.ǃSfC=null}ǃZU(){this.ǃSRm(),this.ǃKm(this.ǃsMo,this.ǃsMK,!0)}ǃS_l(){this.ǃSRt||!this.ǃSfC||(this.ǃSRt=this.ǃSRJ.ǃPT(),this.ǃSRt.ǃSfB())}ǃS_D(){this.ǃSRt&&(this.ǃSRt.ǃSft(),this.ǃSRt=null)}ǃS_d(e,t){return this.ǃSRJ?this.ǃSRJ.ǃSfT(e,t):NaN}ǃS_Z(e){this.ǃSRJ&&this.ǃSRJ.ǃSfL(e)}ǃfC(e,t){if(this.ǃfV())throw new Error("context lost");this.ǃSfe();const s=ǃS.ǃX(ǃS.ǃEQ.ǃSeg,this);return s.ǃSfW(e,t),s}ǃS_N(e,t){return this.ǃfV()?Promise.reject("context lost"):(t=Object.assign({},t),ǃS.ǃsZr.ǃsZT?(t.ǃsZL=!1,createImageBitmap(e,{premultiplyAlpha:"premultiply"}).then((e)=>this.ǃfC(e,t))):ǃS.ǃsZr.ImageBitmap?createImageBitmap(e).then((e)=>this.ǃfC(e,t)):e instanceof Blob?ǃS.ǃdF(e).then((e)=>this.ǃS_N(e,t)):e instanceof HTMLImageElement&&"function"==typeof e.decode?e.decode().then(()=>ǃS.ǃhp(()=>this.ǃfC(e,t))):ǃS.ǃhp(()=>this.ǃfC(e,t)))}ǃjC(e,t,s){this.ǃSfe();const n=ǃS.ǃX(ǃS.ǃEQ.ǃSeg,this);return n.ǃSfK(e,t,s),n}ǃjP(e,t,s){this.ǃSfe(),t.ǃSfv(e,s)}ǃfe(e){if(e&&(e.ǃSfh(),!(0{this.ǃSdZ=null,app.ǃVo(this,!0)})),this.ǃSdZ.ǃPT(e))}ǃSZy(){this.ǃSdc.clear()}ǃIh(e){let t=e.ǃsI().toLowerCase();if(this.ǃSdp.has(t))throw new Error("object class name already in use");this.ǃSdp.set(t,e)}ǃIY(e){let t=e.ǃsI().toLowerCase();if(!this.ǃSdp.has(t))throw new Error("expected object class name to exist");this.ǃSdp.delete(t)}ǃMa(e,t){let s=t.toLowerCase(),n=e.ǃsI().toLowerCase();if(!this.ǃSdp.has(s))throw new Error("expected object class name to exist");if(s!==n&&this.ǃSdp.has(n))throw new Error("object class name already in use");this.ǃSdp.delete(s),this.ǃSdp.set(n,e),this.ǃpd()}ǃSZ$(e){if(ǃS.ǃF(e,ǃoL),this.ǃSdVe.length;){let e=this.ǃSBO.pop();e.ǃsW()}for(let t=0,s=e.length;tthis.ǃSjx(),300),this.ǃStw=()=>this.ǃ_I(),app.ǃlj().addEventListener("webglcontextlost",this.ǃStw)}ǃsW(e){if(this.ǃcP)throw new Error("spritesheet was already released");this.ǃcP=!0,this.ǃStX=null,app.ǃlj().removeEventListener("webglcontextlost",this.ǃStw),this.ǃStw=null,e?this.ǃSBU.clear():this.ǃStu(),this.ǃSjx(),this.ǃSti=null,this.ǃSOe(),this.ǃSjb.ǃsW(),this.ǃSjb=null,this.ǃStE=null,ǃS.ǃsW(this)}ǃSOe(){this.ǃsGX&&(URL.revokeObjectURL(this.ǃsGX),this.ǃsGX=""),this.ǃStA=null}ǃ_I(){this.ǃSjx()}ǃsq(){return assert(0<=this.ǃSHT,"invalid sprite sheet index"),this.ǃSHT}ǃscs(){return(this.ǃStE.ǃsI()+"-sheet"+this.ǃsq()+("jpeg"===this.ǃSth?".jpg":".png")).toLowerCase()}ǃEu(){if(0>=this.ǃsMo)throw new Error("sheet not yet created");return this.ǃsMo}ǃEn(){if(0>=this.ǃsMK)throw new Error("sheet not yet created");return this.ǃsMK}ǃsT(){return this.ǃStE.ǃsT()}ǃStn(){return this.ǃSBU.size}ǃStb(){return this.ǃSth}ǃStx(t){if(t=!!t,this.ǃStE.ǃLY())throw new Error("sprite sheet collection changed");if(this.ǃStA)return Promise.resolve(this.ǃStA);if(this.ǃSti)return this.ǃSti;const s=this.ǃsT();return app.ǃStp().ǃPT(),this.ǃSti=e.ǃPT(async()=>{try{const e=await this.ǃStc(t,!0);if(app.ǃStp().ǃwo(),s.ǃWk())return null;app.ǃSta().ǃPT();const n="jpeg"===this.ǃSth?"image/jpeg":"image/png",l=await ǃS.ǃsOg(e,n,this.ǃStY);return app.ǃSta().ǃwo(),this.ǃSOe(),this.ǃStA=l,this.ǃStA}finally{this.ǃSti=null}}),this.ǃSti}ǃStq(){return assert(this.ǃStA,"no pre-rendered sprite sheet blob available"),this.ǃStA}ǃSty(){return this.ǃsGX||(this.ǃsGX=URL.createObjectURL(this.ǃStq())),this.ǃsGX}ǃSt$(){return this.ǃStq().size}ǃStH(){return this.ǃStE.ǃLY()?(this.ǃStE.ǃSBL(),this.ǃStk):(this.ǃStk&&this.ǃSjb.ǃvZ(),this.ǃStk)}ǃStV(e,t){return(this.ǃSjb.ǃvZ(),this.ǃStk)?Promise.resolve(this.ǃStk):this.ǃStX?this.ǃStX:(e=!!e,t=!!t,this.ǃStX=this.ǃSte(e,t),this.ǃStX)}async ǃSte(e,t){try{const s=await this.ǃStf(e,t);return ǃS.ǃff(this)||this.ǃcP||!s?null:(this.ǃSjb.ǃvZ(),this.ǃStk&&app.ǃfH().ǃfe(this.ǃStk),this.ǃStk=s,app.ǃlj().ǃKO(),this.ǃStk)}finally{this.ǃStX=null}}async ǃStR(e,t){if(this.ǃStQ=!1,this.ǃStE.ǃLY()&&(await this.ǃStE.ǃSBL()),ǃS.ǃff(this)||this.ǃcP||this.ǃStQ)return null;const s=await this.ǃStc();if(ǃS.ǃff(this)||this.ǃcP||this.ǃStQ||app.ǃfH().ǃfV())return null;app.ǃSt_().ǃPT();const n=await app.ǃfH().ǃS_N(s,{ǃfD:e,ǃfP:t,ǃjD:"low"!==this.ǃsT().ǃXi(),width:this.ǃsMo,height:this.ǃsMK});return app.ǃSt_().ǃwo(),app.ǃfH().ǃfV()?null:ǃS.ǃff(this)||this.ǃcP||this.ǃStQ?(app.ǃfH().ǃfe(n),null):n}async ǃStf(e,t){const s=this.ǃStR(e,t);return ǃS.ǃff(this)||this.ǃcP?null:this.ǃStQ?this.ǃStf(e,t):s}async ǃStj(e,t,s){const n=await e.ǃStC(t);return s&&e.ǃStD(),n}async ǃStc(e,t){e=!!e,t||app.ǃStp().ǃPT();const s=this.ǃsMo*this.ǃsMK>128*128,n=[...this.ǃSBU.values()].filter((e)=>!ǃS.ǃff(e)&&!e.ǃff());let l=!1;if(1===n.length){const e=n[0];l=0===e.ǃStP()&&0===e.ǃStd()&&e.ǃEu()===this.ǃsMo&&e.ǃEn()===this.ǃsMK}const i=s&&!l,o=n.map((t)=>this.ǃStj(t,e,i));if(l){const e=await o[0];return t||app.ǃStp().ǃwo(),e}const d=await Promise.all(o);return this.ǃStZ(n,d,{ǃStN:t,ǃStO:s})}ǃStZ(e,t,s){return ǃS.ǃff(this)||this.ǃcP||!e.length?null:(assert(e.length===t.length,"should have same number of ImageSprite and ImageData"),s.ǃStO?this.ǃStU(e,t,s):this.ǃStB(e,t,s))}ǃStB(e,t,s){const n=this.ǃsMo,l=this.ǃsMK,i=new ImageData(n,l),o=new Uint32Array(i.data.buffer);for(let d=0,i=e.length;dthis.ǃSJv(),30),this.ǃsMo=0,this.ǃsMK=0,this.ǃSJQ=0,this.ǃSJX=0,this.ǃsMh=new ǃS.Rect,this.ǃSJk=new window.SDK.Rect(this.ǃsMh),this.ǃSJi=n,this.ǃSJA=0,this.ǃSJh=0,this.ǃSJY=0,this.ǃSJw=0,this.ǃSJu=0,this.ǃSJn=0,this.ǃSth="png",this.ǃStY=1,this.ǃSJb="",this.ǃSJx=null,this.ǃStE.ǃSBJ(this),s.add(this),this.ǃcP=!1}ǃsW(){if(ǃS.ǃff(this))throw new Error("imageSprite was already released");if(this.ǃcP)throw new Error("imageSprite was already released");this.ǃcP=!0,this.ǃSJK=0,this.ǃStE.ǃSBz(this.ǃsXw)&&this.ǃStE.ǃSBm(this),this.ǃSJF=null,this.ǃSJo=null,s.delete(this),this.ǃSD.ǃSOw(this.ǃsXw),this.ǃsXw=-1,this.ǃStE=null,this.ǃSD=null,this.ǃSQl=null,this.ǃSsQ=null,this.ǃSJG=null,this.ǃSJW=null,this.ǃSJM=null,this.ǃsMh=null,this.ǃSJk=null,this.ǃSJx=null,this.ǃSJE.ǃsW(),this.ǃSJE=null,ǃS.ǃsW(this)}ǃff(){return this.ǃcP}ǃSBI(){return 0t.length?void this.ǃvZ():void ǃS.ǃsSB(this.ǃSgg,t)}},"use strict",window.ǃSzh=class e extends ǃSw{constructor(e,t){ǃS.ǃF(e,ǃSh),ǃS.ǃF(t,ǃdv),super(e),this.ǃsus=0.5,this.ǃsuS=0.5,this.ǃSsJ="",this.ǃSzY=t}ǃsW(){this.ǃSzY=null,super.ǃsW()}ǃvZ(){this.ǃsus=0.5,this.ǃsuS=0.5}ǃsoM(){return"image-point"}ǃKk(){return this.ǃSzY}ǃsHm(t){return ǃS.ǃF(t,e),this.ǃsus===t.ǃbi()&&this.ǃsuS===t.ǃbV()&&this.ǃSsJ===t.ǃsI()}ǃsKG(t){ǃS.ǃF(t,e);t===this||(this.ǃKx(t.ǃsI()),this.ǃSWw(t.ǃbi(),t.ǃbV()))}ǃKx(e){ǃS.ǃsQ(e),this.ǃSsJ=e}ǃsI(){return this.ǃSsJ}ǃSzw(e,t){this.ǃSzu(e),this.ǃSzn(t)}ǃSzu(e){ǃS.ǃwL(e),this.ǃsus+=e}ǃSzn(e){ǃS.ǃwL(e),this.ǃsuS+=e}ǃSWw(e,t){this.ǃiE(e),this.ǃiQ(t)}ǃiE(e){ǃS.ǃwL(e),this.ǃsus=e}ǃiQ(e){ǃS.ǃwL(e),this.ǃsuS=e}ǃbi(){return this.ǃsus}ǃbV(){return this.ǃsuS}ǃsKM(){this.ǃsus=1-this.ǃsus}ǃsKF(){this.ǃsuS=1-this.ǃsuS}ǃSzQ(){let e=this.ǃsus;this.ǃsus=this.ǃsuS,this.ǃsuS=e,this.ǃsKM()}ǃSzX(){let e=this.ǃsus;this.ǃsus=this.ǃsuS,this.ǃsuS=e,this.ǃsKF()}ǃsq(){let e=1;for(let t of this.ǃSzY.ǃSzb()){if(this===t)return e;e++}}ǃSUX(){return[this.ǃsI(),this.ǃbi(),this.ǃbV()]}ǃpr(){return{name:this.ǃSsJ,x:this.ǃsus,y:this.ǃsuS}}ǃaA(e){ǃS.ǃbJ(e),ǃS.ǃsQ(e.name),ǃS.ǃwL(e.x),ǃS.ǃwL(e.y),this.ǃKx(e.name),this.ǃSWw(e.x,e.y)}static ǃSzA(e,t){return e.x===t.x&&e.y===t.y&&e.name===t.name}static ǃSrS(t,s,n){ǃS.ǃF(t,ǃSh),ǃS.ǃF(s,ǃS.ǃsST.Element),ǃS.ǃF(n,ǃdv);let l=ǃS.ǃX(e,t,n);return l.ǃKx(s.ǃsyZ("name")),l.ǃSWw(s.ǃsTM("x"),s.ǃsTM("y")),l}static ǃSBM(t,s,n){ǃS.ǃF(t,ǃSh),ǃS.ǃF(n,ǃdv);let l=ǃS.ǃX(e,t,n);return l.ǃaA(s),l}},"use strict";{window.ǃSmJ=class t extends ǃIr{constructor(e,t){super(e.ǃsT(),t,ǃdE),this.ǃfS=e,this.ǃaE()&&(this.ǃSsJ="Animations")}ǃKE(){return this.ǃfS}ǃwY(){this.ǃfS.ǃwY()}ǃSzx(){let e=ǃS.ǃX(ǃdE,this.ǃfS,`Animation ${this.ǃfS.ǃSgy()+1}`),t=ǃS.ǃX(ǃdv,this.ǃfS,e);return e.ǃdX(t),this.ǃPT(e),t.ǃSgE().then(()=>e)}ǃSzp(e){return Promise.resolve().then(()=>{let t=ǃS.ǃX(ǃdE,this.ǃfS,`Animation ${this.ǃfS.ǃSgy()+1}`);for(let s of e)ǃS.ǃF(s.blob,Blob),ǃS.ǃwL(s.width),ǃS.ǃwL(s.height),t.ǃSzc(s.blob,s.width,s.height);return this.ǃPT(t),t})}ǃPT(e){if(ǃS.ǃF(e,ǃdE),e.ǃSJO)throw new Error("animation already belongs to folder");e.ǃSJO=this,super.ǃPT(e),app.ǃSza(e,"animationadd")}ǃLw(){let e=ǃS.ǃX(t,this.ǃfS,this);return this.ǃSPk.push(e),app.ǃSzq(e,"animationfolderadd"),this.ǃwY(),e}ǃSPu(e){ǃS.ǃF(e,this.ǃXP()),super.ǃSPu(e),this.ǃfS.ǃsvT()}ǃrt(e,t,s,n){this.ǃSzy(()=>{super.ǃrt(e,t,s,n)})}ǃLS(e,t,s,n){this.ǃSzy(()=>{super.ǃLS(e,t,s,n)})}ǃSPf(e){this.ǃSzy(()=>{super.ǃSPf(e)})}ǃSPj(e){this.ǃSzy(()=>{super.ǃSPj(e)})}ǃSzy(e){let t=this.ǃSz$();e();let s=this.ǃSz$();t!==s&&this.ǃfS.ǃsvT()}ǃSz$(){let e=[...this.ǃSYt()];return e.find((e)=>e instanceof ǃdE)}ǃSPX(){app.ǃSzq(this,"animationfolderadd"),this.ǃwY()}ǃSPQ(){this.ǃwY(),app.ǃSzq(this,"animationfolderremove")}ǃPr(e,t){ǃS.ǃbJ(e),ǃS.ǃbJ(t),this.ǃaE()||this.ǃKx(e.name);let s=[];for(let n of e.subfolders){let e=this.ǃLw();s.push(e.ǃPr(n,t))}let n=[];for(let s of e.items){let e=ǃS.ǃX(ǃdE,this.ǃfS);n.push(e.ǃSzH(s,t)),this.ǃPT(e)}return Promise.all(s).then(()=>Promise.all(n)).then(()=>this)}ǃSgd(e,t){ǃS.ǃF(e,ǃS.ǃsST.Element),ǃS.ǃF(t,ǃS.ǃskX),this.ǃaE()||this.ǃKx(e.ǃsyZ("name"));let s=[];for(let n of e.children("animation-folder")){let e=this.ǃLw();s.push(e.ǃSgd(n,t))}let n=[];for(let s of e.children("animation")){let e=ǃS.ǃX(ǃdE,this.ǃfS);n.push(e.ǃSzV(s,t)),this.ǃPT(e)}return Promise.all(s).then(()=>Promise.all(n)).then(()=>this)}static ǃSze(t,s,n){return new Promise((l,i)=>{let o=!1;const d=Array.prototype.map.call(t,(t)=>{if(!(t instanceof ImageData)&&!(t instanceof Blob)&&!(t instanceof File))throw new Error("data source is not supported. Use ImageData, Blob or File");return t instanceof ImageData?ǃS.ǃsOg(t).then((e)=>({blob:e,width:s||t.width,height:n||t.height})):ǃS.ǃKF(s)&&ǃS.ǃKF(n)?Promise.resolve({blob:t,width:s,height:n}):ǃS.ǃshc(t).then((e)=>({blob:t,width:e.width,height:e.height})).catch(()=>{o||(o=!0,i(new e(t)))})});Promise.all(d).then((e)=>{l(e)})})}};const e=class extends Error{constructor(e){super("decode failure"),this.ǃSzf=e}get ǃdo(){return this.ǃSzf}}}{const e=["before","after"];window.ǃdE=class t extends ǃSw{constructor(e,t){ǃS.ǃF(e,ǃvP),ǃS.ǃuF(t),super(e.ǃsT()),this.ǃSJO=null,this.ǃfS=e,this.ǃSsJ=t||"",this.ǃSzR=!1,this.ǃSz_=!1,this.ǃSzj=1,this.ǃSzC=0,this.ǃsul=5,this.ǃSzD=[],this.ǃSzP=[],this.ǃSXs=!1}ǃsW(){for(let e of this.ǃSzd())e.ǃsW();ǃS.ǃso(this.ǃSzP)}ǃsoM(){return"animation"}ǃxS(){let e=ǃS.ǃX(t,this.ǃfS,`Animation ${this.ǃfS.ǃSgy()+1}`);e.ǃSzR=this.ǃSzR,e.ǃSz_=this.ǃSz_,e.ǃSzj=this.ǃSzj,e.ǃSzC=this.ǃSzC,e.ǃsul=this.ǃsul;let s=[];for(let t of this.frames())s.push(t.ǃxS(e));return Promise.all(s).then((t)=>{for(let s of t)e.ǃdX(s);return e})}ǃSzZ(){for(let e of this.frames())e.ǃbz()}ǃSPE(){let e=this.ǃfS.ǃsvz()===this;app.ǃSza(this,"beforeanimationdeleted"),this.ǃSzP=[...this.frames()];for(let e of this.ǃSzP)e.ǃSzN(!0),e.ǃSPE();super.ǃSPE(),e&&this.ǃfS.ǃsvT()}ǃSPv(){for(app.ǃSza(this,"beforeanimationundeleted");this.ǃSzP.length;){let e=this.ǃSzP.pop();e.ǃSPv(),e.ǃSzN(!1)}super.ǃSPv(),this.ǃfS.ǃsvz()===this&&this.ǃfS.ǃsvT()}ǃSPX(){app.ǃSza(this,"animationundeleted"),this.ǃwY()}ǃSPQ(){this.ǃwY(),app.ǃSza(this,"animationdeleted")}ǃTy(){if(!this.ǃSJO)throw new Error("animation not yet added to folder");return this.ǃSJO}ǃSPR(e){ǃS.ǃF(e,ǃSmJ),this.ǃSJO=e}ǃKE(){return this.ǃfS}ǃwY(){this.ǃsT().ǃWX()||(this.ǃSXs=!0,this.ǃKE().ǃwY())}ǃKx(e){if(ǃS.ǃsQ(e),!e)throw new Error("cannot set empty name");if(e=ǃS.ǃsNO(e),this.ǃSsJ!==e){if(!ǃS.ǃ$t(this.ǃSsJ,e)&&this.ǃKE().ǃsEe(e))throw new Error("duplicate animation name");if(!ǃS.ǃsNZ(e))throw new Error("name has invalid characters");this.ǃSsJ=e,this.ǃwY(),app.ǃSza(this,"animationnamechange"),app.ǃSPw(this,"projectobjectnamechange")}}ǃQM(e,t){if(ǃS.ǃsQ(e),ǃS.ǃwq(t),ǃS.ǃW.ǃw("model.animation.errors"),e=ǃS.ǃsNO(e),!ǃS.ǃsNZ(e)){let e=lang(".name-invalid.title"),s=lang(".name-invalid.message");return ǃS.ǃK.ǃi.ǃxk.ǃSk(t,"warning",e,s,{align:"bottom"}),void ǃS.ǃW.ǃSi()}if(!ǃS.ǃ$t(this.ǃSsJ,e)&&this.ǃKE().ǃsEe(e)){let s=lang(".name-used.title"),n=ǃln(".name-used.message",e);return ǃS.ǃK.ǃi.ǃxk.ǃSk(t,"warning",s,n,{align:"bottom"}),void ǃS.ǃW.ǃSi()}ǃS.ǃW.ǃSi(),this.ǃKx(e)}ǃsI(){return this.ǃSsJ}ǃSzO(e){e=!!e;this.ǃSzR===e||(this.ǃSzR=e,this.ǃwY())}ǃ$p(){return this.ǃSzR}ǃSzU(e){e=!!e;this.ǃSz_===e||(this.ǃSz_=e,this.ǃwY())}ǃsvM(){return this.ǃSz_}ǃSzB(e){if(ǃS.ǃwL(e),e=Math.floor(e),0>=e)throw new Error("invalid repeat count");this.ǃSzj===e||(this.ǃSzj=e,this.ǃwY())}ǃsvo(){return this.ǃSzj}ǃSzt(e){if(ǃS.ǃwL(e),e=Math.floor(e),0!==e&&(0>e||e>=this.ǃSzD.length))throw new Error("invalid frame index");this.ǃSzC===e||(this.ǃSzC=e,this.ǃwY())}ǃsvF(){return this.ǃSzC}ǃSzJ(e){ǃS.ǃwL(e),e=ǃS.ǃnG(e,-60,60);this.ǃsul===e||(this.ǃsul=e,this.ǃwY())}ǃsvW(){return this.ǃsul}ǃSzr(){let e=[];for(let t of this.frames())e.push(t.ǃKA());return Promise.all(e)}ǃSzm(){let e=[];for(let t of this.frames())e.push(t.ǃStC());return Promise.all(e)}ǃsEf(){let e=0;for(let t of this.frames())e++;return e}ǃSzg(){return this.ǃSzD.length}ǃsEJ(e){if(ǃS.ǃwL(e),e=Math.floor(e),0>e||e>=this.ǃSzD.length)return null;let t=0;for(let s of this.frames()){if(t===e)return s;t++}return null}ǃSzz(e){return ǃS.ǃwL(e),e=Math.floor(e),0>e||e>=this.ǃSzD.length?null:this.ǃSzD[e]}ǃSzI(){return this.ǃsEJ(this.ǃsEf()-1)}ǃSzT(){this.ǃSzD=this.ǃSzD.reverse(),app.ǃSza(this,"animationframeorderchange"),this.ǃfS.ǃsvT()}ǃSzL(e,t){ǃS.ǃwL(e),ǃS.ǃwL(t);let s=e,n=t;if(e=this.ǃSIs(this.ǃsEJ(e)),t=this.ǃSIs(this.ǃsEJ(t)),0>e||e>=this.ǃSzD.length)throw new Error("invalid frame index");if(0>t||t>=this.ǃSzD.length)throw new Error("invalid frame index");e===t||(this.ǃSzD.splice(t,0,this.ǃSzD.splice(e,1)[0]),app.ǃSza(this,"animationframeorderchange"),(0===s||0===n)&&this.ǃfS.ǃsvT())}ǃSIS(e){if(ǃS.ǃF(e,Map),ǃS.ǃsNu(ǃdv,...e.keys()),ǃS.ǃsNv(...e.values()),[...e.keys()].length!==this.ǃsEf())throw new Error("new order map must have the same amount of entries as frames in the animation");let t=[];for(let s of e.keys()){if(s.ǃsvm()!==this)throw new Error("frame does not belong to animation");if(!s.ǃsA())throw new Error("frame to re order is not active");t.push(this.ǃSzD.splice(this.ǃSzD.indexOf(s),1)[0])}if(0!==this.ǃsEf())throw new Error("no active frames can remain");for(;t.length;){let s=t.pop(),n=e.get(s);this.ǃSzD[n]=s}this.ǃfS.ǃsvT(),app.ǃSza(this,"animationframeorderchange")}*frames(){for(let e of this.ǃSzD)e.ǃsA()&&(yield e)}*ǃSzd(){yield*this.ǃSzD}ǃSIl(e,t){ǃS.ǃxQ(e),ǃS.ǃxQ(t);let s=ǃS.ǃX(ǃdv,this.ǃfS,this);return this.ǃdX(s),s.ǃSgE(e,t).then(()=>s)}ǃSzc(e,t,s){if(ǃS.ǃF(e,Blob),ǃS.ǃwL(t),ǃS.ǃwL(s),0>=t||0>=s)throw new Error("invalid width and height values provided");let n=ǃS.ǃX(ǃdv,this.ǃfS,this);return this.ǃdX(n),n.ǃdQ(e,t,s)}ǃdX(t,s,n){if(ǃS.ǃF(t,ǃdv),ǃS.ǃSd(s,ǃdv),ǃS.ǃuF(n),t.ǃsvm()!==this)throw new Error("animation frame belongs to different animation");if(this.ǃSzD.includes(t))throw new Error("animation frame already in this animation");if(!t.ǃsA())throw new Error("frame to add is not active");if(!s&&!n)return this.ǃSzD.push(t),this.ǃwY(),void app.ǃSza(this,"animationframeadded");if(!s&&n)throw new Error("animation Addframe method was called with invalid arguments. Missing argument 'pivotframe' of type AnimationFrame.");if(s&&!n)throw new Error("animation Addframe method was called with invalid arguments. Missing argument 'position' of type String.");if(!s.ǃsA())throw new Error("pivotframe is not active");if(!e.includes(n))throw new Error(`invalid position: ${n}. Valid positions are ${e.toString()}.`);let l=this.ǃSIs(s);"before"===n&&(this.ǃSzD.splice(l,0,t),0===this.ǃSIG(s)&&this.ǃfS.ǃsvT()),"after"===n&&this.ǃSzD.splice(l+1,0,t),this.ǃwY(),app.ǃSza(this,"animationframeadded")}ǃSIG(e){if(ǃS.ǃF(e,ǃdv),e.ǃsvm()!==this)throw new Error("animation frame belongs to different animation");if(!e.ǃsA())throw new Error("frame is not active");let t=0;for(let s of this.frames()){if(s===e)return t;t++}throw new Error("frame not found")}ǃSIs(e){ǃS.ǃF(e,ǃdv);let t=this.ǃSzD.indexOf(e);if(0>t)throw new Error("frame not in this animation");return t}ǃSUX(e){ǃS.ǃF(e,ǃslQ);let t=[...this.frames()].map((t)=>t.ǃSUX(e));return[this.ǃsI(),this.ǃsvW(),this.ǃ$p(),this.ǃsvo(),this.ǃsvF(),this.ǃsvM(),this.ǃSPF(),t]}ǃSUx(){return{name:this.ǃSsJ,isLooping:this.ǃSzR,isPingPong:this.ǃSz_,repeatCount:this.ǃSzj,repeatTo:this.ǃSzC,speed:this.ǃsul}}ǃpr(e){ǃS.ǃWh(e);let t=e&&e.mode||"",s={frames:[...this.frames()].map((t)=>t.ǃpr(e))};return"copy"!==t&&(s.sid=this.ǃSPF()),Object.assign(s,this.ǃSUx())}ǃSUe(e){this.ǃKx(e.name),this.ǃSzO(e.isLooping),this.ǃSzU(e.isPingPong),this.ǃSzB(e.repeatCount),this.ǃSzt(e.repeatTo),this.ǃSzJ(e.speed)}ǃaA(e){e.hasOwnProperty("sid")&&this.ǃSPK(e.sid),this.ǃSUe(e)}ǃSzH(e,t){ǃS.ǃbJ(e),ǃS.ǃbJ(t),this.ǃKx(e.name);let s=[],n=0;for(let l of e.frames){let e=ǃS.ǃX(ǃdv,this.ǃfS,this);this.ǃdX(e),s.push(e.ǃPz(l,t,n++))}return this.ǃaA(e),Promise.all(s).then(()=>this)}ǃSzV(e,t){if(ǃS.ǃF(e,ǃS.ǃsST.Element),ǃS.ǃF(t,ǃS.ǃskX),"animation"!==e.ǃsIg())throw new Error("expected tag name 'animation'");e.ǃsTW("sid")&&this.ǃSPK(e.ǃsTM("sid")),this.ǃKx(e.ǃsyZ("name")),this.ǃSzO(e.ǃsTF("loop")),this.ǃSzU(e.ǃsTF("pingpong"));let s=e.ǃsoc("repeatcount");0===s&&(s=1),this.ǃSzB(s),this.ǃSzJ(e.ǃsTM("speed"));let n=[];for(let s of e.children("frame")){let e=ǃS.ǃX(ǃdv,this.ǃfS,this);this.ǃdX(e),n.push(e.ǃSIW(s,t))}for(let s=e.ǃsoc("framecount")||0,l;s>this.ǃsEf();)l=ǃS.ǃX(ǃdv,this.ǃfS,this),this.ǃdX(l),n.push(l.ǃSIW(null,t));let l=e.ǃsoc("repeatto");return l=ǃS.ǃnG(l,0,this.ǃSzD.length-1),this.ǃSzt(l),Promise.all(n).then(()=>this)}}}{const e=["png","jpeg"],t=250,s=250,n=0.8;window.ǃdv=class l extends ǃSw{constructor(e,t){ǃS.ǃF(e,ǃvP),ǃS.ǃSd(t,ǃdE),super(e.ǃsT()),this.ǃfS=e,this.ǃSIM=t,this.ǃSIF=1,this.ǃUx=0.5,this.ǃUc=0.5,this.ǃSIo=[],this.ǃSIK="",this.ǃSth="png",this.ǃStY=n,this.ǃSIE=ǃS.ǃX(ǃsSD),this.ǃSIv=null,this.ǃSIQ=!1,this.ǃSIX=!1,this.ǃSIk=!1,this.ǃSIi=!1,this.ǃSIA=null,this.ǃSIh=-1,this.ǃSIY=-1,this.ǃSIw=!1,this.ǃSXg=null,this.ǃSXz=null,this.ǃSXI=null,this.ǃSIu="",this.ǃSIn=new window.SDK.IAnimationFrame(this),this.ǃfS.ǃSgb(this)}ǃsW(){this.ǃfS.ǃSgp(this),this.ǃSIn=null,!this.ǃSIv||ǃS.ǃff(this.ǃSIv)||this.ǃSIv.ǃff()||this.ǃSIb(),this.ǃSXg&&this.ǃSXg.ǃsW(),this.ǃSXz&&this.ǃSXz.ǃsW(),this.ǃSXI&&this.ǃSXI.ǃsW(),this.ǃSIE=null,this.ǃfS=null,this.ǃSIM=null,this.ǃSIA=null,this.ǃSXg=null,this.ǃSXz=null,this.ǃSXI=null,ǃS.ǃso(this.ǃSIo)}ǃsoM(){return"animation-frame"}ǃSIb(){this.ǃSIv.ǃsW(),this.ǃSIv=null}ǃSPX(){if(this.ǃSIv)throw new Error("image sprite should be null");if(!this.ǃSIA)throw new Error("backup blob required");this.ǃSIw||app.ǃSgV(this,"beforeanimationframeundeleted"),this.ǃfS.ǃSgb(this),this.ǃSIh&&this.ǃSIY?this.ǃdQ(this.ǃSIA,this.ǃSIh,this.ǃSIY):this.ǃSgQ(this.ǃSIA),this.ǃSIA=null,this.ǃSIh=-1,this.ǃSIY=-1,this.ǃSIw||app.ǃSgV(this,"animationframeundeleted"),this.ǃSIx(),this.ǃSIp()||this.ǃsvm().ǃsEJ(0)!==this||this.ǃSIw||this.ǃfS.ǃsvT()}ǃSPQ(){if(this.ǃSIA)throw new Error("backup blob is already defined");if(this.ǃSIw||app.ǃSgV(this,"beforeanimationframedeleted"),!this.ǃSIp()&&!this.ǃSIw){let e=this.ǃsvm().ǃsEJ(0);if(e){let t=e.ǃSIc(),s=this.ǃSIc();s