1var SketchCanvas=(()=>{var qt=Object.defineProperty;var Ir=Object.getOwnPropertyDescriptor;var Fr=Object.getOwnPropertyNames;var Nr=Object.prototype.hasOwnProperty;var _r=(e,t)=>{for(var i in t)qt(e,i,{get:t[i],enumerable:!0})},Mr=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Fr(t))!Nr.call(e,r)&&r!==i&&qt(e,r,{get:()=>t[r],enumerable:!(n=Ir(t,r))||n.enumerable});return e};var Dr=e=>Mr(qt({},"__esModule",{value:!0}),e);var vs={};_r(vs,{SketchCanvas:()=>ar});function on(e){return typeof e>"u"||e===null}function $r(e){return typeof e=="object"&&e!==null}function Ur(e){return Array.isArray(e)?e:on(e)?[]:[e]}function Br(e,t){var i,n,r,s;if(t)for(s=Object.keys(t),i=0,n=s.length;i<n;i+=1)r=s[i],e[r]=t[r];return e}function Hr(e,t){var i="",n;for(n=0;n<t;n+=1)i+=e;return i}function jr(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Kr=on,Yr=$r,zr=Ur,Vr=Hr,Wr=jr,Gr=Br,V={isNothing:Kr,isObject:Yr,toArray:zr,repeat:Vr,isNegativeZero:Wr,extend:Gr};function an(e,t){var i="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(i+='in "'+e.mark.name+'" '),i+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(i+=` 2 3`+e.mark.snippet),n+" "+i):n}function xt(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=an(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}xt.prototype=Object.create(Error.prototype);xt.prototype.constructor=xt;xt.prototype.toString=function(t){return this.name+": "+an(this,t)};var se=xt;function Xt(e,t,i,n,r){var s="",l="",u=Math.floor(r/2)-1;return n-t>u&&(s=" ... ",t=n-u+s.length),i-n>u&&(l=" ...",i=n+u-l.length),{str:s+e.slice(t,i).replace(/\t/g,"\u2192")+l,pos:n-t+s.length}}function Jt(e,t){return V.repeat(" ",t-e.length)+e}function qr(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var i=/\r?\n|\r|\0/g,n=[0],r=[],s,l=-1;s=i.exec(e.buffer);)r.push(s.index),n.push(s.index+s[0].length),e.position<=s.index&&l<0&&(l=n.length-2);l<0&&(l=n.length-1);var u="",h,d,x=Math.min(e.line+t.linesAfter,r.length).toString().length,m=t.maxLength-(t.indent+x+3);for(h=1;h<=t.linesBefore&&!(l-h<0);h++)d=Xt(e.buffer,n[l-h],r[l-h],e.position-(n[l]-n[l-h]),m),u=V.repeat(" ",t.indent)+Jt((e.line-h+1).toString(),x)+" | "+d.str+` 4`+u;for(d=Xt(e.buffer,n[l],r[l],e.position,m),u+=V.repeat(" ",t.indent)+Jt((e.line+1).toString(),x)+" | "+d.str+` 5`,u+=V.repeat("-",t.indent+x+3+d.pos)+`^ 6`,h=1;h<=t.linesAfter&&!(l+h>=r.length);h++)d=Xt(e.buffer,n[l+h],r[l+h],e.position-(n[l]-n[l+h]),m),u+=V.repeat(" ",t.indent)+Jt((e.line+h+1).toString(),x)+" | "+d.str+` 7`;return u.replace(/\n$/,"")}var Xr=qr,Jr=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Qr=["scalar","sequence","mapping"];function Zr(e){var t={};return e!==null&&Object.keys(e).forEach(function(i){e[i].forEach(function(n){t[String(n)]=i})}),t}function eo(e,t){if(t=t||{},Object.keys(t).forEach(function(i){if(Jr.indexOf(i)===-1)throw new se('Unknown option "'+i+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(i){return i},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=Zr(t.styleAliases||null),Qr.indexOf(this.kind)===-1)throw new se('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var J=eo;function Ki(e,t){var i=[];return e[t].forEach(function(n){var r=i.length;i.forEach(function(s,l){s.tag===n.tag&&s.kind===n.kind&&s.multi===n.multi&&(r=l)}),i[r]=n}),i}function to(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,i;function n(r){r.multi?(e.multi[r.kind].push(r),e.multi.fallback.push(r)):e[r.kind][r.tag]=e.fallback[r.tag]=r}for(t=0,i=arguments.length;t<i;t+=1)arguments[t].forEach(n);return e}function Zt(e){return this.extend(e)}Zt.prototype.extend=function(t){var i=[],n=[];if(t instanceof J)n.push(t);else if(Array.isArray(t))n=n.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(i=i.concat(t.implicit)),t.explicit&&(n=n.concat(t.explicit));else throw new se("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");i.forEach(function(s){if(!(s instanceof J))throw new se("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(s.loadKind&&s.loadKind!=="scalar")throw new se("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(s.multi)throw new se("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(s){if(!(s instanceof J))throw new se("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var r=Object.create(Zt.prototype);return r.implicit=(this.implicit||[]).concat(i),r.explicit=(this.explicit||[]).concat(n),r.compiledImplicit=Ki(r,"implicit"),r.compiledExplicit=Ki(r,"explicit"),r.compiledTypeMap=to(r.compiledImplicit,r.compiledExplicit),r};var sn=Zt,ln=new J("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),un=new J("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),fn=new J("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),cn=new sn({explicit:[ln,un,fn]});function io(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function no(){return null}function ro(e){return e===null}var hn=new J("tag:yaml.org,2002:null",{kind:"scalar",resolve:io,construct:no,predicate:ro,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function oo(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function ao(e){return e==="true"||e==="True"||e==="TRUE"}function so(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var pn=new J("tag:yaml.org,2002:bool",{kind:"scalar",resolve:oo,construct:ao,predicate:so,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function lo(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function uo(e){return 48<=e&&e<=55}function fo(e){return 48<=e&&e<=57}function co(e){if(e===null)return!1;var t=e.length,i=0,n=!1,r;if(!t)return!1;if(r=e[i],(r==="-"||r==="+")&&(r=e[++i]),r==="0"){if(i+1===t)return!0;if(r=e[++i],r==="b"){for(i++;i<t;i++)if(r=e[i],r!=="_"){if(r!=="0"&&r!=="1")return!1;n=!0}return n&&r!=="_"}if(r==="x"){for(i++;i<t;i++)if(r=e[i],r!=="_"){if(!lo(e.charCodeAt(i)))return!1;n=!0}return n&&r!=="_"}if(r==="o"){for(i++;i<t;i++)if(r=e[i],r!=="_"){if(!uo(e.charCodeAt(i)))return!1;n=!0}return n&&r!=="_"}}if(r==="_")return!1;for(;i<t;i++)if(r=e[i],r!=="_"){if(!fo(e.charCodeAt(i)))return!1;n=!0}return!(!n||r==="_")}function ho(e){var t=e,i=1,n;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),n=t[0],(n==="-"||n==="+")&&(n==="-"&&(i=-1),t=t.slice(1),n=t[0]),t==="0")return 0;if(n==="0"){if(t[1]==="b")return i*parseInt(t.slice(2),2);if(t[1]==="x")return i*parseInt(t.slice(2),16);if(t[1]==="o")return i*parseInt(t.slice(2),8)}return i*parseInt(t,10)}function po(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!V.isNegativeZero(e)}var dn=new J("tag:yaml.org,2002:int",{kind:"scalar",resolve:co,construct:ho,predicate:po,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),go=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function mo(e){return!(e===null||!go.test(e)||e[e.length-1]==="_")}function xo(e){var t,i;return t=e.replace(/_/g,"").toLowerCase(),i=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?i===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:i*parseFloat(t,10)}var vo=/^[-+]?[0-9]+e/;function yo(e,t){var i;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(V.isNegativeZero(e))return"-0.0";return i=e.toString(10),vo.test(i)?i.replace("e",".e"):i}function wo(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||V.isNegativeZero(e))}var gn=new J("tag:yaml.org,2002:float",{kind:"scalar",resolve:mo,construct:xo,predicate:wo,represent:yo,defaultStyle:"lowercase"}),mn=cn.extend({implicit:[hn,pn,dn,gn]}),xn=mn,vn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),yn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function bo(e){return e===null?!1:vn.exec(e)!==null||yn.exec(e)!==null}function So(e){var t,i,n,r,s,l,u,h=0,d=null,x,m,v;if(t=vn.exec(e),t===null&&(t=yn.exec(e)),t===null)throw new Error("Date resolve error");if(i=+t[1],n=+t[2]-1,r=+t[3],!t[4])return new Date(Date.UTC(i,n,r));if(s=+t[4],l=+t[5],u=+t[6],t[7]){for(h=t[7].slice(0,3);h.length<3;)h+="0";h=+h}return t[9]&&(x=+t[10],m=+(t[11]||0),d=(x*60+m)*6e4,t[9]==="-"&&(d=-d)),v=new Date(Date.UTC(i,n,r,s,l,u,h)),d&&v.setTime(v.getTime()-d),v}function Co(e){return e.toISOString()}var wn=new J("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:bo,construct:So,instanceOf:Date,represent:Co});function ko(e){return e==="<<"||e===null}var bn=new J("tag:yaml.org,2002:merge",{kind:"scalar",resolve:ko}),ri=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= 8\r`;function To(e){if(e===null)return!1;var t,i,n=0,r=e.length,s=ri;for(i=0;i<r;i++)if(t=s.indexOf(e.charAt(i)),!(t>64)){if(t<0)return!1;n+=6}return n%8===0}function Ao(e){var t,i,n=e.replace(/[\r\n=]/g,""),r=n.length,s=ri,l=0,u=[];for(t=0;t<r;t++)t%4===0&&t&&(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)),l=l<<6|s.indexOf(n.charAt(t));return i=r%4*6,i===0?(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)):i===18?(u.push(l>>10&255),u.push(l>>2&255)):i===12&&u.push(l>>4&255),new Uint8Array(u)}function Lo(e){var t="",i=0,n,r,s=e.length,l=ri;for(n=0;n<s;n++)n%3===0&&n&&(t+=l[i>>18&63],t+=l[i>>12&63],t+=l[i>>6&63],t+=l[i&63]),i=(i<<8)+e[n];return r=s%3,r===0?(t+=l[i>>18&63],t+=l[i>>12&63],t+=l[i>>6&63],t+=l[i&63]):r===2?(t+=l[i>>10&63],t+=l[i>>4&63],t+=l[i<<2&63],t+=l[64]):r===1&&(t+=l[i>>2&63],t+=l[i<<4&63],t+=l[64],t+=l[64]),t}function Oo(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Sn=new J("tag:yaml.org,2002:binary",{kind:"scalar",resolve:To,construct:Ao,predicate:Oo,represent:Lo}),Po=Object.prototype.hasOwnProperty,Eo=Object.prototype.toString;function Ro(e){if(e===null)return!0;var t=[],i,n,r,s,l,u=e;for(i=0,n=u.length;i<n;i+=1){if(r=u[i],l=!1,Eo.call(r)!=="[object Object]")return!1;for(s in r)if(Po.call(r,s))if(!l)l=!0;else return!1;if(!l)return!1;if(t.indexOf(s)===-1)t.push(s);else return!1}return!0}function Io(e){return e!==null?e:[]}var Cn=new J("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Ro,construct:Io}),Fo=Object.prototype.toString;function No(e){if(e===null)return!0;var t,i,n,r,s,l=e;for(s=new Array(l.length),t=0,i=l.length;t<i;t+=1){if(n=l[t],Fo.call(n)!=="[object Object]"||(r=Object.keys(n),r.length!==1))return!1;s[t]=[r[0],n[r[0]]]}return!0}function _o(e){if(e===null)return[];var t,i,n,r,s,l=e;for(s=new Array(l.length),t=0,i=l.length;t<i;t+=1)n=l[t],r=Object.keys(n),s[t]=[r[0],n[r[0]]];return s}var kn=new J("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:No,construct:_o}),Mo=Object.prototype.hasOwnProperty;function Do(e){if(e===null)return!0;var t,i=e;for(t in i)if(Mo.call(i,t)&&i[t]!==null)return!1;return!0}function $o(e){return e!==null?e:{}}var Tn=new J("tag:yaml.org,2002:set",{kind:"mapping",resolve:Do,construct:$o}),oi=xn.extend({implicit:[wn,bn],explicit:[Sn,Cn,kn,Tn]}),Fe=Object.prototype.hasOwnProperty,It=1,An=2,Ln=3,Ft=4,Qt=1,Uo=2,Yi=3,Bo=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Ho=/[\x85\u2028\u2029]/,jo=/[,\[\]\{\}]/,On=/^(?:!|!!|![a-z\-]+!)$/i,Pn=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function zi(e){return Object.prototype.toString.call(e)}function ke(e){return e===10||e===13}function Be(e){return e===9||e===32}function fe(e){return e===9||e===32||e===10||e===13}function tt(e){return e===44||e===91||e===93||e===123||e===125}function Ko(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Yo(e){return e===120?2:e===117?4:e===85?8:0}function zo(e){return 48<=e&&e<=57?e-48:-1}function Vi(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` 9`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function Vo(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var En=new Array(256),Rn=new Array(256);for(Ue=0;Ue<256;Ue++)En[Ue]=Vi(Ue)?1:0,Rn[Ue]=Vi(Ue);var Ue;function Wo(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||oi,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function In(e,t){var i={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return i.snippet=Xr(i),new se(t,i)}function k(e,t){throw In(e,t)}function Nt(e,t){e.onWarning&&e.onWarning.call(null,In(e,t))}var Wi={YAML:function(t,i,n){var r,s,l;t.version!==null&&k(t,"duplication of %YAML directive"),n.length!==1&&k(t,"YAML directive accepts exactly one argument"),r=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),r===null&&k(t,"ill-formed argument of the YAML directive"),s=parseInt(r[1],10),l=parseInt(r[2],10),s!==1&&k(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&Nt(t,"unsupported YAML version of the document")},TAG:function(t,i,n){var r,s;n.length!==2&&k(t,"TAG directive accepts exactly two arguments"),r=n[0],s=n[1],On.test(r)||k(t,"ill-formed tag handle (first argument) of the TAG directive"),Fe.call(t.tagMap,r)&&k(t,'there is a previously declared suffix for "'+r+'" tag handle'),Pn.test(s)||k(t,"ill-formed tag prefix (second argument) of the TAG directive");try{s=decodeURIComponent(s)}catch{k(t,"tag prefix is malformed: "+s)}t.tagMap[r]=s}};function Ie(e,t,i,n){var r,s,l,u;if(t<i){if(u=e.input.slice(t,i),n)for(r=0,s=u.length;r<s;r+=1)l=u.charCodeAt(r),l===9||32<=l&&l<=1114111||k(e,"expected valid JSON character");else Bo.test(u)&&k(e,"the stream contains non-printable characters");e.result+=u}}function Gi(e,t,i,n){var r,s,l,u;for(V.isObject(i)||k(e,"cannot merge mappings; the provided source object is unacceptable"),r=Object.keys(i),l=0,u=r.length;l<u;l+=1)s=r[l],Fe.call(t,s)||(t[s]=i[s],n[s]=!0)}function it(e,t,i,n,r,s,l,u,h){var d,x;if(Array.isArray(r))for(r=Array.prototype.slice.call(r),d=0,x=r.length;d<x;d+=1)Array.isArray(r[d])&&k(e,"nested arrays are not supported inside keys"),typeof r=="object"&&zi(r[d])==="[object Object]"&&(r[d]="[object Object]");if(typeof r=="object"&&zi(r)==="[object Object]"&&(r="[object Object]"),r=String(r),t===null&&(t={}),n==="tag:yaml.org,2002:merge")if(Array.isArray(s))for(d=0,x=s.length;d<x;d+=1)Gi(e,t,s[d],i);else Gi(e,t,s,i);else!e.json&&!Fe.call(i,r)&&Fe.call(t,r)&&(e.line=l||e.line,e.lineStart=u||e.lineStart,e.position=h||e.position,k(e,"duplicated mapping key")),r==="__proto__"?Object.defineProperty(t,r,{configurable:!0,enumerable:!0,writable:!0,value:s}):t[r]=s,delete i[r];return t}function ai(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):k(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function z(e,t,i){for(var n=0,r=e.input.charCodeAt(e.position);r!==0;){for(;Be(r);)r===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),r=e.input.charCodeAt(++e.position);if(t&&r===35)do r=e.input.charCodeAt(++e.position);while(r!==10&&r!==13&&r!==0);if(ke(r))for(ai(e),r=e.input.charCodeAt(e.position),n++,e.lineIndent=0;r===32;)e.lineIndent++,r=e.input.charCodeAt(++e.position);else break}return i!==-1&&n!==0&&e.lineIndent<i&&Nt(e,"deficient indentation"),n}function Dt(e){var t=e.position,i;return i=e.input.charCodeAt(t),!!((i===45||i===46)&&i===e.input.charCodeAt(t+1)&&i===e.input.charCodeAt(t+2)&&(t+=3,i=e.input.charCodeAt(t),i===0||fe(i)))}function si(e,t){t===1?e.result+=" ":t>1&&(e.result+=V.repeat(` 10`,t-1))}function Go(e,t,i){var n,r,s,l,u,h,d,x,m=e.kind,v=e.result,b;if(b=e.input.charCodeAt(e.position),fe(b)||tt(b)||b===35||b===38||b===42||b===33||b===124||b===62||b===39||b===34||b===37||b===64||b===96||(b===63||b===45)&&(r=e.input.charCodeAt(e.position+1),fe(r)||i&&tt(r)))return!1;for(e.kind="scalar",e.result="",s=l=e.position,u=!1;b!==0;){if(b===58){if(r=e.input.charCodeAt(e.position+1),fe(r)||i&&tt(r))break}else if(b===35){if(n=e.input.charCodeAt(e.position-1),fe(n))break}else{if(e.position===e.lineStart&&Dt(e)||i&&tt(b))break;if(ke(b))if(h=e.line,d=e.lineStart,x=e.lineIndent,z(e,!1,-1),e.lineIndent>=t){u=!0,b=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=h,e.lineStart=d,e.lineIndent=x;break}}u&&(Ie(e,s,l,!1),si(e,e.line-h),s=l=e.position,u=!1),Be(b)||(l=e.position+1),b=e.input.charCodeAt(++e.position)}return Ie(e,s,l,!1),e.result?!0:(e.kind=m,e.result=v,!1)}function qo(e,t){var i,n,r;if(i=e.input.charCodeAt(e.position),i!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=r=e.position;(i=e.input.charCodeAt(e.position))!==0;)if(i===39)if(Ie(e,n,e.position,!0),i=e.input.charCodeAt(++e.position),i===39)n=e.position,e.position++,r=e.position;else return!0;else ke(i)?(Ie(e,n,r,!0),si(e,z(e,!1,t)),n=r=e.position):e.position===e.lineStart&&Dt(e)?k(e,"unexpected end of the document within a single quoted scalar"):(e.position++,r=e.position);k(e,"unexpected end of the stream within a single quoted scalar")}function Xo(e,t){var i,n,r,s,l,u;if(u=e.input.charCodeAt(e.position),u!==34)return!1;for(e.kind="scalar",e.result="",e.position++,i=n=e.position;(u=e.input.charCodeAt(e.position))!==0;){if(u===34)return Ie(e,i,e.position,!0),e.position++,!0;if(u===92){if(Ie(e,i,e.position,!0),u=e.input.charCodeAt(++e.position),ke(u))z(e,!1,t);else if(u<256&&En[u])e.result+=Rn[u],e.position++;else if((l=Yo(u))>0){for(r=l,s=0;r>0;r--)u=e.input.charCodeAt(++e.position),(l=Ko(u))>=0?s=(s<<4)+l:k(e,"expected hexadecimal character");e.result+=Vo(s),e.position++}else k(e,"unknown escape sequence");i=n=e.position}else ke(u)?(Ie(e,i,n,!0),si(e,z(e,!1,t)),i=n=e.position):e.position===e.lineStart&&Dt(e)?k(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}k(e,"unexpected end of the stream within a double quoted scalar")}function Jo(e,t){var i=!0,n,r,s,l=e.tag,u,h=e.anchor,d,x,m,v,b,S=Object.create(null),A,P,F,T;if(T=e.input.charCodeAt(e.position),T===91)x=93,b=!1,u=[];else if(T===123)x=125,b=!0,u={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),T=e.input.charCodeAt(++e.position);T!==0;){if(z(e,!0,t),T=e.input.charCodeAt(e.position),T===x)return e.position++,e.tag=l,e.anchor=h,e.kind=b?"mapping":"sequence",e.result=u,!0;i?T===44&&k(e,"expected the node content, but found ','"):k(e,"missed comma between flow collection entries"),P=A=F=null,m=v=!1,T===63&&(d=e.input.charCodeAt(e.position+1),fe(d)&&(m=v=!0,e.position++,z(e,!0,t))),n=e.line,r=e.lineStart,s=e.position,nt(e,t,It,!1,!0),P=e.tag,A=e.result,z(e,!0,t),T=e.input.charCodeAt(e.position),(v||e.line===n)&&T===58&&(m=!0,T=e.input.charCodeAt(++e.position),z(e,!0,t),nt(e,t,It,!1,!0),F=e.result),b?it(e,u,S,P,A,F,n,r,s):m?u.push(it(e,null,S,P,A,F,n,r,s)):u.push(A),z(e,!0,t),T=e.input.charCodeAt(e.position),T===44?(i=!0,T=e.input.charCodeAt(++e.position)):i=!1}k(e,"unexpected end of the stream within a flow collection")}function Qo(e,t){var i,n,r=Qt,s=!1,l=!1,u=t,h=0,d=!1,x,m;if(m=e.input.charCodeAt(e.position),m===124)n=!1;else if(m===62)n=!0;else return!1;for(e.kind="scalar",e.result="";m!==0;)if(m=e.input.charCodeAt(++e.position),m===43||m===45)Qt===r?r=m===43?Yi:Uo:k(e,"repeat of a chomping mode identifier");else if((x=zo(m))>=0)x===0?k(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?k(e,"repeat of an indentation width identifier"):(u=t+x-1,l=!0);else break;if(Be(m)){do m=e.input.charCodeAt(++e.position);while(Be(m));if(m===35)do m=e.input.charCodeAt(++e.position);while(!ke(m)&&m!==0)}for(;m!==0;){for(ai(e),e.lineIndent=0,m=e.input.charCodeAt(e.position);(!l||e.lineIndent<u)&&m===32;)e.lineIndent++,m=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>u&&(u=e.lineIndent),ke(m)){h++;continue}if(e.lineIndent<u){r===Yi?e.result+=V.repeat(` 11`,s?1+h:h):r===Qt&&s&&(e.result+=` 12`);break}for(n?Be(m)?(d=!0,e.result+=V.repeat(` 13`,s?1+h:h)):d?(d=!1,e.result+=V.repeat(` 14`,h+1)):h===0?s&&(e.result+=" "):e.result+=V.repeat(` 15`,h):e.result+=V.repeat(` 16`,s?1+h:h),s=!0,l=!0,h=0,i=e.position;!ke(m)&&m!==0;)m=e.input.charCodeAt(++e.position);Ie(e,i,e.position,!1)}return!0}function qi(e,t){var i,n=e.tag,r=e.anchor,s=[],l,u=!1,h;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),h=e.input.charCodeAt(e.position);h!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,k(e,"tab characters must not be used in indentation")),!(h!==45||(l=e.input.charCodeAt(e.position+1),!fe(l))));){if(u=!0,e.position++,z(e,!0,-1)&&e.lineIndent<=t){s.push(null),h=e.input.charCodeAt(e.position);continue}if(i=e.line,nt(e,t,Ln,!1,!0),s.push(e.result),z(e,!0,-1),h=e.input.charCodeAt(e.position),(e.line===i||e.lineIndent>t)&&h!==0)k(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return u?(e.tag=n,e.anchor=r,e.kind="sequence",e.result=s,!0):!1}function Zo(e,t,i){var n,r,s,l,u,h,d=e.tag,x=e.anchor,m={},v=Object.create(null),b=null,S=null,A=null,P=!1,F=!1,T;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=m),T=e.input.charCodeAt(e.position);T!==0;){if(!P&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,k(e,"tab characters must not be used in indentation")),n=e.input.charCodeAt(e.position+1),s=e.line,(T===63||T===58)&&fe(n))T===63?(P&&(it(e,m,v,b,S,null,l,u,h),b=S=A=null),F=!0,P=!0,r=!0):P?(P=!1,r=!0):k(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,T=n;else{if(l=e.line,u=e.lineStart,h=e.position,!nt(e,i,An,!1,!0))break;if(e.line===s){for(T=e.input.charCodeAt(e.position);Be(T);)T=e.input.charCodeAt(++e.position);if(T===58)T=e.input.charCodeAt(++e.position),fe(T)||k(e,"a whitespace character is expected after the key-value separator within a block mapping"),P&&(it(e,m,v,b,S,null,l,u,h),b=S=A=null),F=!0,P=!1,r=!1,b=e.tag,S=e.result;else if(F)k(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=x,!0}else if(F)k(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=x,!0}if((e.line===s||e.lineIndent>t)&&(P&&(l=e.line,u=e.lineStart,h=e.position),nt(e,t,Ft,!0,r)&&(P?S=e.result:A=e.result),P||(it(e,m,v,b,S,A,l,u,h),b=S=A=null),z(e,!0,-1),T=e.input.charCodeAt(e.position)),(e.line===s||e.lineIndent>t)&&T!==0)k(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return P&&it(e,m,v,b,S,null,l,u,h),F&&(e.tag=d,e.anchor=x,e.kind="mapping",e.result=m),F}function ea(e){var t,i=!1,n=!1,r,s,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&k(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(i=!0,l=e.input.charCodeAt(++e.position)):l===33?(n=!0,r="!!",l=e.input.charCodeAt(++e.position)):r="!",t=e.position,i){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(s=e.input.slice(t,e.position),l=e.input.charCodeAt(++e.position)):k(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!fe(l);)l===33&&(n?k(e,"tag suffix cannot contain exclamation marks"):(r=e.input.slice(t-1,e.position+1),On.test(r)||k(e,"named tag handle cannot contain such characters"),n=!0,t=e.position+1)),l=e.input.charCodeAt(++e.position);s=e.input.slice(t,e.position),jo.test(s)&&k(e,"tag suffix cannot contain flow indicator characters")}s&&!Pn.test(s)&&k(e,"tag name cannot contain such characters: "+s);try{s=decodeURIComponent(s)}catch{k(e,"tag name is malformed: "+s)}return i?e.tag=s:Fe.call(e.tagMap,r)?e.tag=e.tagMap[r]+s:r==="!"?e.tag="!"+s:r==="!!"?e.tag="tag:yaml.org,2002:"+s:k(e,'undeclared tag handle "'+r+'"'),!0}function ta(e){var t,i;if(i=e.input.charCodeAt(e.position),i!==38)return!1;for(e.anchor!==null&&k(e,"duplication of an anchor property"),i=e.input.charCodeAt(++e.position),t=e.position;i!==0&&!fe(i)&&!tt(i);)i=e.input.charCodeAt(++e.position);return e.position===t&&k(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function ia(e){var t,i,n;if(n=e.input.charCodeAt(e.position),n!==42)return!1;for(n=e.input.charCodeAt(++e.position),t=e.position;n!==0&&!fe(n)&&!tt(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&k(e,"name of an alias node must contain at least one character"),i=e.input.slice(t,e.position),Fe.call(e.anchorMap,i)||k(e,'unidentified alias "'+i+'"'),e.result=e.anchorMap[i],z(e,!0,-1),!0}function nt(e,t,i,n,r){var s,l,u,h=1,d=!1,x=!1,m,v,b,S,A,P;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,s=l=u=Ft===i||Ln===i,n&&z(e,!0,-1)&&(d=!0,e.lineIndent>t?h=1:e.lineIndent===t?h=0:e.lineIndent<t&&(h=-1)),h===1)for(;ea(e)||ta(e);)z(e,!0,-1)?(d=!0,u=s,e.lineIndent>t?h=1:e.lineIndent===t?h=0:e.lineIndent<t&&(h=-1)):u=!1;if(u&&(u=d||r),(h===1||Ft===i)&&(It===i||An===i?A=t:A=t+1,P=e.position-e.lineStart,h===1?u&&(qi(e,P)||Zo(e,P,A))||Jo(e,A)?x=!0:(l&&Qo(e,A)||qo(e,A)||Xo(e,A)?x=!0:ia(e)?(x=!0,(e.tag!==null||e.anchor!==null)&&k(e,"alias node should not have any properties")):Go(e,A,It===i)&&(x=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):h===0&&(x=u&&qi(e,P))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&k(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),m=0,v=e.implicitTypes.length;m<v;m+=1)if(S=e.implicitTypes[m],S.resolve(e.result)){e.result=S.construct(e.result),e.tag=S.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(Fe.call(e.typeMap[e.kind||"fallback"],e.tag))S=e.typeMap[e.kind||"fallback"][e.tag];else for(S=null,b=e.typeMap.multi[e.kind||"fallback"],m=0,v=b.length;m<v;m+=1)if(e.tag.slice(0,b[m].tag.length)===b[m].tag){S=b[m];break}S||k(e,"unknown tag !<"+e.tag+">"),e.result!==null&&S.kind!==e.kind&&k(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+S.kind+'", not "'+e.kind+'"'),S.resolve(e.result,e.tag)?(e.result=S.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):k(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||x}function na(e){var t=e.position,i,n,r,s=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(z(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(s=!0,l=e.input.charCodeAt(++e.position),i=e.position;l!==0&&!fe(l);)l=e.input.charCodeAt(++e.position);for(n=e.input.slice(i,e.position),r=[],n.length<1&&k(e,"directive name must not be less than one character in length");l!==0;){for(;Be(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!ke(l));break}if(ke(l))break;for(i=e.position;l!==0&&!fe(l);)l=e.input.charCodeAt(++e.position);r.push(e.input.slice(i,e.position))}l!==0&&ai(e),Fe.call(Wi,n)?Wi[n](e,n,r):Nt(e,'unknown document directive "'+n+'"')}if(z(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,z(e,!0,-1)):s&&k(e,"directives end mark is expected"),nt(e,e.lineIndent-1,Ft,!1,!0),z(e,!0,-1),e.checkLineBreaks&&Ho.test(e.input.slice(t,e.position))&&Nt(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Dt(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,z(e,!0,-1));return}if(e.position<e.length-1)k(e,"end of the stream or a document separator is expected");else return}function Fn(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=` 17`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var i=new Wo(e,t),n=e.indexOf("\0");for(n!==-1&&(i.position=n,k(i,"null byte is not allowed in input")),i.input+="\0";i.input.charCodeAt(i.position)===32;)i.lineIndent+=1,i.position+=1;for(;i.position<i.length-1;)na(i);return i.documents}function ra(e,t,i){t!==null&&typeof t=="object"&&typeof i>"u"&&(i=t,t=null);var n=Fn(e,i);if(typeof t!="function")return n;for(var r=0,s=n.length;r<s;r+=1)t(n[r])}function oa(e,t){var i=Fn(e,t);if(i.length!==0){if(i.length===1)return i[0];throw new se("expected a single document in the stream, but found more")}}var aa=ra,sa=oa,Nn={loadAll:aa,load:sa},_n=Object.prototype.toString,Mn=Object.prototype.hasOwnProperty,li=65279,la=9,vt=10,ua=13,fa=32,ca=33,ha=34,ei=35,pa=37,da=38,ga=39,ma=42,Dn=44,xa=45,_t=58,va=61,ya=62,wa=63,ba=64,$n=91,Un=93,Sa=96,Bn=123,Ca=124,Hn=125,te={};te[0]="\\0";te[7]="\\a";te[8]="\\b";te[9]="\\t";te[10]="\\n";te[11]="\\v";te[12]="\\f";te[13]="\\r";te[27]="\\e";te[34]='\\"';te[92]="\\\\";te[133]="\\N";te[160]="\\_";te[8232]="\\L";te[8233]="\\P";var ka=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Ta=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Aa(e,t){var i,n,r,s,l,u,h;if(t===null)return{};for(i={},n=Object.keys(t),r=0,s=n.length;r<s;r+=1)l=n[r],u=String(t[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),h=e.compiledTypeMap.fallback[l],h&&Mn.call(h.styleAliases,u)&&(u=h.styleAliases[u]),i[l]=u;return i}function La(e){var t,i,n;if(t=e.toString(16).toUpperCase(),e<=255)i="x",n=2;else if(e<=65535)i="u",n=4;else if(e<=4294967295)i="U",n=8;else throw new se("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+i+V.repeat("0",n-t.length)+t}var Oa=1,yt=2;function Pa(e){this.schema=e.schema||oi,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=V.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=Aa(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?yt:Oa,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Xi(e,t){for(var i=V.repeat(" ",t),n=0,r=-1,s="",l,u=e.length;n<u;)r=e.indexOf(` 18`,n),r===-1?(l=e.slice(n),n=u):(l=e.slice(n,r+1),n=r+1),l.length&&l!==` 19`&&(s+=i),s+=l;return s}function ti(e,t){return` 20`+V.repeat(" ",e.indent*t)}function Ea(e,t){var i,n,r;for(i=0,n=e.implicitTypes.length;i<n;i+=1)if(r=e.implicitTypes[i],r.resolve(t))return!0;return!1}function Mt(e){return e===fa||e===la}function wt(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==li||65536<=e&&e<=1114111}function Ji(e){return wt(e)&&e!==li&&e!==ua&&e!==vt}function Qi(e,t,i){var n=Ji(e),r=n&&!Mt(e);return(i?n:n&&e!==Dn&&e!==$n&&e!==Un&&e!==Bn&&e!==Hn)&&e!==ei&&!(t===_t&&!r)||Ji(t)&&!Mt(t)&&e===ei||t===_t&&r}function Ra(e){return wt(e)&&e!==li&&!Mt(e)&&e!==xa&&e!==wa&&e!==_t&&e!==Dn&&e!==$n&&e!==Un&&e!==Bn&&e!==Hn&&e!==ei&&e!==da&&e!==ma&&e!==ca&&e!==Ca&&e!==va&&e!==ya&&e!==ga&&e!==ha&&e!==pa&&e!==ba&&e!==Sa}function Ia(e){return!Mt(e)&&e!==_t}function mt(e,t){var i=e.charCodeAt(t),n;return i>=55296&&i<=56319&&t+1<e.length&&(n=e.charCodeAt(t+1),n>=56320&&n<=57343)?(i-55296)*1024+n-56320+65536:i}function jn(e){var t=/^\n* /;return t.test(e)}var Kn=1,ii=2,Yn=3,zn=4,et=5;function Fa(e,t,i,n,r,s,l,u){var h,d=0,x=null,m=!1,v=!1,b=n!==-1,S=-1,A=Ra(mt(e,0))&&Ia(mt(e,e.length-1));if(t||l)for(h=0;h<e.length;d>=65536?h+=2:h++){if(d=mt(e,h),!wt(d))return et;A=A&&Qi(d,x,u),x=d}else{for(h=0;h<e.length;d>=65536?h+=2:h++){if(d=mt(e,h),d===vt)m=!0,b&&(v=v||h-S-1>n&&e[S+1]!==" ",S=h);else if(!wt(d))return et;A=A&&Qi(d,x,u),x=d}v=v||b&&h-S-1>n&&e[S+1]!==" "}return!m&&!v?A&&!l&&!r(e)?Kn:s===yt?et:ii:i>9&&jn(e)?et:l?s===yt?et:ii:v?zn:Yn}function Na(e,t,i,n,r){e.dump=function(){if(t.length===0)return e.quotingType===yt?'""':"''";if(!e.noCompatMode&&(ka.indexOf(t)!==-1||Ta.test(t)))return e.quotingType===yt?'"'+t+'"':"'"+t+"'";var s=e.indent*Math.max(1,i),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-s),u=n||e.flowLevel>-1&&i>=e.flowLevel;function h(d){return Ea(e,d)}switch(Fa(t,u,e.indent,l,h,e.quotingType,e.forceQuotes&&!n,r)){case Kn:return t;case ii:return"'"+t.replace(/'/g,"''")+"'";case Yn:return"|"+Zi(t,e.indent)+en(Xi(t,s));case zn:return">"+Zi(t,e.indent)+en(Xi(_a(t,l),s));case et:return'"'+Ma(t)+'"';default:throw new se("impossible error: invalid scalar style")}}()}function Zi(e,t){var i=jn(e)?String(t):"",n=e[e.length-1]===` 21`,r=n&&(e[e.length-2]===` 22`||e===` 23`),s=r?"+":n?"":"-";return i+s+` 24`}function en(e){return e[e.length-1]===` 25`?e.slice(0,-1):e}function _a(e,t){for(var i=/(\n+)([^\n]*)/g,n=function(){var d=e.indexOf(` 26`);return d=d!==-1?d:e.length,i.lastIndex=d,tn(e.slice(0,d),t)}(),r=e[0]===` 27`||e[0]===" ",s,l;l=i.exec(e);){var u=l[1],h=l[2];s=h[0]===" ",n+=u+(!r&&!s&&h!==""?` 28`:"")+tn(h,t),r=s}return n}function tn(e,t){if(e===""||e[0]===" ")return e;for(var i=/ [^ ]/g,n,r=0,s,l=0,u=0,h="";n=i.exec(e);)u=n.index,u-r>t&&(s=l>r?l:u,h+=` 29`+e.slice(r,s),r=s+1),l=u;return h+=` 30`,e.length-r>t&&l>r?h+=e.slice(r,l)+` 31`+e.slice(l+1):h+=e.slice(r),h.slice(1)}function Ma(e){for(var t="",i=0,n,r=0;r<e.length;i>=65536?r+=2:r++)i=mt(e,r),n=te[i],!n&&wt(i)?(t+=e[r],i>=65536&&(t+=e[r+1])):t+=n||La(i);return t}function Da(e,t,i){var n="",r=e.tag,s,l,u;for(s=0,l=i.length;s<l;s+=1)u=i[s],e.replacer&&(u=e.replacer.call(i,String(s),u)),(Pe(e,t,u,!1,!1)||typeof u>"u"&&Pe(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=r,e.dump="["+n+"]"}function nn(e,t,i,n){var r="",s=e.tag,l,u,h;for(l=0,u=i.length;l<u;l+=1)h=i[l],e.replacer&&(h=e.replacer.call(i,String(l),h)),(Pe(e,t+1,h,!0,!0,!1,!0)||typeof h>"u"&&Pe(e,t+1,null,!0,!0,!1,!0))&&((!n||r!=="")&&(r+=ti(e,t)),e.dump&&vt===e.dump.charCodeAt(0)?r+="-":r+="- ",r+=e.dump);e.tag=s,e.dump=r||"[]"}function $a(e,t,i){var n="",r=e.tag,s=Object.keys(i),l,u,h,d,x;for(l=0,u=s.length;l<u;l+=1)x="",n!==""&&(x+=", "),e.condenseFlow&&(x+='"'),h=s[l],d=i[h],e.replacer&&(d=e.replacer.call(i,h,d)),Pe(e,t,h,!1,!1)&&(e.dump.length>1024&&(x+="? "),x+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Pe(e,t,d,!1,!1)&&(x+=e.dump,n+=x));e.tag=r,e.dump="{"+n+"}"}function Ua(e,t,i,n){var r="",s=e.tag,l=Object.keys(i),u,h,d,x,m,v;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new se("sortKeys must be a boolean or a function");for(u=0,h=l.length;u<h;u+=1)v="",(!n||r!=="")&&(v+=ti(e,t)),d=l[u],x=i[d],e.replacer&&(x=e.replacer.call(i,d,x)),Pe(e,t+1,d,!0,!0,!0)&&(m=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,m&&(e.dump&&vt===e.dump.charCodeAt(0)?v+="?":v+="? "),v+=e.dump,m&&(v+=ti(e,t)),Pe(e,t+1,x,!0,m)&&(e.dump&&vt===e.dump.charCodeAt(0)?v+=":":v+=": ",v+=e.dump,r+=v));e.tag=s,e.dump=r||"{}"}function rn(e,t,i){var n,r,s,l,u,h;for(r=i?e.explicitTypes:e.implicitTypes,s=0,l=r.length;s<l;s+=1)if(u=r[s],(u.instanceOf||u.predicate)&&(!u.instanceOf||typeof t=="object"&&t instanceof u.instanceOf)&&(!u.predicate||u.predicate(t))){if(i?u.multi&&u.representName?e.tag=u.representName(t):e.tag=u.tag:e.tag="?",u.represent){if(h=e.styleMap[u.tag]||u.defaultStyle,_n.call(u.represent)==="[object Function]")n=u.represent(t,h);else if(Mn.call(u.represent,h))n=u.represent[h](t,h);else throw new se("!<"+u.tag+'> tag resolver accepts not "'+h+'" style');e.dump=n}return!0}return!1}function Pe(e,t,i,n,r,s,l){e.tag=null,e.dump=i,rn(e,i,!1)||rn(e,i,!0);var u=_n.call(e.dump),h=n,d;n&&(n=e.flowLevel<0||e.flowLevel>t);var x=u==="[object Object]"||u==="[object Array]",m,v;if(x&&(m=e.duplicates.indexOf(i),v=m!==-1),(e.tag!==null&&e.tag!=="?"||v||e.indent!==2&&t>0)&&(r=!1),v&&e.usedDuplicates[m])e.dump="*ref_"+m;else{if(x&&v&&!e.usedDuplicates[m]&&(e.usedDuplicates[m]=!0),u==="[object Object]")n&&Object.keys(e.dump).length!==0?(Ua(e,t,e.dump,r),v&&(e.dump="&ref_"+m+e.dump)):($a(e,t,e.dump),v&&(e.dump="&ref_"+m+" "+e.dump));else if(u==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!l&&t>0?nn(e,t-1,e.dump,r):nn(e,t,e.dump,r),v&&(e.dump="&ref_"+m+e.dump)):(Da(e,t,e.dump),v&&(e.dump="&ref_"+m+" "+e.dump));else if(u==="[object String]")e.tag!=="?"&&Na(e,e.dump,t,s,h);else{if(u==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new se("unacceptable kind of an object to dump "+u)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function Ba(e,t){var i=[],n=[],r,s;for(ni(e,i,n),r=0,s=n.length;r<s;r+=1)t.duplicates.push(i[n[r]]);t.usedDuplicates=new Array(s)}function ni(e,t,i){var n,r,s;if(e!==null&&typeof e=="object")if(r=t.indexOf(e),r!==-1)i.indexOf(r)===-1&&i.push(r);else if(t.push(e),Array.isArray(e))for(r=0,s=e.length;r<s;r+=1)ni(e[r],t,i);else for(n=Object.keys(e),r=0,s=n.length;r<s;r+=1)ni(e[n[r]],t,i)}function Ha(e,t){t=t||{};var i=new Pa(t);i.noRefs||Ba(e,i);var n=e;return i.replacer&&(n=i.replacer.call({"":n},"",n)),Pe(i,0,n,!0,!0)?i.dump+` 32`:""}var ja=Ha,Ka={dump:ja};function ui(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}var Ya=J,za=sn,Va=cn,Wa=mn,Ga=xn,qa=oi,Xa=Nn.load,Ja=Nn.loadAll,Qa=Ka.dump,Za=se,es={binary:Sn,float:gn,map:fn,null:hn,pairs:kn,set:Tn,timestamp:wn,bool:pn,int:dn,merge:bn,omap:Cn,seq:un,str:ln},ts=ui("safeLoad","load"),is=ui("safeLoadAll","loadAll"),ns=ui("safeDump","dump"),rs={Type:Ya,Schema:za,FAILSAFE_SCHEMA:Va,JSON_SCHEMA:Wa,CORE_SCHEMA:Ga,DEFAULT_SCHEMA:qa,load:Xa,loadAll:Ja,dump:Qa,YAMLException:Za,types:es,safeLoad:ts,safeLoadAll:is,safeDump:ns},be=rs;var os={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}},fi=class e{constructor(t,i={}){this.init(t,i)}init(t,i={}){this.prefix=i.prefix||"i18next:",this.logger=t||os,this.options=i,this.debug=i.debug}log(...t){return this.forward(t,"log","",!0)}warn(...t){return this.forward(t,"warn","",!0)}error(...t){return this.forward(t,"error","")}deprecate(...t){return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(t,i,n,r){return r&&!this.debug?null:(typeof t[0]=="string"&&(t[0]=`${n}${this.prefix} ${t[0]}`),this.logger[i](t))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},Q=new fi;var ci=class{constructor(){this.observers={}}on(t,i){return t.split(" ").forEach(n=>{this.observers[n]||(this.observers[n]=new Map);let r=this.observers[n].get(i)||0;this.observers[n].set(i,r+1)}),this}off(t,i){if(this.observers[t]){if(!i){delete this.observers[t];return}this.observers[t].delete(i)}}emit(t,...i){this.observers[t]&&Array.from(this.observers[t].entries()).forEach(([r,s])=>{for(let l=0;l<s;l++)r(...i)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(([r,s])=>{for(let l=0;l<s;l++)r.apply(r,[t,...i])})}},Ne=ci;function rt(){let e,t,i=new Promise((n,r)=>{e=n,t=r});return i.resolve=e,i.reject=t,i}function pi(e){return e==null?"":""+e}function Vn(e,t,i){e.forEach(n=>{t[n]&&(i[n]=t[n])})}var as=/###/g;function bt(e,t,i){function n(u){return u&&u.indexOf("###")>-1?u.replace(as,"."):u}function r(){return!e||typeof e=="string"}let s=typeof t!="string"?t:t.split("."),l=0;for(;l<s.length-1;){if(r())return{};let u=n(s[l]);!e[u]&&i&&(e[u]=new i),Object.prototype.hasOwnProperty.call(e,u)?e=e[u]:e={},++l}return r()?{}:{obj:e,k:n(s[l])}}function di(e,t,i){let{obj:n,k:r}=bt(e,t,Object);if(n!==void 0||t.length===1){n[r]=i;return}let s=t[t.length-1],l=t.slice(0,t.length-1),u=bt(e,l,Object);for(;u.obj===void 0&&l.length;)s=`${l[l.length-1]}.${s}`,l=l.slice(0,l.length-1),u=bt(e,l,Object),u&&u.obj&&typeof u.obj[`${u.k}.${s}`]<"u"&&(u.obj=void 0);u.obj[`${u.k}.${s}`]=i}function Wn(e,t,i,n){let{obj:r,k:s}=bt(e,t,Object);r[s]=r[s]||[],n&&(r[s]=r[s].concat(i)),n||r[s].push(i)}function St(e,t){let{obj:i,k:n}=bt(e,t);if(i)return i[n]}function Gn(e,t,i){let n=St(e,i);return n!==void 0?n:St(t,i)}function gi(e,t,i){for(let n in t)n!=="__proto__"&&n!=="constructor"&&(n in e?typeof e[n]=="string"||e[n]instanceof String||typeof t[n]=="string"||t[n]instanceof String?i&&(e[n]=t[n]):gi(e[n],t[n],i):e[n]=t[n]);return e}function He(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var ss={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function qn(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>ss[t]):e}var hi=class{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){let i=this.regExpMap.get(t);if(i!==void 0)return i;let n=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,n),this.regExpQueue.push(t),n}},ls=[" ",",","?","!",";"],us=new hi(20);function Xn(e,t,i){t=t||"",i=i||"";let n=ls.filter(l=>t.indexOf(l)<0&&i.indexOf(l)<0);if(n.length===0)return!0;let r=us.getRegExp(`(${n.map(l=>l==="?"?"\\?":l).join("|")})`),s=!r.test(e);if(!s){let l=e.indexOf(i);l>0&&!r.test(e.substring(0,l))&&(s=!0)}return s}function Ct(e,t,i="."){if(!e)return;if(e[t])return e[t];let n=t.split(i),r=e;for(let s=0;s<n.length;){if(!r||typeof r!="object")return;let l,u="";for(let h=s;h<n.length;++h)if(h!==s&&(u+=i),u+=n[h],l=r[u],l!==void 0){if(["string","number","boolean"].indexOf(typeof l)>-1&&h<n.length-1)continue;s+=h-s+1;break}r=l}return r}function je(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}var mi=class extends Ne{constructor(t,i={ns:["translation"],defaultNS:"translation"}){super(),this.data=t||{},this.options=i,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){let i=this.options.ns.indexOf(t);i>-1&&this.options.ns.splice(i,1)}getResource(t,i,n,r={}){let s=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator,l=r.ignoreJSONStructure!==void 0?r.ignoreJSONStructure:this.options.ignoreJSONStructure,u;t.indexOf(".")>-1?u=t.split("."):(u=[t,i],n&&(Array.isArray(n)?u.push(...n):typeof n=="string"&&s?u.push(...n.split(s)):u.push(n)));let h=St(this.data,u);return!h&&!i&&!n&&t.indexOf(".")>-1&&(t=u[0],i=u[1],n=u.slice(2).join(".")),h||!l||typeof n!="string"?h:Ct(this.data&&this.data[t]&&this.data[t][i],n,s)}addResource(t,i,n,r,s={silent:!1}){let l=s.keySeparator!==void 0?s.keySeparator:this.options.keySeparator,u=[t,i];n&&(u=u.concat(l?n.split(l):n)),t.indexOf(".")>-1&&(u=t.split("."),r=i,i=u[1]),this.addNamespaces(i),di(this.data,u,r),s.silent||this.emit("added",t,i,n,r)}addResources(t,i,n,r={silent:!1}){for(let s in n)(typeof n[s]=="string"||Object.prototype.toString.apply(n[s])==="[object Array]")&&this.addResource(t,i,s,n[s],{silent:!0});r.silent||this.emit("added",t,i,n)}addResourceBundle(t,i,n,r,s,l={silent:!1,skipCopy:!1}){let u=[t,i];t.indexOf(".")>-1&&(u=t.split("."),r=n,n=i,i=u[1]),this.addNamespaces(i);let h=St(this.data,u)||{};l.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?gi(h,n,s):h={...h,...n},di(this.data,u,h),l.silent||this.emit("added",t,i,n)}removeResourceBundle(t,i){this.hasResourceBundle(t,i)&&delete this.data[t][i],this.removeNamespaces(i),this.emit("removed",t,i)}hasResourceBundle(t,i){return this.getResource(t,i)!==void 0}getResourceBundle(t,i){return i||(i=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,i)}:this.getResource(t,i)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){let i=this.getDataByLanguage(t);return!!(i&&Object.keys(i)||[]).find(r=>i[r]&&Object.keys(i[r]).length>0)}toJSON(){return this.data}},xi=mi;var Ut={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,i,n,r){return e.forEach(s=>{this.processors[s]&&(t=this.processors[s].process(t,i,n,r))}),t}};var Jn={},vi=class e extends Ne{constructor(t,i={}){super(),Vn(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=i,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Q.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t,i={interpolation:{}}){if(t==null)return!1;let n=this.resolve(t,i);return n&&n.res!==void 0}extractFromKey(t,i){let n=i.nsSeparator!==void 0?i.nsSeparator:this.options.nsSeparator;n===void 0&&(n=":");let r=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,s=i.ns||this.options.defaultNS||[],l=n&&t.indexOf(n)>-1,u=!this.options.userDefinedKeySeparator&&!i.keySeparator&&!this.options.userDefinedNsSeparator&&!i.nsSeparator&&!Xn(t,n,r);if(l&&!u){let h=t.match(this.interpolator.nestingRegexp);if(h&&h.length>0)return{key:t,namespaces:s};let d=t.split(n);(n!==r||n===r&&this.options.ns.indexOf(d[0])>-1)&&(s=d.shift()),t=d.join(r)}return typeof s=="string"&&(s=[s]),{key:t,namespaces:s}}translate(t,i,n){if(typeof i!="object"&&this.options.overloadTranslationOptionHandler&&(i=this.options.overloadTranslationOptionHandler(arguments)),typeof i=="object"&&(i={...i}),i||(i={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);let r=i.returnDetails!==void 0?i.returnDetails:this.options.returnDetails,s=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,{key:l,namespaces:u}=this.extractFromKey(t[t.length-1],i),h=u[u.length-1],d=i.lng||this.language,x=i.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d&&d.toLowerCase()==="cimode"){if(x){let B=i.nsSeparator||this.options.nsSeparator;return r?{res:`${h}${B}${l}`,usedKey:l,exactUsedKey:l,usedLng:d,usedNS:h,usedParams:this.getUsedParamsDetails(i)}:`${h}${B}${l}`}return r?{res:l,usedKey:l,exactUsedKey:l,usedLng:d,usedNS:h,usedParams:this.getUsedParamsDetails(i)}:l}let m=this.resolve(t,i),v=m&&m.res,b=m&&m.usedKey||l,S=m&&m.exactUsedKey||l,A=Object.prototype.toString.apply(v),P=["[object Number]","[object Function]","[object RegExp]"],F=i.joinArrays!==void 0?i.joinArrays:this.options.joinArrays,T=!this.i18nFormat||this.i18nFormat.handleAsObject;if(T&&v&&(typeof v!="string"&&typeof v!="boolean"&&typeof v!="number")&&P.indexOf(A)<0&&!(typeof F=="string"&&A==="[object Array]")){if(!i.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");let B=this.options.returnedObjectHandler?this.options.returnedObjectHandler(b,v,{...i,ns:u}):`key '${l} (${this.language})' returned an object instead of string.`;return r?(m.res=B,m.usedParams=this.getUsedParamsDetails(i),m):B}if(s){let B=A==="[object Array]",Z=B?[]:{},ce=B?S:b;for(let $ in v)if(Object.prototype.hasOwnProperty.call(v,$)){let Se=`${ce}${s}${$}`;Z[$]=this.translate(Se,{...i,joinArrays:!1,ns:u}),Z[$]===Se&&(Z[$]=v[$])}v=Z}}else if(T&&typeof F=="string"&&A==="[object Array]")v=v.join(F),v&&(v=this.extendTranslation(v,t,i,n));else{let B=!1,Z=!1,ce=i.count!==void 0&&typeof i.count!="string",$=e.hasDefaultValue(i),Se=ce?this.pluralResolver.getSuffix(d,i.count,i):"",he=i.ordinal&&ce?this.pluralResolver.getSuffix(d,i.count,{ordinal:!1}):"",kt=ce&&!i.ordinal&&i.count===0&&this.pluralResolver.shouldUseIntlApi(),Me=kt&&i[`defaultValue${this.options.pluralSeparator}zero`]||i[`defaultValue${Se}`]||i[`defaultValue${he}`]||i.defaultValue;!this.isValidLookup(v)&&$&&(B=!0,v=Me),this.isValidLookup(v)||(Z=!0,v=l);let Ye=(i.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&Z?void 0:v,ne=$&&Me!==v&&this.options.updateMissing;if(Z||B||ne){if(this.logger.log(ne?"updateKey":"missingKey",d,h,l,ne?Me:v),s){let K=this.resolve(l,{...i,keySeparator:!1});K&&K.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let Te=[],xe=this.languageUtils.getFallbackCodes(this.options.fallbackLng,i.lng||this.language);if(this.options.saveMissingTo==="fallback"&&xe&&xe[0])for(let K=0;K<xe.length;K++)Te.push(xe[K]);else this.options.saveMissingTo==="all"?Te=this.languageUtils.toResolveHierarchy(i.lng||this.language):Te.push(i.lng||this.language);let ge=(K,D,U)=>{let pe=$&&U!==v?U:Ye;this.options.missingKeyHandler?this.options.missingKeyHandler(K,h,D,pe,ne,i):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(K,h,D,pe,ne,i),this.emit("missingKey",K,h,D,v)};this.options.saveMissing&&(this.options.saveMissingPlurals&&ce?Te.forEach(K=>{let D=this.pluralResolver.getSuffixes(K,i);kt&&i[`defaultValue${this.options.pluralSeparator}zero`]&&D.indexOf(`${this.options.pluralSeparator}zero`)<0&&D.push(`${this.options.pluralSeparator}zero`),D.forEach(U=>{ge([K],l+U,i[`defaultValue${U}`]||Me)})}):ge(Te,l,Me))}v=this.extendTranslation(v,t,i,m,n),Z&&v===l&&this.options.appendNamespaceToMissingKey&&(v=`${h}:${l}`),(Z||B)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?v=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${h}:${l}`:l,B?v:void 0):v=this.options.parseMissingKeyHandler(v))}return r?(m.res=v,m.usedParams=this.getUsedParamsDetails(i),m):v}extendTranslation(t,i,n,r,s){if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});let h=typeof t=="string"&&(n&&n.interpolation&&n.interpolation.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables),d;if(h){let m=t.match(this.interpolator.nestingRegexp);d=m&&m.length}let x=n.replace&&typeof n.replace!="string"?n.replace:n;if(this.options.interpolation.defaultVariables&&(x={...this.options.interpolation.defaultVariables,...x}),t=this.interpolator.interpolate(t,x,n.lng||this.language,n),h){let m=t.match(this.interpolator.nestingRegexp),v=m&&m.length;d<v&&(n.nest=!1)}!n.lng&&this.options.compatibilityAPI!=="v1"&&r&&r.res&&(n.lng=r.usedLng),n.nest!==!1&&(t=this.interpolator.nest(t,(...m)=>s&&s[0]===m[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${m[0]} in key: ${i[0]}`),null):this.translate(...m,i),n)),n.interpolation&&this.interpolator.reset()}let l=n.postProcess||this.options.postProcess,u=typeof l=="string"?[l]:l;return t!=null&&u&&u.length&&n.applyPostProcessor!==!1&&(t=Ut.handle(u,t,i,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),t}resolve(t,i={}){let n,r,s,l,u;return typeof t=="string"&&(t=[t]),t.forEach(h=>{if(this.isValidLookup(n))return;let d=this.extractFromKey(h,i),x=d.key;r=x;let m=d.namespaces;this.options.fallbackNS&&(m=m.concat(this.options.fallbackNS));let v=i.count!==void 0&&typeof i.count!="string",b=v&&!i.ordinal&&i.count===0&&this.pluralResolver.shouldUseIntlApi(),S=i.context!==void 0&&(typeof i.context=="string"||typeof i.context=="number")&&i.context!=="",A=i.lngs?i.lngs:this.languageUtils.toResolveHierarchy(i.lng||this.language,i.fallbackLng);m.forEach(P=>{this.isValidLookup(n)||(u=P,!Jn[`${A[0]}-${P}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(u)&&(Jn[`${A[0]}-${P}`]=!0,this.logger.warn(`key "${r}" for languages "${A.join(", ")}" won't get resolved as namespace "${u}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),A.forEach(F=>{if(this.isValidLookup(n))return;l=F;let T=[x];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(T,x,F,P,i);else{let B;v&&(B=this.pluralResolver.getSuffix(F,i.count,i));let Z=`${this.options.pluralSeparator}zero`,ce=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(v&&(T.push(x+B),i.ordinal&&B.indexOf(ce)===0&&T.push(x+B.replace(ce,this.options.pluralSeparator)),b&&T.push(x+Z)),S){let $=`${x}${this.options.contextSeparator}${i.context}`;T.push($),v&&(T.push($+B),i.ordinal&&B.indexOf(ce)===0&&T.push($+B.replace(ce,this.options.pluralSeparator)),b&&T.push($+Z))}}let Ke;for(;Ke=T.pop();)this.isValidLookup(n)||(s=Ke,n=this.getResource(F,P,Ke,i))}))})}),{res:n,usedKey:r,exactUsedKey:s,usedLng:l,usedNS:u}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,i,n,r={}){return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,i,n,r):this.resourceStore.getResource(t,i,n,r)}getUsedParamsDetails(t={}){let i=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=t.replace&&typeof t.replace!="string",r=n?t.replace:t;if(n&&typeof t.count<"u"&&(r.count=t.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(let s of i)delete r[s]}return r}static hasDefaultValue(t){let i="defaultValue";for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&i===n.substring(0,i.length)&&t[n]!==void 0)return!0;return!1}},yi=vi;function wi(e){return e.charAt(0).toUpperCase()+e.slice(1)}var bi=class{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Q.create("languageUtils")}getScriptPartFromCode(t){if(t=je(t),!t||t.indexOf("-")<0)return null;let i=t.split("-");return i.length===2||(i.pop(),i[i.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(i.join("-"))}getLanguagePartFromCode(t){if(t=je(t),!t||t.indexOf("-")<0)return t;let i=t.split("-");return this.formatLanguageCode(i[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){let i=["hans","hant","latn","cyrl","cans","mong","arab"],n=t.split("-");return this.options.lowerCaseLng?n=n.map(r=>r.toLowerCase()):n.length===2?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),i.indexOf(n[1].toLowerCase())>-1&&(n[1]=wi(n[1].toLowerCase()))):n.length===3&&(n[0]=n[0].toLowerCase(),n[1].length===2&&(n[1]=n[1].toUpperCase()),n[0]!=="sgn"&&n[2].length===2&&(n[2]=n[2].toUpperCase()),i.indexOf(n[1].toLowerCase())>-1&&(n[1]=wi(n[1].toLowerCase())),i.indexOf(n[2].toLowerCase())>-1&&(n[2]=wi(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let i;return t.forEach(n=>{if(i)return;let r=this.formatLanguageCode(n);(!this.options.supportedLngs||this.isSupportedCode(r))&&(i=r)}),!i&&this.options.supportedLngs&&t.forEach(n=>{if(i)return;let r=this.getLanguagePartFromCode(n);if(this.isSupportedCode(r))return i=r;i=this.options.supportedLngs.find(s=>{if(s===r)return s;if(!(s.indexOf("-")<0&&r.indexOf("-")<0)&&(s.indexOf("-")>0&&r.indexOf("-")<0&&s.substring(0,s.indexOf("-"))===r||s.indexOf(r)===0&&r.length>1))return s})}),i||(i=this.getFallbackCodes(this.options.fallbackLng)[0]),i}getFallbackCodes(t,i){if(!t)return[];if(typeof t=="function"&&(t=t(i)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!i)return t.default||[];let n=t[i];return n||(n=t[this.getScriptPartFromCode(i)]),n||(n=t[this.formatLanguageCode(i)]),n||(n=t[this.getLanguagePartFromCode(i)]),n||(n=t.default),n||[]}toResolveHierarchy(t,i){let n=this.getFallbackCodes(i||this.options.fallbackLng||[],t),r=[],s=l=>{l&&(this.isSupportedCode(l)?r.push(l):this.logger.warn(`rejecting language code not found in supportedLngs: ${l}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&s(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&s(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&s(this.getLanguagePartFromCode(t))):typeof t=="string"&&s(this.formatLanguageCode(t)),n.forEach(l=>{r.indexOf(l)<0&&s(this.formatLanguageCode(l))}),r}},Si=bi;var fs=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],cs={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}},hs=["v1","v2","v3"],ps=["v4"],Qn={zero:0,one:1,two:2,few:3,many:4,other:5};function ds(){let e={};return fs.forEach(t=>{t.lngs.forEach(i=>{e[i]={numbers:t.nr,plurals:cs[t.fc]}})}),e}var Ci=class{constructor(t,i={}){this.languageUtils=t,this.options=i,this.logger=Q.create("pluralResolver"),(!this.options.compatibilityJSON||ps.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=ds()}addRule(t,i){this.rules[t]=i}getRule(t,i={}){if(this.shouldUseIntlApi())try{return new Intl.PluralRules(je(t==="dev"?"en":t),{type:i.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t,i={}){let n=this.getRule(t,i);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(t,i,n={}){return this.getSuffixes(t,n).map(r=>`${i}${r}`)}getSuffixes(t,i={}){let n=this.getRule(t,i);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort((r,s)=>Qn[r]-Qn[s]).map(r=>`${this.options.prepend}${i.ordinal?`ordinal${this.options.prepend}`:""}${r}`):n.numbers.map(r=>this.getSuffix(t,r,i)):[]}getSuffix(t,i,n={}){let r=this.getRule(t,n);return r?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${r.select(i)}`:this.getSuffixRetroCompatible(r,i):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,i){let n=t.noAbs?t.plurals(i):t.plurals(Math.abs(i)),r=t.numbers[n];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(r===2?r="plural":r===1&&(r=""));let s=()=>this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString();return this.options.compatibilityJSON==="v1"?r===1?"":typeof r=="number"?`_plural_${r.toString()}`:s():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?s():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!hs.includes(this.options.compatibilityJSON)}},Zn=Ci;function er(e,t,i,n=".",r=!0){let s=Gn(e,t,i);return!s&&r&&typeof i=="string"&&(s=Ct(e,i,n),s===void 0&&(s=Ct(t,i,n))),s}var ki=class{constructor(t={}){this.logger=Q.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(i=>i),this.init(t)}init(t={}){t.interpolation||(t.interpolation={escapeValue:!0});let{escape:i,escapeValue:n,useRawValueToEscape:r,prefix:s,prefixEscaped:l,suffix:u,suffixEscaped:h,formatSeparator:d,unescapeSuffix:x,unescapePrefix:m,nestingPrefix:v,nestingPrefixEscaped:b,nestingSuffix:S,nestingSuffixEscaped:A,nestingOptionsSeparator:P,maxReplaces:F,alwaysFormat:T}=t.interpolation;this.escape=i!==void 0?i:qn,this.escapeValue=n!==void 0?n:!0,this.useRawValueToEscape=r!==void 0?r:!1,this.prefix=s?He(s):l||"{{",this.suffix=u?He(u):h||"}}",this.formatSeparator=d||",",this.unescapePrefix=x?"":m||"-",this.unescapeSuffix=this.unescapePrefix?"":x||"",this.nestingPrefix=v?He(v):b||He("$t("),this.nestingSuffix=S?He(S):A||He(")"),this.nestingOptionsSeparator=P||",",this.maxReplaces=F||1e3,this.alwaysFormat=T!==void 0?T:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let t=(i,n)=>i&&i.source===n?(i.lastIndex=0,i):new RegExp(n,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,i,n,r){let s,l,u,h=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function d(S){return S.replace(/\$/g,"$$$$")}let x=S=>{if(S.indexOf(this.formatSeparator)<0){let T=er(i,h,S,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(T,void 0,n,{...r,...i,interpolationkey:S}):T}let A=S.split(this.formatSeparator),P=A.shift().trim(),F=A.join(this.formatSeparator).trim();return this.format(er(i,h,P,this.options.keySeparator,this.options.ignoreJSONStructure),F,n,{...r,...i,interpolationkey:P})};this.resetRegExp();let m=r&&r.missingInterpolationHandler||this.options.missingInterpolationHandler,v=r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:S=>d(S)},{regex:this.regexp,safeValue:S=>this.escapeValue?d(this.escape(S)):d(S)}].forEach(S=>{for(u=0;s=S.regex.exec(t);){let A=s[1].trim();if(l=x(A),l===void 0)if(typeof m=="function"){let F=m(t,s,r);l=typeof F=="string"?F:""}else if(r&&Object.prototype.hasOwnProperty.call(r,A))l="";else if(v){l=s[0];continue}else this.logger.warn(`missed to pass in variable ${A} for interpolating ${t}`),l="";else typeof l!="string"&&!this.useRawValueToEscape&&(l=pi(l));let P=S.safeValue(l);if(t=t.replace(s[0],P),v?(S.regex.lastIndex+=l.length,S.regex.lastIndex-=s[0].length):S.regex.lastIndex=0,u++,u>=this.maxReplaces)break}}),t}nest(t,i,n={}){let r,s,l;function u(h,d){let x=this.nestingOptionsSeparator;if(h.indexOf(x)<0)return h;let m=h.split(new RegExp(`${x}[ ]*{`)),v=`{${m[1]}`;h=m[0],v=this.interpolate(v,l);let b=v.match(/'/g),S=v.match(/"/g);(b&&b.length%2===0&&!S||S.length%2!==0)&&(v=v.replace(/'/g,'"'));try{l=JSON.parse(v),d&&(l={...d,...l})}catch(A){return this.logger.warn(`failed parsing options string in nesting for key ${h}`,A),`${h}${x}${v}`}return l.defaultValue&&l.defaultValue.indexOf(this.prefix)>-1&&delete l.defaultValue,h}for(;r=this.nestingRegexp.exec(t);){let h=[];l={...n},l=l.replace&&typeof l.replace!="string"?l.replace:l,l.applyPostProcessor=!1,delete l.defaultValue;let d=!1;if(r[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(r[1])){let x=r[1].split(this.formatSeparator).map(m=>m.trim());r[1]=x.shift(),h=x,d=!0}if(s=i(u.call(this,r[1].trim(),l),l),s&&r[0]===t&&typeof s!="string")return s;typeof s!="string"&&(s=pi(s)),s||(this.logger.warn(`missed to resolve ${r[1]} for nesting ${t}`),s=""),d&&(s=h.reduce((x,m)=>this.format(x,m,n.lng,{...n,interpolationkey:r[1].trim()}),s.trim())),t=t.replace(r[0],s),this.regexp.lastIndex=0}return t}},tr=ki;function gs(e){let t=e.toLowerCase().trim(),i={};if(e.indexOf("(")>-1){let n=e.split("(");t=n[0].toLowerCase().trim();let r=n[1].substring(0,n[1].length-1);t==="currency"&&r.indexOf(":")<0?i.currency||(i.currency=r.trim()):t==="relativetime"&&r.indexOf(":")<0?i.range||(i.range=r.trim()):r.split(";").forEach(l=>{if(!l)return;let[u,...h]=l.split(":"),d=h.join(":").trim().replace(/^'+|'+$/g,"");i[u.trim()]||(i[u.trim()]=d),d==="false"&&(i[u.trim()]=!1),d==="true"&&(i[u.trim()]=!0),isNaN(d)||(i[u.trim()]=parseInt(d,10))})}return{formatName:t,formatOptions:i}}function ot(e){let t={};return function(n,r,s){let l=r+JSON.stringify(s),u=t[l];return u||(u=e(je(r),s),t[l]=u),u(n)}}var Ti=class{constructor(t={}){this.logger=Q.create("formatter"),this.options=t,this.formats={number:ot((i,n)=>{let r=new Intl.NumberFormat(i,{...n});return s=>r.format(s)}),currency:ot((i,n)=>{let r=new Intl.NumberFormat(i,{...n,style:"currency"});return s=>r.format(s)}),datetime:ot((i,n)=>{let r=new Intl.DateTimeFormat(i,{...n});return s=>r.format(s)}),relativetime:ot((i,n)=>{let r=new Intl.RelativeTimeFormat(i,{...n});return s=>r.format(s,n.range||"day")}),list:ot((i,n)=>{let r=new Intl.ListFormat(i,{...n});return s=>r.format(s)})},this.init(t)}init(t,i={interpolation:{}}){let n=i.interpolation;this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||","}add(t,i){this.formats[t.toLowerCase().trim()]=i}addCached(t,i){this.formats[t.toLowerCase().trim()]=ot(i)}format(t,i,n,r={}){return i.split(this.formatSeparator).reduce((u,h)=>{let{formatName:d,formatOptions:x}=gs(h);if(this.formats[d]){let m=u;try{let v=r&&r.formatParams&&r.formatParams[r.interpolationkey]||{},b=v.locale||v.lng||r.locale||r.lng||n;m=this.formats[d](u,b,{...x,...r,...v})}catch(v){this.logger.warn(v)}return m}else this.logger.warn(`there was no format function for ${d}`);return u},t)}},ir=Ti;function ms(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}var Ai=class extends Ne{constructor(t,i,n,r={}){super(),this.backend=t,this.store=i,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=Q.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,r.backend,r)}queueLoad(t,i,n,r){let s={},l={},u={},h={};return t.forEach(d=>{let x=!0;i.forEach(m=>{let v=`${d}|${m}`;!n.reload&&this.store.hasResourceBundle(d,m)?this.state[v]=2:this.state[v]<0||(this.state[v]===1?l[v]===void 0&&(l[v]=!0):(this.state[v]=1,x=!1,l[v]===void 0&&(l[v]=!0),s[v]===void 0&&(s[v]=!0),h[m]===void 0&&(h[m]=!0)))}),x||(u[d]=!0)}),(Object.keys(s).length||Object.keys(l).length)&&this.queue.push({pending:l,pendingCount:Object.keys(l).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(s),pending:Object.keys(l),toLoadLanguages:Object.keys(u),toLoadNamespaces:Object.keys(h)}}loaded(t,i,n){let r=t.split("|"),s=r[0],l=r[1];i&&this.emit("failedLoading",s,l,i),n&&this.store.addResourceBundle(s,l,n,void 0,void 0,{skipCopy:!0}),this.state[t]=i?-1:2;let u={};this.queue.forEach(h=>{Wn(h.loaded,[s],l),ms(h,t),i&&h.errors.push(i),h.pendingCount===0&&!h.done&&(Object.keys(h.loaded).forEach(d=>{u[d]||(u[d]={});let x=h.loaded[d];x.length&&x.forEach(m=>{u[d][m]===void 0&&(u[d][m]=!0)})}),h.done=!0,h.errors.length?h.callback(h.errors):h.callback())}),this.emit("loaded",u),this.queue=this.queue.filter(h=>!h.done)}read(t,i,n,r=0,s=this.retryTimeout,l){if(!t.length)return l(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:i,fcName:n,tried:r,wait:s,callback:l});return}this.readingCalls++;let u=(d,x)=>{if(this.readingCalls--,this.waitingReads.length>0){let m=this.waitingReads.shift();this.read(m.lng,m.ns,m.fcName,m.tried,m.wait,m.callback)}if(d&&x&&r<this.maxRetries){setTimeout(()=>{this.read.call(this,t,i,n,r+1,s*2,l)},s);return}l(d,x)},h=this.backend[n].bind(this.backend);if(h.length===2){try{let d=h(t,i);d&&typeof d.then=="function"?d.then(x=>u(null,x)).catch(u):u(null,d)}catch(d){u(d)}return}return h(t,i,u)}prepareLoading(t,i,n={},r){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),r&&r();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof i=="string"&&(i=[i]);let s=this.queueLoad(t,i,n,r);if(!s.toLoad.length)return s.pending.length||r(),null;s.toLoad.forEach(l=>{this.loadOne(l)})}load(t,i,n){this.prepareLoading(t,i,{},n)}reload(t,i,n){this.prepareLoading(t,i,{reload:!0},n)}loadOne(t,i=""){let n=t.split("|"),r=n[0],s=n[1];this.read(r,s,"read",void 0,void 0,(l,u)=>{l&&this.logger.warn(`${i}loading namespace ${s} for language ${r} failed`,l),!l&&u&&this.logger.log(`${i}loaded namespace ${s} for language ${r}`,u),this.loaded(t,l,u)})}saveMissing(t,i,n,r,s,l={},u=()=>{}){if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(i)){this.logger.warn(`did not save key "${n}" as the namespace "${i}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(n==null||n==="")){if(this.backend&&this.backend.create){let h={...l,isUpdate:s},d=this.backend.create.bind(this.backend);if(d.length<6)try{let x;d.length===5?x=d(t,i,n,r,h):x=d(t,i,n,r),x&&typeof x.then=="function"?x.then(m=>u(null,m)).catch(u):u(null,x)}catch(x){u(x)}else d(t,i,n,r,u,h)}!t||!t[0]||this.store.addResource(t[0],i,n,r)}}},nr=Ai;function Li(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let i={};if(typeof t[1]=="object"&&(i=t[1]),typeof t[1]=="string"&&(i.defaultValue=t[1]),typeof t[2]=="string"&&(i.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){let n=t[3]||t[2];Object.keys(n).forEach(r=>{i[r]=n[r]})}return i},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Oi(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Bt(){}function xs(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(i=>{typeof e[i]=="function"&&(e[i]=e[i].bind(e))})}var Ht=class e extends Ne{constructor(t={},i){if(super(),this.options=Oi(t),this.services={},this.logger=Q,this.modules={external:[]},xs(this),i&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,i),this;setTimeout(()=>{this.init(t,i)},0)}}init(t={},i){this.isInitializing=!0,typeof t=="function"&&(i=t,t={}),!t.defaultNS&&t.defaultNS!==!1&&t.ns&&(typeof t.ns=="string"?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));let n=Li();this.options={...n,...this.options,...Oi(t)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...n.interpolation,...this.options.interpolation}),t.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=t.keySeparator),t.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=t.nsSeparator);function r(d){return d?typeof d=="function"?new d:d:null}if(!this.options.isClone){this.modules.logger?Q.init(r(this.modules.logger),this.options):Q.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:typeof Intl<"u"&&(d=ir);let x=new Si(this.options);this.store=new xi(this.options.resources,this.options);let m=this.services;m.logger=Q,m.resourceStore=this.store,m.languageUtils=x,m.pluralResolver=new Zn(x,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),d&&(!this.options.interpolation.format||this.options.interpolation.format===n.interpolation.format)&&(m.formatter=r(d),m.formatter.init(m,this.options),this.options.interpolation.format=m.formatter.format.bind(m.formatter)),m.interpolator=new tr(this.options),m.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},m.backendConnector=new nr(r(this.modules.backend),m.resourceStore,m,this.options),m.backendConnector.on("*",(v,...b)=>{this.emit(v,...b)}),this.modules.languageDetector&&(m.languageDetector=r(this.modules.languageDetector),m.languageDetector.init&&m.languageDetector.init(m,this.options.detection,this.options)),this.modules.i18nFormat&&(m.i18nFormat=r(this.modules.i18nFormat),m.i18nFormat.init&&m.i18nFormat.init(this)),this.translator=new yi(this.services,this.options),this.translator.on("*",(v,...b)=>{this.emit(v,...b)}),this.modules.external.forEach(v=>{v.init&&v.init(this)})}if(this.format=this.options.interpolation.format,i||(i=Bt),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=(...x)=>this.store[d](...x)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=(...x)=>(this.store[d](...x),this)});let u=rt(),h=()=>{let d=(x,m)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),u.resolve(m),i(x,m)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initImmediate?h():setTimeout(h,0),u}loadResources(t,i=Bt){let n=i,r=typeof t=="string"?t:this.language;if(typeof t=="function"&&(n=t),!this.options.resources||this.options.partialBundledLanguages){if(r&&r.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return n();let s=[],l=u=>{if(!u||u==="cimode")return;this.services.languageUtils.toResolveHierarchy(u).forEach(d=>{d!=="cimode"&&s.indexOf(d)<0&&s.push(d)})};r?l(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(h=>l(h)),this.options.preload&&this.options.preload.forEach(u=>l(u)),this.services.backendConnector.load(s,this.options.ns,u=>{!u&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(u)})}else n(null)}reloadResources(t,i,n){let r=rt();return t||(t=this.languages),i||(i=this.options.ns),n||(n=Bt),this.services.backendConnector.reload(t,i,s=>{r.resolve(),n(s)}),r}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&Ut.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let i=0;i<this.languages.length;i++){let n=this.languages[i];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}changeLanguage(t,i){this.isLanguageChangingTo=t;let n=rt();this.emit("languageChanging",t);let r=u=>{this.language=u,this.languages=this.services.languageUtils.toResolveHierarchy(u),this.resolvedLanguage=void 0,this.setResolvedLanguage(u)},s=(u,h)=>{h?(r(h),this.translator.changeLanguage(h),this.isLanguageChangingTo=void 0,this.emit("languageChanged",h),this.logger.log("languageChanged",h)):this.isLanguageChangingTo=void 0,n.resolve((...d)=>this.t(...d)),i&&i(u,(...d)=>this.t(...d))},l=u=>{!t&&!u&&this.services.languageDetector&&(u=[]);let h=typeof u=="string"?u:this.services.languageUtils.getBestMatchFromCodes(u);h&&(this.language||r(h),this.translator.language||this.translator.changeLanguage(h),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(h)),this.loadResources(h,d=>{s(d,h)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?l(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(l):this.services.languageDetector.detect(l):l(t),n}getFixedT(t,i,n){let r=(s,l,...u)=>{let h;typeof l!="object"?h=this.options.overloadTranslationOptionHandler([s,l].concat(u)):h={...l},h.lng=h.lng||r.lng,h.lngs=h.lngs||r.lngs,h.ns=h.ns||r.ns,h.keyPrefix=h.keyPrefix||n||r.keyPrefix;let d=this.options.keySeparator||".",x;return h.keyPrefix&&Array.isArray(s)?x=s.map(m=>`${h.keyPrefix}${d}${m}`):x=h.keyPrefix?`${h.keyPrefix}${d}${s}`:s,this.t(x,h)};return typeof t=="string"?r.lng=t:r.lngs=t,r.ns=i,r.keyPrefix=n,r}t(...t){return this.translator&&this.translator.translate(...t)}exists(...t){return this.translator&&this.translator.exists(...t)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t,i={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;let n=i.lng||this.resolvedLanguage||this.languages[0],r=this.options?this.options.fallbackLng:!1,s=this.languages[this.languages.length-1];if(n.toLowerCase()==="cimode")return!0;let l=(u,h)=>{let d=this.services.backendConnector.state[`${u}|${h}`];return d===-1||d===2};if(i.precheck){let u=i.precheck(this,l);if(u!==void 0)return u}return!!(this.hasResourceBundle(n,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||l(n,t)&&(!r||l(s,t)))}loadNamespaces(t,i){let n=rt();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(r=>{this.options.ns.indexOf(r)<0&&this.options.ns.push(r)}),this.loadResources(r=>{n.resolve(),i&&i(r)}),n):(i&&i(),Promise.resolve())}loadLanguages(t,i){let n=rt();typeof t=="string"&&(t=[t]);let r=this.options.preload||[],s=t.filter(l=>r.indexOf(l)<0&&this.services.languageUtils.isSupportedCode(l));return s.length?(this.options.preload=r.concat(s),this.loadResources(l=>{n.resolve(),i&&i(l)}),n):(i&&i(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";let i=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],n=this.services&&this.services.languageUtils||new Si(Li());return i.indexOf(n.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(t={},i){return new e(t,i)}cloneInstance(t={},i=Bt){let n=t.forkResourceStore;n&&delete t.forkResourceStore;let r={...this.options,...t,isClone:!0},s=new e(r);return(t.debug!==void 0||t.prefix!==void 0)&&(s.logger=s.logger.clone(t)),["store","services","language"].forEach(u=>{s[u]=this[u]}),s.services={...this.services},s.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},n&&(s.store=new xi(this.store.data,r),s.services.resourceStore=s.store),s.translator=new yi(s.services,r),s.translator.on("*",(u,...h)=>{s.emit(u,...h)}),s.init(r,i),s.translator.options=r,s.translator.backendConnector.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},s}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}},rr=Ht.createInstance();rr.createInstance=Ht.createInstance;var ie=rr;var _e=ie,ol=ie.createInstance,al=ie.dir,sl=ie.init,ll=ie.loadResources,ul=ie.reloadResources,fl=ie.use,cl=ie.changeLanguage,hl=ie.getFixedT,pl=ie.t,dl=ie.exists,gl=ie.setDefaultNamespace,ml=ie.hasLoadedNamespace,xl=ie.loadNamespaces,vl=ie.loadLanguages;var or={en:{translation:{}},ja:{translation:{Select:"\u9078\u629E",Text:"\u6587\u5B57",Unimplemented:"\u672A\u5B9F\u88C5",Done:"\u6E08",Save:"\u4FDD\u5B58",List:"\u4E00\u89A7",Search:"\u691C\u7D22",Clear:"\u30AF\u30EA\u30A2",Redraw:"\u518D\u63CF\u753B",Undo:"Undo",Overwrite:"\u8FFD\u52A0\u4FDD\u5B58","Select a figure to overwrite":"\u4E0A\u66F8\u304D\u3059\u308B\u56F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044","<- OK to overwrite?":"\u306B\u8FFD\u52A0\u66F8\u304D\u8FBC\u307F\u3057\u307E\u3059\u304B\uFF1F","14px 'Helvetica'":"14px '\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF'","16px 'Helvetica'":"16px '\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF'","20px 'Helvetica'":"20px '\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF'",String:"\u6587\u5B57\u5217",Size:"\u30B5\u30A4\u30BA","Input image size in pixels":"\u753B\u50CF\u30B5\u30A4\u30BA\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044(\u30D4\u30AF\u30BB\u30EB)"},font:{orn:"10px MS Gothic",Potato:"10px MS Gothic"}}};function ar(e,t){"use strict";var i=t&&t.editmode,n=t&&t.scale?t.scale:1,r=window.navigator.language||window.navigator.userLanguage||window.navigator.userLanguage;r=r.substr(0,2),_e.init({lng:r,fallbackLng:"en",resources:or,getAsync:!1});var s,l,u=[],h=4,d=!1,x=8,m=36;function v(){if(!e||!e.getContext)return!1;i?(e.onclick=Me,e.onmousedown=ur,e.onmouseup=fr,e.onmousemove=pr,e.onmouseout=dr,e.setAttribute("tabindex",0),e.onkeydown=mr):e.onclick=gr,f=e.getContext("2d"),f.setLineDash||(f.setLineDash=function(){});var o=20;Re.push(new _i(ee,_,ee+o,_+q,function(){f.fillStyle="rgb(127,127,127)",f.beginPath(),f.moveTo(ee,_+q/2),f.lineTo(ee+o,_),f.lineTo(ee+o,_+q),f.closePath(),f.fill()},function(){Ae("clicked left"),$e=Math.max($e-1,0),Ce=Ot[$e],H=Ce[0],S()})),Re.push(new _i(ee+Le-o,_,ee+Le,_+q,function(){f.beginPath(),f.moveTo(ee+Le,_+q/2),f.lineTo(ee+Le-o,_),f.lineTo(ee+Le-o,_+q),f.closePath(),f.fill()},function(){Ae("clicked right"),$e=Math.min($e+1,Ot.length-1),Ce=Ot[$e],H=Ce[0],S()})),lt(),S(),s=[],l=[]}var b="data";function S(){if(i){f.beginPath(),f.strokeStyle="rgb(192, 192, 77)",f.font=_e.t("14px 'Courier'"),f.strokeText("SketchCanvas Editor v0.1.6",420,10),f.rect(Vt,Wt,Hi,Et),f.rect(le,ve,ct,ht),f.closePath(),f.stroke(),f.fillStyle="rgb(255,255,255)",f.fillRect(Vt+1,Wt+1,le-2,Wt+Et-2),f.fillStyle="rgb(0,0,0)";var o=$e+1+"/"+Ot.length,a=f.measureText(o).width;f.fillText(o,ee+Le/2-a/2,_+q/2),P(),T(),Ke(),B(Je),Z(Qe)}}function A(o,a){f.strokeText("X="+o+" Y="+a,o,a)}function P(){for(var o=0;o<Lt.length;o++)f.fillStyle="rgb(100, 200, 100)",f.fillRect(Rt+(o+0)*(dt+10),_,dt,q),f.strokeStyle="rgb(250, 250, 250)",f.strokeText(Lt[o].text,Rt+10+(o+0)*(dt+10),_+20)}function F(o){return{minx:ee,miny:_+m+m*o,maxx:ee+Le,maxy:_+m+m*o+q}}function T(){f.fillStyle="rgb(255,255,255)",f.fillRect(Vt+1,_+q+1,le-2,_+Et-2);for(var o=0;o<Ce.length;o++){H===Ce[o]?f.fillStyle="rgb(255, 80, 77)":f.fillStyle="rgb(192, 80, 77)";var a=F(o);f.fillRect(a.minx,a.miny,a.maxx-a.minx,a.maxy-a.miny),f.strokeStyle="rgb(250, 250, 250)",ce(Ce[o],ee+10,_+m+10+(q+8)*o)}}function Ke(){for(var o=0;o<Re.length;o++)"ondraw"in Re[o]&&Re[o].ondraw()}function B(o){for(var a=0;a<5;a++){f.beginPath(),f.fillStyle=Or[a];var c=Gt+(de+10)*a;f.fillRect(c,_,de,q),f.stroke(),a==4&&(f.beginPath(),f.strokeStyle=Bi,f.rect(c,_,de,q),f.stroke()),o==a+31&&(f.beginPath(),f.strokeStyle=Bi,f.strokeText("\u25CB",c+9,_+20))}}function Z(o){for(var a=0;a<3;a++)f.beginPath(),o==a+41?f.fillStyle="rgb(255, 80, 77)":f.fillStyle="rgb(192, 80, 77)",f.fillRect(pt+(de+10)*a,_,de,q),f.beginPath(),f.strokeStyle=Pt,f.lineWidth=a+1,f.moveTo(pt+(de+10)*a+10,_+15),f.lineTo(pt+(de+10)*a+25,_+15),f.stroke();f.lineWidth=1}function ce(o,a,c){o.drawTool?o.drawTool(a,c):f.strokeText(_e.t("Unimplemented"),a,c)}function $(o,a){var c=o.getBoundingRect(a);return a||(c.minx+=O.x,c.maxx+=O.x,c.miny+=O.y,c.maxy+=O.y),c}function Se(o,a){return{minx:o.minx-a,miny:o.miny-a,maxx:o.maxx+a,maxy:o.maxy+a}}function he(o,a,c){return o.minx<a&&a<o.maxx&&o.miny<c&&c<o.maxy}function kt(o,a){return o.minx<a.maxx&&a.minx<o.maxx&&o.miny<a.maxy&&a.miny<o.maxy}function Me(o){if(o.which==3)Pi(o);else{for(var a=e.getBoundingClientRect(),c=o.clientX-a.left,p=o.clientY-a.top,g=0;g<Re.length;g++)if(he(Re[g],c,p)){Re[g].onclick();return}if(wr(c,p))return;var y=Ni(c,p);if(Ae(y),y<0){if(c<O.x||p<O.y)return;if(H.name==="delete"){for(var g=0;g<s.length;g++){var w=Se($(s[g]),10);if(he(w,c,p)){l.push(G(s));for(var C=0;C<u.length;)u[C]===s[g]?u.splice(C,1):C++;s.splice(g,1),N(s),oe();return}}return}else H.name!=="select"&&H.name!=="pathedit"&&H.appendPoint(c,p)}else if(y<10)P(),Lt[y].onclick();else if(y<=40){if(B(y),Je=Pr[y-31],0<u.length){l.push(G(s));for(var g=0;g<u.length;g++)u[g].color=Je;oe(),N(s)}}else if(Z(y),Qe=y-40,0<u.length){l.push(G(s));for(var g=0;g<u.length;g++)u[g].width=Qe;oe(),N(s)}}}function Pi(o){Ae("idx="+idx)}var Ye=[0,0],ne=[0,0],Te=[0,0],xe=!1,ge=null,K=0,D=null,U=0,pe="",ze=!1;function sr(o){for(var a=e.getBoundingClientRect(),c=o.clientX-a.left,p=o.clientY-a.top,g=0;g<u.length;g++)if(u[g].isSizeable())for(var y=u[g].points,w=0;w<y.length;w++){var C=y[w],L=function(E){if(!he(st(C.x,C.y),c-O.x,p-O.y))return!1;if(u[g].tool==="path"&&o.ctrlKey)if(0<w&&!("dx"in C))pe="d";else return w+1<y.length&&!("cx"in y[w+1])?(pe="c",D=u[g],U=w+1,!0):!1;else pe="";D=u[g],U=w;var M=E.selectPointShape!==u[g]||E.selectPointIdx!==U;return E.selectPointShape=u[g],E.selectPointIdx=U,M&&N(s),l.push(G(s)),!0};if(L(this))return;if(!(this.selectPointShape!==u[g]||w<this.selectPointIdx||this.selectPointIdx+1<w)){if("cx"in C&&"cy"in C&&he(st(C.cx,C.cy),c-O.x,p-O.y)){D=u[g],U=w,pe="c",l.push(G(s));return}if("dx"in C&&"dy"in C&&he(st(C.dx,C.dy),c-O.x,p-O.y)){D=u[g],U=w,pe="d",l.push(G(s));return}}}Ei(c,p)}function Ei(o,a){var c=Ni(o,a);if(0<=c)return null;for(var p=0;p<u.length;p++){var g=Se($(u[p]),10);if(he(g,o,a))return!0}for(var p=0;p<s.length;p++){var g=Se($(s[p]),10);if(he(g,o,a))return u=[s[p]],Y.pathedit.selectPointIdx=-1,N(s),!0}return!1}function lr(o){var a=e.getBoundingClientRect(),c=o.clientX-a.left,p=o.clientY-a.top;if(!(c<O.x||p<O.y)){for(var g=0;g<u.length;g++)if(u[g].isSizeable()){var y=$(u[g]);if(1<=Math.abs(y.maxx-y.minx)&&1<=Math.abs(y.maxy-y.miny)){for(var w=0;w<8;w++)if(he(Fi(y,w),c,p)){K=w,ge=u[g],l.push(G(s));return}}}var C=Ei(c,p);if(C){var c=d?Math.round(c/x)*x:c,p=d?Math.round(p/x)*x:p;Ye=[c,p],xe=!0,l.push(G(s))}else ze=!0,u=[],ne=[c,p]}}function ur(o){H&&H.mouseDown(o)}function fr(o){H&&H.mouseUp(o)}function cr(o){var a=e.getBoundingClientRect(),c=(d?Math.round(o.clientX/x)*x:o.clientX)-a.left,p=(d?Math.round(o.clientY/x)*x:o.clientY)-a.top;if(0<u.length){if(xe){for(var g=c-Ye[0],y=p-Ye[1],w=0;w<u.length;w++)for(var C=u[w],L=0;L<C.points.length;L++){var E=C.points[L];E.x+=g,E.y+=y,"cx"in E&&"cy"in E&&(E.cx+=g,E.cy+=y),"dx"in E&&"dy"in E&&(E.dx+=g,E.dy+=y)}Ye=[c,p],N(s)}else if(ge){c-=O.x,p-=O.y;for(var M=$(ge,!0),X=[-1,0,1,1,1,0,-1,-1][K],j=[-1,-1,-1,0,1,1,1,0][K],we=X===0?1:(X===1?c-M.minx:M.maxx-c)/(M.maxx-M.minx),me=j===0?1:(j===1?p-M.miny:M.maxy-p)/(M.maxy-M.miny),C=ge,L=0;L<C.points.length;L++){var E=C.points[L];if(X!==0&&we!==0)for(var ae=["x","cx","dx"],Oe=0;Oe<ae.length;Oe++){var ue=ae[Oe];ue in E&&(E[ue]=X===1?(E[ue]-M.minx)*we+M.minx:(E[ue]-M.maxx)*we+M.maxx)}if(j!==0&&me!==0)for(var ae=["y","cy","dy"],Oe=0;Oe<ae.length;Oe++){var ue=ae[Oe];ue in E&&(E[ue]=j===1?(E[ue]-M.miny)*me+M.miny:(E[ue]-M.maxy)*me+M.maxy)}}X!==0&&we<0&&(K=[2,1,0,7,6,5,4,3][K]),j!==0&&me<0&&(K=[6,5,4,3,2,1,0,7][K]),N(s)}}if(!xe&&!ge&&ze){Te=[c,p];var Rr={minx:Math.min(ne[0],c),maxx:Math.max(ne[0],c),miny:Math.min(ne[1],p),maxy:Math.max(ne[1],p)};u=[];for(var L=0;L<s.length;L++){var M=Se($(s[L]),10);kt(M,Rr)&&u.push(s[L])}N(s)}}function hr(o){var a=e.getBoundingClientRect(),c=(d?Math.round(o.clientX/x)*x:o.clientX)-a.left,p=(d?Math.round(o.clientY/x)*x:o.clientY)-a.top;if(0<u.length&&D){c-=O.x,p-=O.y;var g=function(we,me,ae,Oe){if(!(U+me<0||D.points.length<=U+me)){var ue=D.points[U+me];we+"x"in ue&&(ue[we+"x"]+=ae),we+"y"in ue&&(ue[we+"y"]+=Oe)}};if(pe===""){var y=c-D.points[U].x,w=p-D.points[U].y;D.points[U].x=c,D.points[U].y=p,U+1<D.points.length&&g("c",1,y,w),g("d",0,y,w)}else{var C=D.points[U];if(C[pe+"x"]=c,C[pe+"y"]=p,!o.altKey&&pe==="d"&&U+1<D.points.length){var L=D.points[U+1];if("cx"in L&&"cy"in L){var y=L.cx-C.x,w=L.cy-C.y,E=Math.sqrt(y*y+w*w),M=Math.atan2(w,y),X=Math.atan2(C.y-C.dy,C.x-C.dx);L.cx=C.x+E*Math.cos(X),L.cy=C.y+E*Math.sin(X)}}else if(!o.altKey&&pe==="c"&&0<=U-1){var j=D.points[U-1];if("dx"in j&&"dy"in j){var y=j.dx-j.x,w=j.dy-j.y,E=Math.sqrt(y*y+w*w),M=Math.atan2(w,y),X=Math.atan2(j.y-C.cy,j.x-C.cx);j.dx=j.x+E*Math.cos(X),j.dy=j.y+E*Math.sin(X)}}}N(s)}}function pr(o){H.mouseMove&&H.mouseMove(o)}function dr(o){xe=!1,ge=null,ze=!1}function gr(o){for(var a=e.getBoundingClientRect(),c=(d?Math.round(o.clientX/x)*x:o.clientX)-a.left,p=(d?Math.round(o.clientY/x)*x:o.clientY)-a.top,g={x:c/n,y:p/n},y=0;y<s.length;y++)if("viewModeClick"in s[y]){var w=Se($(s[y]),10);if(he(w,g.x,g.y)&&s[y].viewModeClick(o))return!0}}function mr(o){o=o||window.event,H.keyDown&&H.keyDown(o)}function Ri(o){for(var a=0;a<o.length;a++){for(var c=o[a],p=0;p<s.length;p++)if(s[p]===c){s.splice(p,1);break}if(o!==u){for(var p=0;p<u.length;p++)if(u[p]===c){u.splice(p,1);break}}}o===u&&(u=[])}function Ve(o){return d?{x:Math.round(o.x/x)*x,y:Math.round(o.y/x)*x}:{x:o.x,y:o.y}}function We(o){return{x:(o.x-O.x)/n,y:(o.y-O.y)/n}}function at(o){f.font=o+"px 'Noto Sans Japanese', sans-serif"}function Ii(o){var a=Y[o.tool],c=a.points;a.setColor(Er[o.color]),a.setWidth(o.width),c<=o.points.length&&a.draw(o)}function Fi(o,a){var c,p;switch(a){case 0:c=o.minx,p=o.miny;break;case 1:c=(o.minx+o.maxx)/2,p=o.miny;break;case 2:c=o.maxx,p=o.miny;break;case 3:c=o.maxx,p=(o.miny+o.maxy)/2;break;case 4:c=o.maxx,p=o.maxy;break;case 5:c=(o.minx+o.maxx)/2,p=o.maxy;break;case 6:c=o.minx,p=o.maxy;break;case 7:c=o.minx,p=(o.miny+o.maxy)/2;break;default:return}return st(c,p)}function st(o,a){return{minx:o-h,miny:a-h,maxx:o+h,maxy:a+h}}function lt(){i?(e.width=1024,e.height=640,le=90,ve=50,O={x:le,y:ve}):(e.width=ye.size[0]*n,e.height=ye.size[1]*n,le=0,ve=0,O={x:0,y:0})}function ut(o,a,c,p){var g=st(o,a);f.fillStyle=c,p||f.fillRect(g.minx,g.miny,g.maxx-g.minx,g.maxy-g.miny),f.beginPath(),f.strokeStyle="#000",p?(f.arc((g.minx+g.maxx)/2,(g.miny+g.maxy)/2,h,0,2*Math.PI,!1),f.fill()):f.rect(g.minx,g.miny,g.maxx-g.minx,g.maxy-g.miny),f.stroke()}function N(o){if(At(),i&&(f.save(),f.beginPath(),f.rect(le,ve,ct,ht),f.clip()),d){f.fillStyle="#000";for(var a=Math.ceil(le/x);a<(le+ct)/x;a++)for(var c=Math.ceil(ve/x);c<(ve+ht)/x;c++)f.fillRect(a*x,c*x,1,1)}f.save(),f.translate(O.x,O.y),f.scale(n,n);for(var p=0;p<o.length;p++)Ii(o[p]);I&&Ii(I),f.restore(),ze&&(f.beginPath(),f.lineWidth=1,f.strokeStyle="#000",f.setLineDash([5]),f.rect(ne[0],ne[1],Te[0]-ne[0],Te[1]-ne[1]),f.stroke(),f.setLineDash([]));for(var g=0;g<u.length;g++)H.selectDraw(u[g]);i&&f.restore()}function xr(o){var a=o.points;if(f.beginPath(),f.lineWidth=1,f.strokeStyle="#000",Y[o.tool].isArc){f.setLineDash([5]),f.moveTo(a[0].x+O.x,a[0].y+O.y);for(var c=1;c<a.length;c++)f.lineTo(a[c].x+O.x,a[c].y+O.y);f.stroke(),f.setLineDash([])}function p(y,w){f.setLineDash([5]),f.beginPath(),f.moveTo(y.x+O.x,y.y+O.y),f.lineTo(g[w+"x"]+O.x,g[w+"y"]+O.y),f.stroke(),f.setLineDash([])}for(var c=0;c<a.length;c++){var g=a[c];ut(g.x+O.x,g.y+O.y,o===this.selectPointShape&&c===this.selectPointIdx?"#7f7fff":"#7f7f7f"),!(o!==this.selectPointShape||c<this.selectPointIdx||this.selectPointIdx+1<c)&&(0<c&&"cx"in g&&"cy"in g&&(ut(g.cx+O.x,g.cy+O.y,"#ff7f7f",!0),p(a[c-1],"c")),"dx"in g&&"dy"in g&&(ut(g.dx+O.x,g.dy+O.y,"#ff7f7f",!0),p(g,"d")))}}function re(){this.tool="line",this.color="black",this.width=1,this.points=[]}re.prototype.serialize=function(){function o(g,y,w,C){w!==C&&(g[y]=w)}for(var a="",c=0;c<this.points.length;c++)c!==0&&(a+=":"),"cx"in this.points[c]&&"cy"in this.points[c]&&(a+=this.points[c].cx+","+this.points[c].cy+","),"dx"in this.points[c]&&"dy"in this.points[c]&&(a+=this.points[c].dx+","+this.points[c].dy+","),a+=this.points[c].x+","+this.points[c].y;var p={type:this.tool,points:a};return o(p,"color",this.color,"black"),o(p,"width",this.width,1),p},re.prototype.isSizeable=function(){return!0},re.prototype.deserialize=function(o){if(this.color=o.color||"black",this.width=o.width||1,"points"in o){for(var a=o.points.split(":"),c=[],p=0;p<a.length;p++){var g=a[p].split(","),y={};6<=g.length&&(y.cx=parseFloat(g[0]),y.cy=parseFloat(g[1])),4<=g.length&&(y.dx=parseFloat(g[g.length-4]),y.dy=parseFloat(g[g.length-3])),y.x=parseFloat(g[g.length-2]),y.y=parseFloat(g[g.length-1]),c.push(y)}this.points=c}},re.prototype.getBoundingRect=function(){for(var o,a,c,p,g=0;g<this.points.length;g++){var y=this.points[g].x;(o===void 0||o<y)&&(o=y),(c===void 0||y<c)&&(c=y);var w=this.points[g].y;(a===void 0||a<w)&&(a=w),(p===void 0||w<p)&&(p=w)}return{minx:c,miny:p,maxx:o,maxy:a}};function Ge(){re.call(this)}Yt(Ge,re),Ge.prototype.isSizeable=function(){return!1},Ge.prototype.getBoundingRect=function(){var o=20,a=20;return{minx:this.points[0].x,miny:this.points[0].y,maxx:this.points[0].x+a,maxy:this.points[0].y+o}};function Ee(){re.call(this),this.text="",this.link=""}Yt(Ee,re),Ee.prototype.serialize=function(){var o=re.prototype.serialize.call(this);return o.text=this.text,this.link&&(o.link=this.link),o},Ee.prototype.deserialize=function(o){re.prototype.deserialize.call(this,o),o.text!==void 0&&(this.text=o.text),o.link!==void 0&&(this.link=o.link)},Ee.prototype.isSizeable=function(){return!1},Ee.prototype.getBoundingRect=function(){var o=this.width===1?14:this.width===2?16:20,a=f.font;f.font=at(o);var c=f.measureText(this.text).width;return f.font=a,{minx:this.points[0].x,miny:this.points[0].y-o,maxx:this.points[0].x+c,maxy:this.points[0].y}},Ee.prototype.viewModeClick=function(o){return"link"in this&&this.link?(location.href=this.link,!0):!1};function qe(){re.call(this)}Yt(qe,re),qe.prototype.serialize=function(){for(var o=re.prototype.serialize.call(this),a="",c=0;c<this.points.length;c++){var p=this.points[c];c!==0&&("cx"in p&&"cy"in p||"dx"in p&&"dy"in p)?(a+="C","cx"in p&&"cy"in p?a+=p.cx+","+p.cy+" ":a+=this.points[c-1].x+","+this.points[c-1].y+" ","dx"in p&&"dy"in p?a+=p.dx+","+p.dy+" ":a+=p.x+","+p.y+" "):c===0?a+="M":a+="L",a+=p.x+","+p.y}return o.d=a,delete o.points,"arrow"in this&&(o.arrow=Lr(this.arrow)),o},qe.prototype.deserialize=function(o){if(re.prototype.deserialize.call(this,o),"arrow"in o&&(this.arrow=Ar(o.arrow)),!("d"in o))return;var a=[],c=o.d,p=[],g=0;function y(){if(!(w<=g)){var C=c.slice(g+1,w);p=C.split(/[, \t]/);var L={};6<=p.length&&(L.cx=parseFloat(p[0]),L.cy=parseFloat(p[1])),4<=p.length&&(L.dx=parseFloat(p[p.length-4]),L.dy=parseFloat(p[p.length-3])),L.x=parseFloat(p[p.length-2]),L.y=parseFloat(p[p.length-1]),a.push(L),g=w}}for(var w=0;w<c.length;w++)"MCLS".indexOf(c.charAt(w))>=0&&y();y(),this.points=a};function jt(o){for(var a=[ye],c=0;c<o.length;c++)a.push(o[c].serialize());return a}function Kt(o){ye=G(ji);for(var a=[],c=0;c<o.length;c++){var p=o[c];if(p.type==="meta"){ye=p;continue}if(p.type in Y){var g=new Y[p.type].objctor;g.tool=p.type,g.deserialize(p),a.push(g)}}return a}this.loadData=function(o){try{s=Kt(be.load(o)),u=[],lt(),S(),N(s)}catch(a){console.log(a)}},this.saveAsImage=function(o){var a=i;i&&(i=!1,lt(),N(s)),o.src=e.toDataURL(),a&&(i=!0,lt(),S(),N(s))},this.loadLocal=function(o){try{var a=localStorage.getItem("canvasDrawData");if(a===null)return;var c=be.load(a);s=Kt(be.load(c[o])),u=[],oe(),N(s)}catch(p){Ae(p)}};function Tt(){var o=Xe();o&&(o.onreadystatechange=function(){if(!(o.readyState!==4||o.status!==200))try{var a=o.responseText;if(!a)return;gt.onUpdateServerList&>.onUpdateServerList(a.split(` 33`))}catch(c){console.log(c)}},o.open("GET","list.php",!0),o.send())}this.listServer=Tt,this.requestServerFile=function(o,a){var c=Xe();if(c){var p;c.onreadystatechange=function(){if(!(c.readyState!==4||c.status!==200))try{var g=c.responseText;if(!g)return;if(a){var y=g.split(` 34`,1)[0];if(y!=="succeeded")throw"Failed to obtain revision "+g;g=g.substr(g.indexOf(` 35`)+1)}s=Kt(be.load(g)),u=[],oe(),lt(),S(),N(s)}catch(w){Ae(w)}},a?p="history.php?fname="+encodeURI(o)+"&hash="+encodeURI(a):p=b+"/"+encodeURI(o),c.open("GET",p,!0),c.send()}},this.requestServerFileHistory=function(o,a){var c=Xe();c&&(c.onreadystatechange=function(){if(!(c.readyState!==4||c.status!==200))try{var p=c.responseText;if(!p)return;var g=p.split(` 36`);if(g[0]!=="succeeded")return;g=g.splice(1),a(g)}catch(y){console.log(y)}},c.open("GET","history.php?fname="+encodeURI(o),!0),c.send())};function At(){i&&(f.fillStyle="#7f7f7f",f.fillRect(le,ve,ct,ht)),f.fillStyle=Pt,f.fillRect(le,ve,Math.min(ct,ye.size[0]),Math.min(ht,ye.size[1]))}function vr(o,a){ye.size[0]=o,ye.size[1]=a,oe(),N(s)}function Ni(o,a){var c=yr(o,a);return c>=0||(c=br(o,a),c>0)||(c=Sr(o,a),c>0)||(o>Hi||a>Et)&&(c=-1),c}function yr(o,a){if(a<_||a>_+q)return-1;for(var c=0;c<Lt.length;c++)if(o>=Rt+(dt+10)*c&&o<=Rt+Le+(dt+10)*c)return c;return-1}function wr(o,a){if(o<ee||o>ee+Le)return!1;for(var c=0;c<Ce.length;c++){var p=F(c);if(he(p,o,a))return H=Ce[c],T(),I=null,N(s),!0}return!1}function br(o,a){if(a<_||a>_+q)return-1;for(var c=0;c<5;c++)if(o>=Gt+(de+10)*c&&o<=Gt+de+(de+10)*c)return c+31;return-1}function Sr(o,a){if(a<_||a>_+q)return-1;for(var c=0;c<3;c++)if(o>=pt+(de+10)*c&&o<=pt+de+(de+10)*c)return c+41;return-1}this.saveLocal=function(o){if(typeof Storage<"u"){var a=localStorage.getItem("canvasDrawData"),c=a===null?{}:be.load(a),p=!(o in c);return c[o]=be.dump(jt(s)),localStorage.setItem("canvasDrawData",be.dump(c)),p&&"onLocalChange"in this&&this.onLocalChange&&this.onLocalChange(),!0}return!1},this.listLocal=function(){if(typeof Storage<"u"){var o=localStorage.getItem("canvasDrawData"),a=o===null?{}:be.load(o),c=[];for(var p in a)c.push(p);return c}};function Yt(o,a){if(Object.create)o.prototype=Object.create(a.prototype);else{var c=function(){};c.prototype=a.prototype,o.prototype=new c}o.prototype.constructor=o}function Cr(o,a){for(var c in a)o[c]=a[c]}function G(o){if(o===null||typeof o!="object")return o;var a=new o.constructor;for(var c in o)a[c]=G(o[c]);return a}function oe(){try{var o=be.dump(jt(s),{flowLevel:2});"onUpdateData"in gt&>.onUpdateData&>.onUpdateData(o)}catch(a){console.log(a)}}function kr(){s=[],u=[],oe(),At()}function Tr(){l.length<1||(s=l[l.length-1],l.pop(),u=[],oe(),N(s))}var Xe=this.createXMLHttpRequest;this.postData=function(o,a,c){var p=be.dump(jt(s),{flowLevel:2}),g=Xe();if(g){g.onreadystatechange=function(){g.readyState!==4||g.status!==200||(Ae(g.responseText),Tt())},g.open("POST",a,!0),g.setRequestHeader("Content-type","application/x-www-form-urlencoded");var y="fname="+encodeURI(o);c?y+="&action=delete":y+="&drawdata="+encodeURI(p),g.send(y)}},this.pull=function(o){var a=Xe();a&&(a.onreadystatechange=function(){a.readyState!==4||a.status!==200||(Ae(a.responseText),Tt())},a.open("GET","pull.php?remote="+encodeURI(o),!0),a.setRequestHeader("Content-type","application/x-www-form-urlencoded"),a.send())},this.push=function(o){var a=Xe();a&&(a.onreadystatechange=function(){a.readyState!==4||a.status!==200||(Ae(a.responseText),Tt())},a.open("GET","push.php?remote="+encodeURI(o),!0),a.setRequestHeader("Content-type","application/x-www-form-urlencoded"),a.send())};function Ae(o){t&&t.debug&&t.debug(o)}function _i(o,a,c,p,g,y){this.minx=o,this.miny=a,this.maxx=c,this.maxy=p,this.ondraw=g,this.onclick=y}function De(o,a){this.text=_e.t(o),this.onclick=a}var f,Lt=[new De("Grid",function(){d=!d,N(s)}),new De("Grid+",function(){x<32&&(x*=2),d&&N(s)}),new De("Grid-",function(){4<x&&(x/=2),d&&N(s)}),new De("Clear",function(){At(),kr()}),new De("Redraw",function(){N(s)}),new De("Undo",function(){At(),Tr()}),new De("Size",function(){if(Ze)Ze.style.display="block";else{Ze=document.createElement("div");var o=Ze;o.id="bookingLayer",o.style.position="absolute",o.style.padding="5px 5px 5px 5px",o.style.borderStyle="solid",o.style.borderColor="#cf0000",o.style.borderWidth="2px",o.style.boxShadow="0px 0px 20px grey",o.style.background="#cfffcf",o.innerHTML=_e.t("Input image size in pixels")+':<br>x:<input id="sizeinputx" type="text">y:<input id="sizeinputy" type="text">';var a=document.createElement("input");a.type="button",a.value="OK",a.onclick=function(w){o.style.display="none",vr(parseFloat(document.getElementById("sizeinputx").value),parseFloat(document.getElementById("sizeinputy").value))};var c=document.createElement("input");c.type="button",c.value="Cancel",c.onclick=function(w){o.style.display="none"},o.appendChild(document.createElement("br")),o.appendChild(a),o.appendChild(c),document.body.appendChild(o)}var p=e.getBoundingClientRect(),g=document.documentElement.scrollLeft||document.body.scrollLeft,y=document.documentElement.scrollTop||document.body.scrollTop;Ze.style.left=p.left+g+150+"px",Ze.style.top=p.top+y+50+"px",document.getElementById("sizeinputx").value=ye.size[0],document.getElementById("sizeinputy").value=ye.size[1]})],Re=[];function Ar(o){for(var a={},c=0;c<o.length;c++)o[c]!==""&&(a[o[c]]=null);return a}function Lr(o){var a=[];for(var c in o)c!==""&&a.push(c);return a}var Y={};function R(o,a,c){this.name=o,this.points=a||1,this.objctor=c&&c.objctor||re,this.drawTool=c&&c.drawTool,Cr(this,c),o in Y||(Y[o]=this)}R.prototype.setColor=function(o){f.strokeStyle=o};function zt(o){f.fillStyle=o}R.prototype.setWidth=function(o){f.lineWidth=o};function ft(){}R.prototype.draw=ft,R.prototype.appendPoint=function(o,a){function c(g,y){return I.points.length===H.points?(l.push(G(s)),s.push(I),oe(),I=null,N(s),!0):(I.points.push(We(Ve({x:g,y}))),!1)}if(I)c(o,a);else{var p=new H.objctor;p.tool=H.name,p.color=Je,p.width=Qe,I=p,c(o,a)||c(o,a)}},R.prototype.mouseDown=function(o){},R.prototype.mouseMove=function(o){if(I&&0<I.points.length){var a=e.getBoundingClientRect(),c=(d?Math.round(o.clientX/x)*x:o.clientX)-a.left,p=(d?Math.round(o.clientY/x)*x:o.clientY)-a.top,g={x:c,y:p};I.points[I.points.length-1]=We(Ve(g)),N(s)}},R.prototype.mouseUp=function(o){xe=!1,ge=null,D=null;var a=ze;ze=!1,a&&N(s)},R.prototype.keyDown=function(o){var a=o.keyCode||o.which;a===46&&(l.push(G(s)),Ri(u),oe(),N(s))},R.prototype.selectDraw=function(o){var a=$(o);f.beginPath(),f.lineWidth=1,f.strokeStyle="#000",f.setLineDash([5]),f.rect(a.minx,a.miny,a.maxx-a.minx,a.maxy-a.miny),f.stroke(),f.setLineDash([]),f.beginPath(),f.strokeStyle="#000";for(var c=0;c<8;c++){var p=Fi(a,c);f.fillStyle=ge===o&&c===K?"#7fff7f":"#ffff7f",f.fillRect(p.minx,p.miny,p.maxx-p.minx,p.maxy-p.miny),f.rect(p.minx,p.miny,p.maxx-p.minx,p.maxy-p.miny)}f.stroke()};var Ce=[new R("select",1,{drawTool:function(o,a){f.beginPath(),f.moveTo(o,a-5),f.lineTo(o,a+10),f.lineTo(o+4,a+7),f.lineTo(o+6,a+11),f.lineTo(o+8,a+9),f.lineTo(o+6,a+5),f.lineTo(o+10,a+3),f.closePath(),f.stroke(),f.strokeText("1",o+45,a+10)},mouseDown:lr,mouseMove:cr,mouseUp:function(o){0<u.length&&(xe||ge)&&oe(),R.prototype.mouseUp.call(this,o)}}),new R("pathedit",1,{drawTool:function(o,a){f.fillStyle="rgb(250, 250, 250)",f.beginPath(),f.moveTo(o,a-5),f.lineTo(o,a+10),f.lineTo(o+4,a+7),f.lineTo(o+6,a+11),f.lineTo(o+8,a+9),f.lineTo(o+6,a+5),f.lineTo(o+10,a+3),f.closePath(),f.fill(),f.strokeText("1",o+45,a+10)},mouseDown:sr,mouseMove:hr,mouseUp:function(o){0<u.length&&D&&oe(),R.prototype.mouseUp.call(this,o)},keyDown:function(o){var a=o.keyCode||o.which;a===46&&this.selectPointShape&&this.selectPointShape.tool==="path"&&0<=this.selectPointIdx&&(l.push(G(s)),this.selectPointShape.points.length<=2?(Ri([this.selectPointShape]),this.selectPointShape=null):this.selectPointShape.points.splice(this.selectPointIdx,1),oe(),N(s))},selectDraw:xr,selectPointShape:null,selectPointIdx:-1}),new R("line",2,{drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.lineTo(o+40,a+10),f.stroke(),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),f.moveTo(a[0].x,a[0].y),f.lineTo(a[1].x,a[1].y),f.stroke(),f.lineWidth=1}}),new R("arrow",2,{drawTool:function(o,a){f.beginPath(),l_arrow(f,[{x:o,y:a+5},{x:o+40,y:a+5}]),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),l_arrow(f,a),f.lineWidth=1}}),new R("barrow",2,{drawTool:function(o,a){f.beginPath(),l_tarrow(f,[{x:o,y:a+5},{x:o+40,y:a+5}]),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),l_tarrow(f,a),f.lineWidth=1}}),new R("darrow",2,{drawTool:function(o,a){f.beginPath(),f.moveTo(o,a+3),f.lineTo(o+39,a+3),f.moveTo(o,a+7),f.lineTo(o+39,a+7),f.moveTo(o+35,a),f.lineTo(o+40,a+5),f.lineTo(o+35,a+10),f.stroke(),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),l_darrow(f,a),f.lineWidth=1}}),new R("arc",3,{isArc:!0,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.quadraticCurveTo(o+20,a+20,o+40,a),f.stroke(),f.strokeText("3",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),f.moveTo(a[0].x,a[0].y),f.quadraticCurveTo(a[1].x,a[1].y,a[2].x,a[2].y),f.stroke(),f.lineWidth=1}}),new R("arcarrow",3,{isArc:!0,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.quadraticCurveTo(o+20,a+20,o+40,a),l_hige(f,[{x:o+20,y:a+20},{x:o+40,y:a}]),f.strokeText("3",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),f.moveTo(a[0].x,a[0].y),f.quadraticCurveTo(a[1].x,a[1].y,a[2].x,a[2].y),l_hige(f,[a[1],a[2]]),f.lineWidth=1}}),new R("arcbarrow",3,{isArc:!0,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.quadraticCurveTo(o+20,a+20,o+40,a);var c=[{x:o+20,y:a+20},{x:o+40,y:a}];l_hige(f,c),c[1]={x:o,y:a},l_hige(f,c),f.strokeText("3",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),f.moveTo(a[0].x,a[0].y),f.quadraticCurveTo(a[1].x,a[1].y,a[2].x,a[2].y);var c=new Array(2);c[0]=a[1],c[1]=a[2],l_hige(f,c),c[1]=a[0],l_hige(f,c),f.lineWidth=1}}),new R("rect",2,{drawTool:function(o,a){f.beginPath(),f.rect(o,a,40,10),f.stroke(),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),f.rect(a[0].x,a[0].y,a[1].x-a[0].x,a[1].y-a[0].y),f.stroke(),f.lineWidth=1}}),new R("ellipse",2,{drawTool:function(o,a){f.beginPath(),f.scale(1,.5),f.arc(o+20,(a+5)*2,20,0,2*Math.PI,!1),f.stroke(),f.scale(1,2),f.strokeText("2",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),l_elipse(f,a),f.lineWidth=1}}),new R("rectfill",2,{drawTool:function(o,a){f.beginPath(),f.fillStyle="rgb(250, 250, 250)",f.fillRect(o,a,40,10),f.strokeText("2",o+45,a+10)},setColor:zt,setWidth:ft,draw:function(o){var a=o.points;f.beginPath(),f.fillRect(a[0].x,a[0].y,a[1].x-a[0].x,a[1].y-a[0].y)}}),new R("ellipsefill",2,{drawTool:function(o,a){f.beginPath(),f.fillStyle="rgb(250, 250, 250)",f.scale(1,.5),f.arc(o+20,(a+5)*2,20,0,2*Math.PI,!1),f.fill(),f.scale(1,2),f.strokeText("2",o+45,a+10)},setColor:zt,setWidth:ft,draw:function(o){var a=o.points;f.beginPath(),l_elipsef(f,a),f.lineWidth=1}}),new R("star",1,{objctor:Ge,drawTool:function(o,a){f.beginPath(),f.moveTo(o+8,a-3),f.lineTo(o+14,a+13),f.lineTo(o,a+2),f.lineTo(o+16,a+2),f.lineTo(o+2,a+13),f.closePath(),f.stroke(),f.strokeText("1",o+45,a+10)},draw:function(o){var a=o.points;f.beginPath(),l_star(f,a),f.lineWidth=1}}),new R("check",1,{objctor:Ge,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.lineTo(o+5,a+7),f.lineTo(o+20,a),f.stroke(),f.strokeText("1",o+45,a+10)},setWidth:ft,draw:function(o){var a=o.points;f.beginPath(),l_check(f,a)}}),new R("text",1,{objctor:Ee,drawTool:function(o,a){f.beginPath(),f.strokeText(_e.t("Text"),o+3,a+10),f.strokeText("1",o+45,a+10)},setColor:zt,draw:function(o){var a=o.text;a!=null&&(f.beginPath(),o.width==1?at(14):o.width==2?at(16):at(20),f.fillText(a,o.points[0].x,o.points[0].y),o.link&&(f.strokeStyle="#0000ff",f.beginPath(),f.moveTo(o.points[0].x,o.points[0].y+4),f.lineTo(o.points[0].x+f.measureText(a).width,o.points[0].y+4),f.stroke()),f.font=at(14))},appendPoint:function(o,a){var c=this;if(W)W.style.display="block";else{W=document.createElement("div"),W.canvasPos={x:0,y:0};var p=W;p.id="textLayer",p.style.position="absolute",p.style.padding="5px 5px 5px 5px",p.style.borderStyle="solid",p.style.borderColor="#cf0000",p.style.borderWidth="2px",p.style.boxShadow="0px 0px 20px grey",p.style.background="#cfffcf",p.textInput=document.createElement("input"),p.textInput.id="textinput",p.textInput.type="text",p.textInput.style.width="30em",p.textInput.onkeyup=function(me){me.keyCode===13&&y.onclick()},p.appendChild(p.textInput),p.appendChild(document.createElement("br")),p.linkInput=document.createElement("input"),p.linkInput.id="linkinput",p.linkInput.type="text",p.linkInput.onkeyup=p.textInput.onkeyup;var g=document.createElement("div");g.innerHTML="Link:",g.appendChild(p.linkInput),p.appendChild(g);var y=document.createElement("input");y.type="button",y.value="OK",y.onclick=function(me){if(p.style.display="none",p.textInput.value!=""){if(l.push(G(s)),p.dobj)p.dobj.text=p.textInput.value,p.dobj.link=p.linkInput.value;else{var ae=new c.objctor;ae.tool=H.name,ae.color=Je,ae.width=Qe,ae.points.push({x:p.canvasPos.x,y:p.canvasPos.y}),ae.text=p.textInput.value,ae.link=p.linkInput.value,s.push(ae)}oe(),N(s)}};var w=document.createElement("input");w.type="button",w.value="Cancel",w.onclick=function(me){p.style.display="none"},p.appendChild(y),p.appendChild(w),document.body.appendChild(p)}var C=We(Ve({x:o,y:a}));W.canvasPos.x=C.x,W.canvasPos.y=C.y,W.dobj=null,W.textInput.value="";for(var L=0;L<s.length;L++)if(s[L]instanceof Ee&&he($(s[L],!0),C.x,C.y)){W.dobj=s[L],W.textInput.value=s[L].text,W.linkInput.value=s[L].link;break}var E=W.textInput.getBoundingClientRect(),M=W.linkInput.getBoundingClientRect();W.linkInput.style.width=E.width-(M.left-E.left)+"px";var X=e.getBoundingClientRect(),j=document.documentElement.scrollLeft||document.body.scrollLeft,we=document.documentElement.scrollTop||document.body.scrollTop;return W.style.left=X.left+j+O.x+C.x+"px",W.style.top=X.top+we+O.y+C.y+"px",W.textInput.focus(),!0}})],Ot=[Ce,[Y.select,Y.pathedit,new R("delete",1,{drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.lineTo(o+10,a+10),f.moveTo(o,a+10),f.lineTo(o+10,a),f.stroke(),f.strokeText("1",o+45,a+10)}}),new R("done",1,{objctor:Ge,drawTool:function(o,a){f.beginPath(),f.strokeText(_e.t("Done"),o+3,a+10),f.beginPath(),f.arc(o+9,a+5,8,0,6.28,!1),f.stroke(),f.strokeText("1",o+45,a+10)},setWidth:ft,draw:function(o){var a=o.points;f.beginPath(),l_complete(f,a)}}),new R("path",2,{objctor:qe,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.bezierCurveTo(o+10,a+20,o+20,a-10,o+30,a+10),f.stroke(),f.strokeText("n",o+45,a+10)},draw:function(o){var a=o.points;if(a.length<2)return;f.beginPath(),f.moveTo(a[0].x,a[0].y);for(var c=1;c<a.length;c++)"cx"in a[c]&&"cy"in a[c]?"dx"in a[c]&&"dy"in a[c]?f.bezierCurveTo(a[c].cx,a[c].cy,a[c].dx,a[c].dy,a[c].x,a[c].y):f.bezierCurveTo(a[c].cx,a[c].cy,a[c].x,a[c].y,a[c].x,a[c].y):"dx"in a[c]&&"dy"in a[c]?f.bezierCurveTo(a[c-1].x,a[c-1].y,a[c].dx,a[c].dy,a[c].x,a[c].y):f.lineTo(a[c].x,a[c].y);if(f.stroke(),"arrow"in o&&"head"in o.arrow&&1<a.length){var p=a[0],g=a[1],y=[];"cx"in g&&"cy"in g&&(g.cx!==p.x||g.cy!==p.y)?y[0]={x:g.cx,y:g.cy}:"dx"in g&&"dy"in g&&(g.dx!==p.x||g.dy!==p.y)?y[0]={x:g.dx,y:g.dy}:y[0]=g,y[1]=p,f.beginPath(),l_hige(f,y)}if("arrow"in o&&"tail"in o.arrow&&1<a.length){var w=a[a.length-1],C=a[a.length-2],y=[];"dx"in w&&"dy"in w&&(w.dx!==w.x||w.dy!==w.y)?y[0]={x:w.dx,y:w.dy}:"cx"in w&&"cy"in w&&(w.cx!==w.x||w.cy!==w.y)?y[0]={x:w.cx,y:w.cy}:y[0]=C,y[1]=w,f.beginPath(),l_hige(f,y)}f.lineWidth=1;function L(M,X,j){f.setLineDash([5]),f.beginPath(),f.moveTo(M.x,M.y),f.lineTo(X[j+"x"],X[j+"y"]),f.stroke(),f.setLineDash([])}if(o===I){var w=a[a.length-1];L(w,w,"d"),ut(w.dx,w.dy,"#ff7f7f",!0);var E={x:2*w.x-w.dx,y:2*w.y-w.dy};L(w,E,""),ut(E.x,E.y,"#ff7f7f",!0)}},onNewShape:function(o){},appendPoint:function(o,a){function c(){var C=I.points;C.push(G(p))}var p=We(Ve({x:o,y:a}));if(I){var y=I.points;if(y.length!==1){var w=y[y.length-2];if(p.x===w.x&&p.y===w.y)return I.points.pop(),l.push(G(s)),s.push(I),oe(),I=null,N(s),!0}if(0<y.length){var w=y[y.length-1];"dx"in w&&"dy"in w&&(p.cx=2*w.x-w.dx,p.cy=2*w.y-w.dy)}c()}else{var g=new H.objctor;g.tool=H.name,g.color=Je,g.width=Qe,this.onNewShape(g),I=g,c(),c()}},mouseDown:function(o){if(I){var a=e.getBoundingClientRect(),c=o.clientX-a.left,p=o.clientY-a.top;this.lastx=c,this.lasty=p,this.lastPoint=I.points[I.points.length-1]}},mouseMove:function(o){if(I){var a=e.getBoundingClientRect(),c=o.clientX-a.left,p=o.clientY-a.top;if(this.lastPoint){var g=this.lastPoint,y=We(Ve({x:c,y:p}));if(0<I.points.length&&g.x!==y.x&&g.y!==y.y){var w=I.points[I.points.length-2];g.dx=2*g.x-y.x,g.dy=2*g.y-y.y}N(s)}else if(0<I.points.length){var C=We(Ve({x:c,y:p})),g=I.points[I.points.length-1],L=C.x-g.x,E=C.y-g.y;g.x=C.x,g.y=C.y,"dx"in g&&"dy"in g&&(g.dx+=L,g.dy+=E),N(s)}}},mouseUp:function(o){this.lastPoint=null}}),new R("path",2,{objctor:qe,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.bezierCurveTo(o+10,a+20,o+20,a-10,o+30,a+10),f.stroke(),l_hige(f,[{x:o+20,y:a-10},{x:o+30,y:a+10}]),f.strokeText("n",o+45,a+10)},draw:Y.path.draw,onNewShape:function(o){o.arrow={tail:null}},appendPoint:Y.path.appendPoint,mouseDown:Y.path.mouseDown,mouseMove:Y.path.mouseMove,mouseUp:Y.path.mouseUp}),new R("path",2,{objctor:qe,drawTool:function(o,a){f.beginPath(),f.moveTo(o,a),f.bezierCurveTo(o+10,a+20,o+20,a-10,o+30,a+10),f.stroke(),l_hige(f,[{x:o+10,y:a+20},{x:o,y:a}]),l_hige(f,[{x:o+20,y:a-10},{x:o+30,y:a+10}]),f.strokeText("n",o+45,a+10)},draw:Y.path.draw,onNewShape:function(o){o.arrow={head:null,tail:null}},appendPoint:Y.path.appendPoint,mouseDown:Y.path.mouseDown,mouseMove:Y.path.mouseMove,mouseUp:Y.path.mouseUp})]],$e=0,Pt="rgb(255, 255, 255)",Mi="rgb(0, 0, 0)",Di="rgb(0, 100, 255)",$i="rgb(0, 255, 0)",Ui="rgb(255, 0, 0)",Bi="rgb(150, 150, 150)",Or=new Array(Mi,Di,Ui,$i,Pt),Pr=["black","blue","red","green","white"],Er={black:Mi,blue:Di,red:Ui,green:$i,white:Pt},Vt=0,Wt=0,Hi=1024,Et=640,le=90,ve=50,ct=930,ht=580,ee=10,Rt=le,Gt=600,pt=820,Le=70,dt=60,de=30,_=20,q=28,H=Y.select,Je="black",Qe=1,I=null,O=i?{x:le,y:ve}:{x:0,y:0},Ze=null,W=null,ji={type:"meta",size:[1024-le,640-ve]},ye=G(ji),gt=this;v()}ar.prototype.createXMLHttpRequest=function(){var e=null;try{e=new XMLHttpRequest}catch{try{e=new ActiveXObject("Msxml2.XMLHTTP")}catch{try{e=new ActiveXObject("Microsoft.XMLHttp")}catch{return null}}}return e};return Dr(vs);})(); 37/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */ 38//# sourceMappingURL=SketchCanvas.js.map 39